Skip to content

Commit 61b11b5

Browse files
authored
Broad XX support, performance upgrades (#33)
* handle broad XX codes * relshp file * packaging * performance * performance code clinic * gitignore and performance enhancements to pyard.py * validate XX codes * minor fix to XX validation
1 parent 7983a79 commit 61b11b5

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

pyard/pyard.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -205,7 +205,7 @@ def __init__(self, dbversion: str='Latest',
205205
locusbroad="*".join([locus,broad])
206206
for split in dictbroad[(locus,broad)]:
207207
locussplit="*".join([locus,split])
208-
if locusbroad in self.xxcodes.keys():
208+
if locusbroad in self.xxcodes:
209209
self.xxcodes[locusbroad].extend(self.xxcodes[locussplit])
210210
else:
211211
self.xxcodes[locusbroad] = self.xxcodes[locussplit]
@@ -444,7 +444,8 @@ def redux_gl(self, glstring: str, redux_type: str) -> str:
444444
loc_name, code = loc_allele[0], loc_allele[1]
445445

446446
# handle XX codes
447-
if(ismac(glstring) and glstring.split(":")[1] == "XX"):
447+
# test that they are valid
448+
if(ismac(glstring) and glstring.split(":")[1] == "XX") and loc_name in self.xxcodes:
448449
loc, n = loc_name.split("*")
449450
return self.redux_gl("/".join(sorted(self.xxcodes[loc_name], key=functools.cmp_to_key(smart_sort_comparator))), redux_type)
450451

0 commit comments

Comments
 (0)