aboutsummaryrefslogtreecommitdiff
path: root/gn3/db/datasets.py
AgeCommit message (Collapse)Author
2024-04-30Add an endpoint to query a dataset's git history from it's id.Munyoki Kilyungi
* gn3/api/metadata.py: Import get_history. (view_history): New endpoint. * gn3/db/datasets.py (get_history): New function. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-04-30Add a method for saving a dataset's metadata to git.Munyoki Kilyungi
* gn3/db/datasets.py (retrieve_metadata): New function. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-04-30Rename retrieve_dataset_metadata to retrieve_metadata.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-04-30Remove an f-string that doesn't have any interpolated variables.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-04-29Prevent error when group isn't in parents/f1s JSON filezsloan
2024-04-11Include parents/f1s in default samplelist + add boolean options for themzsloan
2024-02-25Construct genofile_path using pathlib module.Munyoki Kilyungi
* gn3/db/datasets.py: Remove os import. (retrieve_sample_list): Replace os.path with Path. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-02-15Use correct names for dataset entries in json result.Munyoki Kilyungi
Since we are appending to an already flattened json-ld file, we don't need to add the prefixes. * gn3/api/metadata.py (DATASET_CONTEXT): Add missing "experimentType" key. * gn3/db/datasets.py (retrieve_dataset_metadata): Match the __subject dict with entries from DATASET_CONTEXT. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-02-13Fetch extra metadata from text-files when fetching datasets.Munyoki Kilyungi
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2024-02-13Retrieve metadata from text files given a path.Munyoki Kilyungi
* gn3/db/datasets.py (retrieve_trait_dataset): New file. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
2023-08-17Fix queries for fetching group nameszsloan
2023-08-17Fix query for retrieving mrna dataset group namezsloan
2023-08-17Fix mrna group name queryzsloan
2023-08-17Add function for retrieving mRNA Assay group namezsloan
2023-07-18Bug: Fetch group name by dataset_idFrederick Muriuki Muriithi
Change the code to fetch the group name by the dataset ID, since according to usage[1] of the `retrieve_group_name` function, the value passed in is the `dataset_id` and not the `group_id`. Change the name from `retrieve_group_name` to `retrieve_phenotype_group_name` to more clearly indicate that this function concerns itself with the groups that relate to phenotypes. [1](https://github.com/genenetwork/genenetwork2/blob/1bbb0430732b7fa5102d7dcbda80ebda252f5424/wqflask/wqflask/metadata_edits.py)
2023-07-12Bug: Retrieve configs from app, not environmentFrederick Muriuki Muriithi
Retrieve the configuration values from the application object, not from the environment. We are assured of having the configuration values set in the application - we do not have that assurance for the environment.
2023-05-22Use string literal concatenation to make genofile_path line shorterzsloan
2023-05-22Fix quotes when setting genofile_pathzsloan
2023-05-22Change type from 'any' to 'Any'zsloan
2023-05-22Use f-string for setting genofile_pathzsloan
Also set default value for os.environ.get("GENENETWORK_FILES")
2023-05-22Include encoding in open statement to address pylint W1514zsloan
2023-05-22Initialize 'line'; previous pylint complained because line might not be ↵zsloan
initialized (if the genofile was empty, for example)
2023-05-22Use 'with open()' syntaxzsloan
Initialize samplelist variable
2023-05-22Fix retrieve_sample_list function to correctly get genofile_pathzsloan
2023-05-22Add function for retrieving group name (given group ID)zsloan
2023-05-22Add function for retrieving samplelist from .geno filezsloan
2022-11-02Re-implement RDF related code to use monads in its own moduleMunyoki Kilyungi
* gn3/api/general.py: Replace gn3.db.datasets import with gn3.db.rdf. (dataset_metadata) <jsonify>: Replace datasets.dataset_metadata with rdf.get_dataset_metadata. * gn3/db/datasets.py: Remove unused imports. (sparql_query, dataset_metadata): Delete. * gn3/db/rdf.py: (sparql_query, get_dataset_metadata): New functions.
2022-06-21db: datasets.py: Ignore results from sparql.queryAndConvertBonfaceKilz
ATM, it's very difficult to work the correct type that is returned. Ignore this for now and fix this later.
2022-02-21Fix a myriad of linter issuesFrederick Muriuki Muriithi
* Use `with` in place of plain `open` * Use f-strings in place of `str.format()` * Remove string interpolation from queries - provide data as query parameters * other minor fixes
2022-02-18Remove code trying to query non-existent `TempFreeze` tableFrederick Muriuki Muriithi
The code was migrated from GN1 with a faulty assumption that all trait types have a corresponding `*Freeze` table in the database. This assumption is not true for the `Temp` traits. This commit removes the buggy code.
2021-12-23db: Assist mypy with explicit type declaration.Arun Isaac
* gn3/db/datasets.py (dataset_metadata): Assist mypy by explicitly declaring type of return dictionary.
2021-12-23db: Fix sparql_query return type.Arun Isaac
* gn3/db/datasets.py: Import List from typing. (sparql_query): Set return type to List[Dict[str, Any]].
2021-12-23db: Fix wrong continued indentation.Arun Isaac
* gn3/db/datasets.py (dataset_metadata): Fix wrong continued indentation.
2021-12-09Prevent error on no result. Fix indexingFrederick Muriuki Muriithi
Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/partial-correlations.gmi * If the dataset name is not found, don't cause an exception, instead, return the provided search name. * Use the correct inner object
2021-12-02Implement dataset metadata API endpoint.Arun Isaac
* guix.scm: Import (gnu packages rdf). (genenetwork3)[propagated-inputs]: Add python-sparqlwrapper. * gn3/settings.py (SPARQL_ENDPOINT): New variable. * gn3/api/general.py: Import datasets from gn3.db. (dataset_metadata): New API endpoint. * gn3/db/datasets.py: Import re, Template from string, Dict and Optional from typing, JSON and SPARQLWrapper from SPARQLWrapper, SPARQL_ENDPOINT from gn3.settings. (sparql_query, dataset_metadata): New functions.
2021-09-27Update terminology: `riset` to `group`Frederick Muriuki Muriithi
Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Update terminology to use the appropriate domain terminology according to Zachary's direction at https://github.com/genenetwork/genenetwork3/pull/37#issuecomment-926041744
2021-08-17Fix errors: add in missing parenthesisMuriithi Frederick Muriuki
Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Call the `cursor.fetchone()` function to get results. Without the parenthesis, the code was trying to use the function itself as the results, which was a bug, and would lead to failure.
2021-08-09Fix linting errorsMuriithi Frederick Muriuki
Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Add module, class and function docstrings * Deactivate some irrelevant pylint errors * Fix indentations and line-lengths
2021-08-05Reorganise the database codeMuriithi Frederick Muriuki
Issue: https://github.com/genenetwork/gn-gemtext-threads/blob/main/topics/gn1-migration-to-gn2/clustering.gmi * Reorganise the code to separate the datasets from the traits, and to more closely conform to the same flow as that in GN1