Skip to content

Commit ad6567b

Browse files
committed
lint, remove test code
1 parent 4996001 commit ad6567b

File tree

5 files changed

+56
-167
lines changed

5 files changed

+56
-167
lines changed

pori_python/ipr/annotate.py

+11-32
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,7 @@ def get_second_pass_variants(
4747
}
4848

4949
for reference1, variant_type in inferred_variants:
50-
variants = gkb_match.match_category_variant(
51-
graphkb_conn, reference1, variant_type
52-
)
50+
variants = gkb_match.match_category_variant(graphkb_conn, reference1, variant_type)
5351

5452
for variant in variants:
5553
all_inferred_matches[variant["@rid"]] = variant
@@ -82,8 +80,7 @@ def get_ipr_statements_from_variants(
8280
inferred_statements = [
8381
s
8482
for s in get_statements_from_variants(graphkb_conn, inferred_matches)
85-
if s["@rid"]
86-
not in existing_statements # do not duplicate if non-inferred match
83+
if s["@rid"] not in existing_statements # do not duplicate if non-inferred match
8784
]
8885

8986
for ipr_row in convert_statements_to_alterations(
@@ -128,9 +125,7 @@ def annotate_expression_variants(
128125
continue
129126
try:
130127
matches = gkb_match.match_expression_variant(graphkb_conn, gene, variant)
131-
for ipr_row in get_ipr_statements_from_variants(
132-
graphkb_conn, matches, disease_name
133-
):
128+
for ipr_row in get_ipr_statements_from_variants(graphkb_conn, matches, disease_name):
134129
ipr_row["variant"] = row["key"]
135130
ipr_row["variantType"] = row.get("variantType", "exp")
136131
# "kbVariantId": matched_stmt["kbVariantId"],
@@ -183,15 +178,11 @@ def annotate_copy_variants(
183178
if variant not in REPORTED_COPY_VARIANTS:
184179
# https://www.bcgsc.ca/jira/browse/GERO-77
185180
skipped += 1
186-
logger.debug(
187-
f"Dropping {gene} copy change '{variant}' - not in REPORTED_COPY_VARIANTS"
188-
)
181+
logger.debug(f"Dropping {gene} copy change '{variant}' - not in REPORTED_COPY_VARIANTS")
189182
continue
190183
try:
191184
matches = gkb_match.match_copy_variant(graphkb_conn, gene, variant)
192-
for ipr_row in get_ipr_statements_from_variants(
193-
graphkb_conn, matches, disease_name
194-
):
185+
for ipr_row in get_ipr_statements_from_variants(graphkb_conn, matches, disease_name):
195186
ipr_row["variant"] = row["key"]
196187
ipr_row["variantType"] = row.get("variantType", "cnv")
197188
# "kbVariantId": matched_stmt["kbVariantId"],
@@ -210,9 +201,7 @@ def annotate_copy_variants(
210201
)
211202
if problem_genes:
212203
logger.error(f"gene finding failures for copy variants {sorted(problem_genes)}")
213-
logger.error(
214-
f"gene finding failure for {len(problem_genes)} copy variant genes"
215-
)
204+
logger.error(f"gene finding failure for {len(problem_genes)} copy variant genes")
216205
logger.info(
217206
f"matched {len(variants)} copy category variants to {len(alterations)} graphkb annotations"
218207
)
@@ -270,9 +259,7 @@ def annotate_positional_variants(
270259
f"Assuming malformed deletion variant {variant} is {variant[:-2] + 'del'}"
271260
)
272261
variant = variant[:-2] + "del"
273-
matches = gkb_match.match_positional_variant(
274-
graphkb_conn, variant
275-
)
262+
matches = gkb_match.match_positional_variant(graphkb_conn, variant)
276263
else:
277264
raise parse_err
278265
for ipr_row in get_ipr_statements_from_variants(
@@ -307,9 +294,7 @@ def annotate_positional_variants(
307294

308295
if problem_genes:
309296
logger.error(f"gene finding failures for {sorted(problem_genes)}")
310-
logger.error(
311-
f"{len(problem_genes)} gene finding failures for positional variants"
312-
)
297+
logger.error(f"{len(problem_genes)} gene finding failures for positional variants")
313298
if errors:
314299
logger.error(f"skipped {errors} positional variants due to errors")
315300

@@ -357,9 +342,7 @@ def annotate_msi(
357342
)
358343
if msi_categories:
359344
msi_variants = [cast(Variant, var) for var in msi_categories]
360-
for ipr_row in get_ipr_statements_from_variants(
361-
graphkb_conn, msi_variants, disease_name
362-
):
345+
for ipr_row in get_ipr_statements_from_variants(graphkb_conn, msi_variants, disease_name):
363346
ipr_row["variant"] = msi_category
364347
ipr_row["variantType"] = "msi"
365348
# "kbVariantId": matched_stmt["kbVariantId"],
@@ -393,9 +376,7 @@ def annotate_tmb(
393376
"filters": {
394377
"reference1": {
395378
"target": "Signature",
396-
"filters": {
397-
"OR": [{"name": category}, {"displayName": category}]
398-
},
379+
"filters": {"OR": [{"name": category}, {"displayName": category}]},
399380
}
400381
},
401382
},
@@ -405,9 +386,7 @@ def annotate_tmb(
405386
)
406387
if categories:
407388
cat_variants = [cast(Variant, var) for var in categories]
408-
for ipr_row in get_ipr_statements_from_variants(
409-
graphkb_conn, cat_variants, disease_name
410-
):
389+
for ipr_row in get_ipr_statements_from_variants(graphkb_conn, cat_variants, disease_name):
411390
ipr_row["variant"] = category
412391
ipr_row["variantType"] = "tmb"
413392
# "kbVariantId": matched_stmt["kbVariantId"],

pori_python/ipr/ipr.py

+17-51
Original file line numberDiff line numberDiff line change
@@ -45,13 +45,9 @@ def filter_structural_variants(
4545
Filter structural variants to remove non-high quality events unless they are matched/annotated or
4646
they involve a gene that is a known fusion partner
4747
"""
48-
matched_svs = {
49-
match["variant"] for match in kb_matches if match["variantType"] == "sv"
50-
}
48+
matched_svs = {match["variant"] for match in kb_matches if match["variantType"] == "sv"}
5149
fusion_genes = {
52-
gene["name"]
53-
for gene in gene_annotations
54-
if gene.get("knownFusionPartner", False)
50+
gene["name"] for gene in gene_annotations if gene.get("knownFusionPartner", False)
5551
}
5652

5753
result = []
@@ -89,9 +85,7 @@ def get_evidencelevel_mapping(graphkb_conn: GraphKBConnection) -> Dict[str, str]
8985

9086
# Filter IPR EvidenceLevel and map each outgoing CrossReferenceOf to displayName
9187
ipr_source_rid = graphkb_conn.get_source("ipr")["@rid"]
92-
ipr_evidence_levels = filter(
93-
lambda d: d.get("source") == ipr_source_rid, evidence_levels
94-
)
88+
ipr_evidence_levels = filter(lambda d: d.get("source") == ipr_source_rid, evidence_levels)
9589
cross_references_mapping: Dict[str, str] = dict()
9690
ipr_rids_to_displayname: Dict[str, str] = dict()
9791
for level in ipr_evidence_levels:
@@ -139,9 +133,7 @@ def convert_statements_to_alterations(
139133
"""
140134
disease_matches = {
141135
r["@rid"]
142-
for r in gkb_vocab.get_term_tree(
143-
graphkb_conn, disease_name, ontology_class="Disease"
144-
)
136+
for r in gkb_vocab.get_term_tree(graphkb_conn, disease_name, ontology_class="Disease")
145137
}
146138

147139
if not disease_matches:
@@ -154,9 +146,7 @@ def convert_statements_to_alterations(
154146

155147
# get the recruitment status for any trial associated with a statement
156148
clinical_trials = [
157-
s["subject"]["@rid"]
158-
for s in statements
159-
if s["subject"]["@class"] == "ClinicalTrial"
149+
s["subject"]["@rid"] for s in statements if s["subject"]["@class"] == "ClinicalTrial"
160150
]
161151
recruitment_statuses = {}
162152
if clinical_trials:
@@ -173,9 +163,7 @@ def convert_statements_to_alterations(
173163

174164
for statement in statements:
175165
variants = [
176-
cast(Variant, c)
177-
for c in statement["conditions"]
178-
if c["@class"] in VARIANT_CLASSES
166+
cast(Variant, c) for c in statement["conditions"] if c["@class"] in VARIANT_CLASSES
179167
]
180168
diseases = [c for c in statement["conditions"] if c["@class"] == "Disease"]
181169
disease_match = len(diseases) == 1 and diseases[0]["@rid"] in disease_matches
@@ -196,25 +184,17 @@ def convert_statements_to_alterations(
196184

197185
evidence_level_str = display_evidence_levels(statement)
198186
evidence_levels = statement.get("evidenceLevel") or []
199-
ipr_evidence_levels = [
200-
ev_map[el.get("@rid", "")] for el in evidence_levels if el
201-
]
202-
ipr_evidence_levels_str = ";".join(
203-
sorted(set([el for el in ipr_evidence_levels]))
204-
)
187+
ipr_evidence_levels = [ev_map[el.get("@rid", "")] for el in evidence_levels if el]
188+
ipr_evidence_levels_str = ";".join(sorted(set([el for el in ipr_evidence_levels])))
205189

206190
for variant in variants:
207191
if variant["@rid"] not in variant_matches:
208192
continue
209193
stmt = {
210194
"approvedTherapy": approved_therapy or False,
211195
"category": ipr_section or "unknown",
212-
"context": (
213-
statement["subject"]["displayName"] if statement["subject"] else ""
214-
),
215-
"kbContextId": (
216-
statement["subject"]["@rid"] if statement["subject"] else ""
217-
),
196+
"context": (statement["subject"]["displayName"] if statement["subject"] else ""),
197+
"kbContextId": (statement["subject"]["@rid"] if statement["subject"] else ""),
218198
"disease": ";".join(sorted(d.get("displayName", "") for d in diseases)),
219199
"evidenceLevel": evidence_level_str or "",
220200
"iprEvidenceLevel": ipr_evidence_levels_str or "",
@@ -224,9 +204,7 @@ def convert_statements_to_alterations(
224204
"relevance": statement["relevance"]["displayName"],
225205
"kbRelevanceId": statement["relevance"]["@rid"],
226206
"externalSource": (
227-
str(statement["source"].get("displayName", ""))
228-
if statement["source"]
229-
else ""
207+
str(statement["source"].get("displayName", "")) if statement["source"] else ""
230208
),
231209
"externalStatementId": statement.get("sourceId", "") or "",
232210
"reviewStatus": statement.get("reviewStatus", "") or "",
@@ -281,9 +259,7 @@ def select_expression_plots(
281259
gene = str(variant.get("gene", ""))
282260
hist = str(variant.get("histogramImage", ""))
283261
if hist:
284-
images_by_gene[gene] = ImageDefinition(
285-
{"key": f"expDensity.{gene}", "path": hist}
286-
)
262+
images_by_gene[gene] = ImageDefinition({"key": f"expDensity.{gene}", "path": hist})
287263
return [images_by_gene[gene] for gene in selected_genes if gene in images_by_gene]
288264

289265

@@ -307,9 +283,7 @@ def create_key_alterations(
307283
variant_type = kb_match["variantType"]
308284
variant_key = kb_match["variant"]
309285

310-
match_categories = [
311-
item["category"] for item in kb_match["kbMatchedStatements"]
312-
]
286+
match_categories = [item["category"] for item in kb_match["kbMatchedStatements"]]
313287
if list(set(match_categories)) == ["unknown"]:
314288
continue
315289

@@ -330,9 +304,7 @@ def create_key_alterations(
330304
counts[type_mapping[variant_type]].add(variant_key)
331305

332306
if variant_type == "exp":
333-
alterations.append(
334-
f'{variant.get("gene","")} ({variant.get("expressionState")})'
335-
)
307+
alterations.append(f'{variant.get("gene","")} ({variant.get("expressionState")})')
336308
elif variant_type == "cnv":
337309
alterations.append(f'{variant.get("gene","")} ({variant.get("cnvState")})')
338310
elif any(item in GERMLINE_BASE_TERMS for item in match_categories):
@@ -408,19 +380,15 @@ def germline_kb_matches(
408380
# Remove any matches to germline events
409381
for alt in somatic_alts:
410382
var_list = [v for v in all_variants if v["key"] == alt["variant"]]
411-
somatic_var_list = [
412-
v for v in var_list if not v.get("germline", not assume_somatic)
413-
]
383+
somatic_var_list = [v for v in var_list if not v.get("germline", not assume_somatic)]
414384
if var_list and not somatic_var_list:
415385
logger.debug(
416386
f"Dropping germline match to somatic statement kbStatementId:{alt['kbStatementId']}: {alt['kbVariant']} {alt['category']}"
417387
)
418388
elif somatic_var_list:
419389
ret_list.append(alt) # match to somatic variant
420390
else:
421-
ret_list.append(
422-
alt
423-
) # alteration not in any specific keys matches to check.
391+
ret_list.append(alt) # alteration not in any specific keys matches to check.
424392

425393
return ret_list
426394

@@ -449,9 +417,7 @@ def multi_variant_filtering(
449417
"""
450418
# All matching statements & variants (GKB RIDs)
451419
matching_statement_rids = {
452-
stmt["kbStatementId"]
453-
for match in gkb_matches
454-
for stmt in match["kbMatchedStatements"]
420+
stmt["kbStatementId"] for match in gkb_matches for stmt in match["kbMatchedStatements"]
455421
}
456422
matching_variant_rids = {match["kbVariantId"] for match in gkb_matches}
457423

0 commit comments

Comments
 (0)