Skip to content

Commit 5151021

Browse files
committed
lint
1 parent ecbb4cf commit 5151021

File tree

6 files changed

+141
-184
lines changed

6 files changed

+141
-184
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
@@ -83,8 +81,7 @@ def get_ipr_statements_from_variants(
8381
inferred_statements = [
8482
s
8583
for s in get_statements_from_variants(graphkb_conn, inferred_matches)
86-
if s["@rid"]
87-
not in existing_statements # do not duplicate if non-inferred match
84+
if s["@rid"] not in existing_statements # do not duplicate if non-inferred match
8885
]
8986

9087
for ipr_row in convert_statements_to_alterations(
@@ -129,9 +126,7 @@ def annotate_expression_variants(
129126
continue
130127
try:
131128
matches = gkb_match.match_expression_variant(graphkb_conn, gene, variant)
132-
for ipr_row in get_ipr_statements_from_variants(
133-
graphkb_conn, matches, disease_name
134-
):
129+
for ipr_row in get_ipr_statements_from_variants(graphkb_conn, matches, disease_name):
135130
ipr_row["variant"] = row["key"]
136131
ipr_row["variantType"] = row.get("variantType", "exp")
137132
alterations.append(ipr_row)
@@ -180,15 +175,11 @@ def annotate_copy_variants(
180175
if variant not in REPORTED_COPY_VARIANTS:
181176
# https://www.bcgsc.ca/jira/browse/GERO-77
182177
skipped += 1
183-
logger.debug(
184-
f"Dropping {gene} copy change '{variant}' - not in REPORTED_COPY_VARIANTS"
185-
)
178+
logger.debug(f"Dropping {gene} copy change '{variant}' - not in REPORTED_COPY_VARIANTS")
186179
continue
187180
try:
188181
matches = gkb_match.match_copy_variant(graphkb_conn, gene, variant)
189-
for ipr_row in get_ipr_statements_from_variants(
190-
graphkb_conn, matches, disease_name
191-
):
182+
for ipr_row in get_ipr_statements_from_variants(graphkb_conn, matches, disease_name):
192183
ipr_row["variant"] = row["key"]
193184
ipr_row["variantType"] = row.get("variantType", "cnv")
194185
alterations.append(ipr_row)
@@ -204,9 +195,7 @@ def annotate_copy_variants(
204195
)
205196
if problem_genes:
206197
logger.error(f"gene finding failures for copy variants {sorted(problem_genes)}")
207-
logger.error(
208-
f"gene finding failure for {len(problem_genes)} copy variant genes"
209-
)
198+
logger.error(f"gene finding failure for {len(problem_genes)} copy variant genes")
210199
logger.info(
211200
f"matched {len(variants)} copy category variants to {len(alterations)} graphkb annotations"
212201
)
@@ -264,9 +253,7 @@ def annotate_positional_variants(
264253
f"Assuming malformed deletion variant {variant} is {variant[:-2] + 'del'}"
265254
)
266255
variant = variant[:-2] + "del"
267-
matches = gkb_match.match_positional_variant(
268-
graphkb_conn, variant
269-
)
256+
matches = gkb_match.match_positional_variant(graphkb_conn, variant)
270257
else:
271258
raise parse_err
272259

@@ -299,9 +286,7 @@ def annotate_positional_variants(
299286

300287
if problem_genes:
301288
logger.error(f"gene finding failures for {sorted(problem_genes)}")
302-
logger.error(
303-
f"{len(problem_genes)} gene finding failures for positional variants"
304-
)
289+
logger.error(f"{len(problem_genes)} gene finding failures for positional variants")
305290
if errors:
306291
logger.error(f"skipped {errors} positional variants due to errors")
307292

@@ -349,9 +334,7 @@ def annotate_msi(
349334
)
350335
if msi_categories:
351336
msi_variants = [cast(Variant, var) for var in msi_categories]
352-
for ipr_row in get_ipr_statements_from_variants(
353-
graphkb_conn, msi_variants, disease_name
354-
):
337+
for ipr_row in get_ipr_statements_from_variants(graphkb_conn, msi_variants, disease_name):
355338
ipr_row["variant"] = msi_category
356339
ipr_row["variantType"] = "msi"
357340
gkb_matches.append(ipr_row)
@@ -382,9 +365,7 @@ def annotate_tmb(
382365
"filters": {
383366
"reference1": {
384367
"target": "Signature",
385-
"filters": {
386-
"OR": [{"name": category}, {"displayName": category}]
387-
},
368+
"filters": {"OR": [{"name": category}, {"displayName": category}]},
388369
}
389370
},
390371
},
@@ -394,9 +375,7 @@ def annotate_tmb(
394375
)
395376
if categories:
396377
cat_variants = [cast(Variant, var) for var in categories]
397-
for ipr_row in get_ipr_statements_from_variants(
398-
graphkb_conn, cat_variants, disease_name
399-
):
378+
for ipr_row in get_ipr_statements_from_variants(graphkb_conn, cat_variants, disease_name):
400379
ipr_row["variant"] = category
401380
ipr_row["variantType"] = "tmb"
402381
gkb_matches.append(ipr_row)

pori_python/ipr/ipr.py

+19-59
Original file line numberDiff line numberDiff line change
@@ -49,13 +49,9 @@ def filter_structural_variants(
4949
Filter structural variants to remove non-high quality events unless they are matched/annotated or
5050
they involve a gene that is a known fusion partner
5151
"""
52-
matched_svs = {
53-
match["variant"] for match in kb_matches if match["variantType"] == "sv"
54-
}
52+
matched_svs = {match["variant"] for match in kb_matches if match["variantType"] == "sv"}
5553
fusion_genes = {
56-
gene["name"]
57-
for gene in gene_annotations
58-
if gene.get("knownFusionPartner", False)
54+
gene["name"] for gene in gene_annotations if gene.get("knownFusionPartner", False)
5955
}
6056

6157
result = []
@@ -93,9 +89,7 @@ def get_evidencelevel_mapping(graphkb_conn: GraphKBConnection) -> Dict[str, str]
9389

9490
# Filter IPR EvidenceLevel and map each outgoing CrossReferenceOf to displayName
9591
ipr_source_rid = graphkb_conn.get_source("ipr")["@rid"]
96-
ipr_evidence_levels = filter(
97-
lambda d: d.get("source") == ipr_source_rid, evidence_levels
98-
)
92+
ipr_evidence_levels = filter(lambda d: d.get("source") == ipr_source_rid, evidence_levels)
9993
cross_references_mapping: Dict[str, str] = dict()
10094
ipr_rids_to_displayname: Dict[str, str] = dict()
10195
for level in ipr_evidence_levels:
@@ -144,9 +138,7 @@ def convert_statements_to_alterations(
144138
"""
145139
disease_matches = {
146140
r["@rid"]
147-
for r in gkb_vocab.get_term_tree(
148-
graphkb_conn, disease_name, ontology_class="Disease"
149-
)
141+
for r in gkb_vocab.get_term_tree(graphkb_conn, disease_name, ontology_class="Disease")
150142
}
151143

152144
if not disease_matches:
@@ -159,9 +151,7 @@ def convert_statements_to_alterations(
159151

160152
# get the recruitment status for any trial associated with a statement
161153
clinical_trials = [
162-
s["subject"]["@rid"]
163-
for s in statements
164-
if s["subject"]["@class"] == "ClinicalTrial"
154+
s["subject"]["@rid"] for s in statements if s["subject"]["@class"] == "ClinicalTrial"
165155
]
166156
recruitment_statuses = {}
167157
if clinical_trials:
@@ -178,9 +168,7 @@ def convert_statements_to_alterations(
178168

179169
for statement in statements:
180170
variants = [
181-
cast(Variant, c)
182-
for c in statement["conditions"]
183-
if c["@class"] in VARIANT_CLASSES
171+
cast(Variant, c) for c in statement["conditions"] if c["@class"] in VARIANT_CLASSES
184172
]
185173
diseases = [c for c in statement["conditions"] if c["@class"] == "Disease"]
186174
disease_match = len(diseases) == 1 and diseases[0]["@rid"] in disease_matches
@@ -201,12 +189,8 @@ def convert_statements_to_alterations(
201189

202190
evidence_level_str = display_evidence_levels(statement)
203191
evidence_levels = statement.get("evidenceLevel") or []
204-
ipr_evidence_levels = [
205-
ev_map[el.get("@rid", "")] for el in evidence_levels if el
206-
]
207-
ipr_evidence_levels_str = ";".join(
208-
sorted(set([el for el in ipr_evidence_levels]))
209-
)
192+
ipr_evidence_levels = [ev_map[el.get("@rid", "")] for el in evidence_levels if el]
193+
ipr_evidence_levels_str = ";".join(sorted(set([el for el in ipr_evidence_levels])))
210194

211195
for variant in variants:
212196
if variant["@rid"] not in variant_matches:
@@ -216,16 +200,10 @@ def convert_statements_to_alterations(
216200
"approvedTherapy": approved_therapy or False,
217201
"category": ipr_section or "unknown",
218202
"context": (
219-
statement["subject"]["displayName"]
220-
if statement["subject"]
221-
else ""
222-
),
223-
"kbContextId": (
224-
statement["subject"]["@rid"] if statement["subject"] else ""
225-
),
226-
"disease": ";".join(
227-
sorted(d.get("displayName", "") for d in diseases)
203+
statement["subject"]["displayName"] if statement["subject"] else ""
228204
),
205+
"kbContextId": (statement["subject"]["@rid"] if statement["subject"] else ""),
206+
"disease": ";".join(sorted(d.get("displayName", "") for d in diseases)),
229207
"evidenceLevel": evidence_level_str or "",
230208
"iprEvidenceLevel": ipr_evidence_levels_str or "",
231209
"kbStatementId": statement["@rid"],
@@ -349,9 +327,7 @@ def select_expression_plots(
349327
gene = str(variant.get("gene", ""))
350328
hist = str(variant.get("histogramImage", ""))
351329
if hist:
352-
images_by_gene[gene] = ImageDefinition(
353-
{"key": f"expDensity.{gene}", "path": hist}
354-
)
330+
images_by_gene[gene] = ImageDefinition({"key": f"expDensity.{gene}", "path": hist})
355331
return [images_by_gene[gene] for gene in selected_genes if gene in images_by_gene]
356332

357333

@@ -394,9 +370,7 @@ def create_key_alterations(
394370
counts[type_mapping[variant_type]].add(variant_key)
395371

396372
if variant_type == "exp":
397-
alterations.append(
398-
f'{variant.get("gene","")} ({variant.get("expressionState")})'
399-
)
373+
alterations.append(f'{variant.get("gene","")} ({variant.get("expressionState")})')
400374
elif variant_type == "cnv":
401375
alterations.append(f'{variant.get("gene","")} ({variant.get("cnvState")})')
402376
# only show germline if relevant
@@ -473,19 +447,15 @@ def germline_kb_matches(
473447
# Remove any matches to germline events
474448
for alt in somatic_alts:
475449
var_list = [v for v in all_variants if v["key"] == alt["variant"]]
476-
somatic_var_list = [
477-
v for v in var_list if not v.get("germline", not assume_somatic)
478-
]
450+
somatic_var_list = [v for v in var_list if not v.get("germline", not assume_somatic)]
479451
if var_list and not somatic_var_list:
480452
logger.debug(
481453
f"Dropping germline match to somatic statement kbStatementId:{alt['kbStatementId']}: {alt['kbVariant']} {alt['category']}"
482454
)
483455
elif somatic_var_list:
484456
ret_list.append(alt) # match to somatic variant
485457
else:
486-
ret_list.append(
487-
alt
488-
) # alteration not in any specific keys matches to check.
458+
ret_list.append(alt) # alteration not in any specific keys matches to check.
489459

490460
return ret_list
491461

@@ -560,9 +530,7 @@ def multi_variant_filtering(
560530

561531
# Filtering out incompleted matches of gkb_matches
562532
return [
563-
match
564-
for match in gkb_matches
565-
if match["kbStatementId"] in complete_matching_statements
533+
match for match in gkb_matches if match["kbStatementId"] in complete_matching_statements
566534
]
567535

568536

@@ -608,9 +576,7 @@ def get_kb_matched_statements(
608576
for item in gkb_matches:
609577
stmt = copy(item)
610578
stmt["requiredKbMatches"].sort()
611-
kbs = KbMatchedStatement(
612-
{key: val for (key, val) in stmt.items() if key in kbs_keys}
613-
)
579+
kbs = KbMatchedStatement({key: val for (key, val) in stmt.items() if key in kbs_keys})
614580
dict_key = str(kbs)
615581
kbMatchedStatements[dict_key] = kbs
616582
return [*kbMatchedStatements.values()]
@@ -656,11 +622,7 @@ def get_kb_statement_matched_conditions(
656622
kbMatchedStatementConditions = {}
657623

658624
for kbStmt in kbMatchedStatements:
659-
stmts = [
660-
item
661-
for item in gkb_matches
662-
if item["kbStatementId"] == kbStmt["kbStatementId"]
663-
]
625+
stmts = [item for item in gkb_matches if item["kbStatementId"] == kbStmt["kbStatementId"]]
664626
requirements = {}
665627
for requirement in stmts[0]["requiredKbMatches"]:
666628
if not requirements.get(requirement, False):
@@ -694,9 +656,7 @@ def get_kb_statement_matched_conditions(
694656
]
695657
for conditionSet in conditionSets:
696658
# remove Nones
697-
observedVariantKeys = [
698-
item for item in conditionSet["observedVariantKeys"] if item
699-
]
659+
observedVariantKeys = [item for item in conditionSet["observedVariantKeys"] if item]
700660
observedVariantKeys.sort()
701661
kbmc = KbMatchedStatementConditionSet(
702662
{

0 commit comments

Comments
 (0)