about summary refs log tree commit diff
diff options
context:
space:
mode:
-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