Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: dataflow decompress prototype #501

Merged
merged 2 commits into from
Feb 21, 2024
Merged

Conversation

d0choa
Copy link
Collaborator

@d0choa d0choa commented Feb 20, 2024

Includes working prototype of DAG step to decompress the eQTL catalog .gz datasets using DataFlow's template.

Copy link
Contributor

@ireneisdoomed ireneisdoomed left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is great, thanks!
How the DAG input/output will look like:

graph LR;
    GzippedSuSIEResults["Gzipped SuSIE results"] --> UncompressedSuSIEResults["Uncompressed SuSIE results creation"];
    UncompressedSuSIEResults --> eQTLCatalogueCredibleSets["eQTL Catalogue credible sets"];
    UncompressedSuSIEResults --> eQTLCatalogueStudyIndex["eQTL Catalogue study index"];
    eQTLCatalogueStudyIndex --- UncompressedSuSIEResultsDeletion["Uncompressed SuSIE results deletion"];
    eQTLCatalogueCredibleSets --- UncompressedSuSIEResultsDeletion["Uncompressed SuSIE results deletion"];

    style eQTLCatalogueCredibleSets fill:#8FBC8F;
    style eQTLCatalogueStudyIndex fill:#8FBC8F;
Loading

@d0choa
Copy link
Collaborator Author

d0choa commented Feb 21, 2024

because study index and credible sets are co-dependent you might need one single box that generates both outputs

@ireneisdoomed
Copy link
Contributor

@d0choa Yes, I meant to represent I/O, not actual logic. Comment updated, thanks!

@ireneisdoomed ireneisdoomed merged commit d39e931 into il-eqtl-susie Feb 21, 2024
3 checks passed
@ireneisdoomed ireneisdoomed deleted the do_eqtl_decompress branch February 21, 2024 11:30
ireneisdoomed added a commit that referenced this pull request Mar 4, 2024
…ng results (#514)

* feat: dataflow decompress prototype (#501)

* chore: commit susie results gist

* feat(study_index): add `tissueFromSourceId` to schema and make `traitFromSource` nullable

* fix: bug and linting fixes in new eqtl ingestion step

* perf: config bugfixes and performance improvements

* perf: remove data persistance to avoid executor failure

* perf: load susie results for studies of interest only

* perf: collect locus for leads only and optimise partitioning cols

* feat: parametrise methods to include

* feat: run full dag

* test: add tests

* fix: reorder test inputs

* docs: update eqtl catalogue docs

* fix: correct typos in tests docstrings

* fix: correct typos in tests docstrings

* test: fix

* revert: revert unwanted change in studyId definition

* test: final fix

---------

Co-authored-by: David Ochoa <ochoa@ebi.ac.uk>
ireneisdoomed added a commit that referenced this pull request Mar 6, 2024
…apping results (#518)

* feat: dataflow decompress prototype (#501)

* chore: commit susie results gist

* feat(study_index): add `tissueFromSourceId` to schema and make `traitFromSource` nullable

* fix: bug and linting fixes in new eqtl ingestion step

* perf: config bugfixes and performance improvements

* perf: remove data persistance to avoid executor failure

* perf: load susie results for studies of interest only

* perf: collect locus for leads only and optimise partitioning cols

* feat: parametrise methods to include

* feat: run full dag

* test: add tests

* fix: reorder test inputs

* docs: update eqtl catalogue docs

* fix: correct typos in tests docstrings

* refactor: change mqtl_quantification_methods to mqtl_quantification_methods_blacklist

* feat: studyId is based on measured trait and not on gene

* feat: credible set lead is the variant with highest pip

* feat(studies): change logic in _identify_study_type to extract qtl type based on quantization method

* refactor: externalise reading logic to source classes

* chore: add mqtl_quantification_methods_blacklist to yaml config

* docs: update docs

* fix(dag): pass bucket name to GCSDeleteBucketOperator

* refactor(coloc): move get_logsum function to common utils

* feat(studylocus): add calculate_credible_set_log10bf and use it for eqtlcat credible sets

* fix: credible sets dataset is too large and cant be broadcasted

* fix(dag): use GCSDeleteObjectsOperator instead of GCSDeleteBucketOperator

* fix: correct typo

* fix: correct typo
DSuveges pushed a commit that referenced this pull request Mar 8, 2024
…apping results (#518)

* feat: dataflow decompress prototype (#501)

* chore: commit susie results gist

* feat(study_index): add `tissueFromSourceId` to schema and make `traitFromSource` nullable

* fix: bug and linting fixes in new eqtl ingestion step

* perf: config bugfixes and performance improvements

* perf: remove data persistance to avoid executor failure

* perf: load susie results for studies of interest only

* perf: collect locus for leads only and optimise partitioning cols

* feat: parametrise methods to include

* feat: run full dag

* test: add tests

* fix: reorder test inputs

* docs: update eqtl catalogue docs

* fix: correct typos in tests docstrings

* refactor: change mqtl_quantification_methods to mqtl_quantification_methods_blacklist

* feat: studyId is based on measured trait and not on gene

* feat: credible set lead is the variant with highest pip

* feat(studies): change logic in _identify_study_type to extract qtl type based on quantization method

* refactor: externalise reading logic to source classes

* chore: add mqtl_quantification_methods_blacklist to yaml config

* docs: update docs

* fix(dag): pass bucket name to GCSDeleteBucketOperator

* refactor(coloc): move get_logsum function to common utils

* feat(studylocus): add calculate_credible_set_log10bf and use it for eqtlcat credible sets

* fix: credible sets dataset is too large and cant be broadcasted

* fix(dag): use GCSDeleteObjectsOperator instead of GCSDeleteBucketOperator

* fix: correct typo

* fix: correct typo
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants