diff options
author | Frederick Muriuki Muriithi | 2025-06-02 12:17:30 -0500 |
---|---|---|
committer | Frederick Muriuki Muriithi | 2025-06-02 12:17:30 -0500 |
commit | f656711fa9b9ac86f320a4d88137779703df8d9b (patch) | |
tree | b3fc5791b05efbe917fde8b4905183f7a0f80469 | |
parent | 44de01f047010f868b20f3b1fa01b1c66288325f (diff) | |
download | gn-uploader-f656711fa9b9ac86f320a4d88137779703df8d9b.tar.gz |
Pass the phenotypes name-to-id map to functions.
-rw-r--r-- | scripts/load_phenotypes_to_db.py | 24 |
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 |