Skip to content

Commit f36ae4b

Browse files
committed
ADD reference_genome parameter
1 parent 39ca32f commit f36ae4b

File tree

1 file changed

+14
-7
lines changed

1 file changed

+14
-7
lines changed

gnomad_api_gui.py

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,13 @@ def upload_file(file_buffer):
8989
st.subheader("Choose the source for dataset")
9090
dataset = st.selectbox("Select a proper gnomAD data set:", ["gnomad_r2_1", "gnomad_r3", "gnomad_r2_1_controls", "gnomad_r2_1_non_neuro", "gnomad_r2_1_non_cancer", "gnomad_r2_1_non_topmed", "exac"])
9191

92+
# Reference Genome
93+
st.subheader("Choose the reference genome")
94+
reference_genome = st.selectbox("Select a proper reference genome build:", ["GRCh37", "GRCh38"])
95+
96+
if reference_genome == "GRCh38":
97+
st.warning("gnomAD structural variant (SV) data might not available on reference genome `GRCh38`.")
98+
9299
# SV Dataset
93100
if filter_by in ["gene_id", "gene_name"]:
94101
st.subheader("Choose the source for structural variant (SV) dataset")
@@ -99,7 +106,7 @@ def get_variants_by(filter_by, search_term, dataset, mode, timeout=None):
99106

100107
query_for_transcripts = """
101108
{
102-
transcript(transcript_id: "%s") {
109+
transcript(transcript_id: "%s", reference_genome: %s) {
103110
transcript_id,
104111
transcript_version,
105112
gene {
@@ -468,7 +475,7 @@ def get_variants_by(filter_by, search_term, dataset, mode, timeout=None):
468475

469476
query_for_genes = """
470477
{
471-
gene(%s: "%s") {
478+
gene(%s: "%s", reference_genome: %s) {
472479
gene_id
473480
symbol
474481
start
@@ -650,16 +657,16 @@ def get_variants_by(filter_by, search_term, dataset, mode, timeout=None):
650657
"""
651658

652659
if filter_by == "transcript_id":
653-
query = query_for_transcripts % (search_term.upper(), dataset, dataset)
660+
query = query_for_transcripts % (search_term.upper(), reference_genome, dataset, dataset)
654661

655662
elif filter_by == "rs_id":
656663
query = query_for_variants % ("rsid", search_term.lower(), dataset)
657664

658665
elif filter_by == "gene_id":
659-
query = query_for_genes % ("gene_id", search_term.upper(), sv_dataset, dataset, dataset)
666+
query = query_for_genes % ("gene_id", search_term.upper(), reference_genome, sv_dataset, dataset, dataset)
660667

661668
elif filter_by == "gene_name":
662-
query = query_for_genes % ("gene_name", search_term.upper(), sv_dataset, dataset, dataset)
669+
query = query_for_genes % ("gene_name", search_term.upper(), reference_genome, sv_dataset, dataset, dataset)
663670

664671
else:
665672
print("Unknown `filter_by` type!")
@@ -851,7 +858,7 @@ def generate_plot(search_by, filter_by, mode):
851858
fig4.write_html("./outputs/" + search_by + "/clinvar_variants_by_clinical_significance.html")
852859
fig5.write_html("./outputs/" + search_by + "/clinvar_variants_by_major_consequence.html")
853860
else:
854-
st.warning("Plots were not generated since `variants.tsv` could be created. It may happens if the data is not available for your dataset")
861+
st.warning("Plots were not generated since `variants.tsv` could not be created. It may happens if the data is not available for your dataset")
855862

856863
if filter_by in ["gene_name", "gene_id"]:
857864
structural_variants_file = "./outputs/" + search_by + "/structural_variants.tsv"
@@ -867,7 +874,7 @@ def generate_plot(search_by, filter_by, mode):
867874
# Export as HTML
868875
fig6.write_html("./outputs/" + search_by + "/structural_variants_by_consequence.html")
869876
else:
870-
st.warning("Plots were not generated since `structural_variants.tsv` could be created. It may happens if the data is not available for your dataset")
877+
st.warning("Plots were not generated since `structural_variants.tsv` could not be created. It may happens if the data is not available for your dataset")
871878

872879
except Exception as plotError:
873880
# st.text(plotError)

0 commit comments

Comments
 (0)