Skip to content

Commit 2d5a44d

Browse files
committed
fix missed glfo merge call
1 parent 47479ae commit 2d5a44d

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

partis/utils.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5040,15 +5040,20 @@ def gpfn(dname, l, r): return '%s/parameters/%s/hmm/%s_gene-probs.csv' % (dname,
50405040
for hfn in glob.glob('%s/parameters/%s/hmm/hmms/*.yaml' % (subdfn(isub), ltmp)): # these will get overwritten if they're in multiple dirs, which should be fine
50415041
makelink('%s/parameters/%s/hmm/hmms' % (fpath(merged_odir), ltmp), fpath(hfn), os.path.basename(hfn))
50425042
sub_glfo = glutils.read_glfo('%s/parameters/%s/hmm/germline-sets' % (subdfn(isub), ltmp), ltmp, dont_crash=True)
5043+
name_mapping = None
50435044
if merged_glfo is None:
50445045
merged_glfo = sub_glfo
50455046
elif sub_glfo is not None: # fall through if <sub_glfo> is None
5046-
merged_glfo = glutils.get_merged_glfo(merged_glfo, sub_glfo)
5047+
merged_glfo, name_mapping = glutils.get_merged_glfo(merged_glfo, sub_glfo)
50475048
for treg in regions:
50485049
if not os.path.exists(gpfn(subdfn(isub), ltmp, treg)):
50495050
continue
50505051
for tline in csvlines(gpfn(subdfn(isub), ltmp, treg)):
5051-
merged_gene_counts[treg][tline['%s_gene'%treg]] += int(tline['count'])
5052+
gene_name = tline['%s_gene'%treg]
5053+
# Update gene name if it was remapped during glfo merge
5054+
if name_mapping is not None and gene_name in name_mapping[treg]:
5055+
gene_name = name_mapping[treg][gene_name]
5056+
merged_gene_counts[treg][gene_name] += int(tline['count'])
50525057
if merged_glfo is None: # none of them exists
50535058
continue
50545059
glutils.write_glfo('%s/parameters/%s/hmm/germline-sets' % (merged_odir, ltmp), merged_glfo)

0 commit comments

Comments
 (0)