about summary refs log tree commit diff
path: root/scripts
diff options
context:
space:
mode:
authorFrederick Muriuki Muriithi2025-06-02 12:17:30 -0500
committerFrederick Muriuki Muriithi2025-06-02 12:17:30 -0500
commitf656711fa9b9ac86f320a4d88137779703df8d9b (patch)
treeb3fc5791b05efbe917fde8b4905183f7a0f80469 /scripts
parent44de01f047010f868b20f3b1fa01b1c66288325f (diff)
downloadgn-uploader-f656711fa9b9ac86f320a4d88137779703df8d9b.tar.gz
Pass the phenotypes name-to-id map to functions.
Diffstat (limited to 'scripts')
-rw-r--r--scripts/load_phenotypes_to_db.py24
1 files changed, 21 insertions, 3 deletions
diff --git a/scripts/load_phenotypes_to_db.py b/scripts/load_phenotypes_to_db.py
index de0bfbb..adb076f 100644
--- a/scripts/load_phenotypes_to_db.py
+++ b/scripts/load_phenotypes_to_db.py
@@ -92,6 +92,7 @@ def __row_to_dataitems__(row: dict, samples: dict) -> tuple[dict, ...]:
 def save_numeric_data(
         conn: mysqldb.Connection,
         dataidmap: dict,
+        pheno_name2id: dict[str, int],
         samples: tuple[dict, ...],
         control_data: dict,
         filesdir: Path,
@@ -219,14 +220,31 @@ def load_data(conn: mysqldb.Connection, job: dict) -> int:
         for row in samples_by_species_and_population(
                 conn, _species["SpeciesId"], _population["Id"])}
     #    b. Save all the data items (DataIds are vibes), return new IDs
-    data = save_pheno_data(conn, dataidmap, samples, _control_data, _outdir)
+    data = save_pheno_data(conn=conn,
+                           dataidmap=dataidmap,
+                           pheno_name2id=pheno_name2id,
+                           samples=samples,
+                           control_data=_control_data,
+                           filesdir=_outdir)
     # 4. Cross-reference Phenotype, Publication, and PublishData in PublishXRef
     xrefs = cross_reference_phenotypes_publications_and_data(
         conn, tuple(dataidmap.values()))
     # 5. If standard errors and N exist, save them too
     #    (use IDs returned in `3. b.` above).
-    _data_se = save_phenotypes_se(conn, dataidmap, samples, _control_data, _outdir)
-    _data_n = save_phenotypes_n(conn, dataidmap, samples, _control_data, _outdir)
+    logger.info("Saving new phenotypes standard errors.")
+    _data_se = save_phenotypes_se(conn=conn,
+                                  dataidmap=dataidmap,
+                                  pheno_name2id=pheno_name2id,
+                                  samples=samples,
+                                  control_data=_control_data,
+                                  filesdir=_outdir)
+    logger.info("Saving new phenotypes sample counts.")
+    _data_n = save_phenotypes_n(conn=conn,
+                                dataidmap=dataidmap,
+                                pheno_name2id=pheno_name2id,
+                                samples=samples,
+                                control_data=_control_data,
+                                filesdir=_outdir)
     # 6. If entirely new data, update authorisations (break this down)
     update_auth(_user, _species, _population, _dataset, _phenos)
     return 0