@@ -19,7 +19,7 @@ def run_intersect():
19
19
logger .debug ("Verbose logging enabled" )
20
20
21
21
# Process & sort reference variants
22
- logger .info ("Reading & sorting REFERENCE variants: {}" .format (args .reference ))
22
+ logger .info ("Reading REFERENCE variants: {}" .format (args .reference ))
23
23
with xopen ('reference_variants.txt' , 'wt' ) as outf :
24
24
outf .write ('CHR:POS:A0:A1\t ID_REF\t REF_REF\t IS_INDEL\t STRANDAMB\t IS_MA_REF\n ' )
25
25
ref_heap = []
@@ -35,7 +35,10 @@ def run_intersect():
35
35
36
36
IS_INDEL = (len (v ['REF' ]) > 1 ) | (len (ALT ) > 1 )
37
37
STRANDAMB = (v ['REF' ] == allele_complement (ALT ))
38
- heapq .heappush (ref_heap , ([key , v ['ID' ], v ['REF' ]],[IS_INDEL , STRANDAMB , IS_MA_REF ]))
38
+ ref_heap .append (([key , v ['ID' ], v ['REF' ]], [IS_INDEL , STRANDAMB , IS_MA_REF ]))
39
+
40
+ logger .info ("Sorting REFERENCE variants (heapify)" )
41
+ heapq .heapify (ref_heap )
39
42
40
43
# Output the sorted reference variants
41
44
logger .info ("Outputting REFERENCE variants -> reference_variants.txt" )
@@ -51,7 +54,7 @@ def run_intersect():
51
54
outf .write ('CHR:POS:A0:A1\t ID_TARGET\t REF_TARGET\t IS_MA_TARGET\t MAF\t F_MISS_DOSAGE\n ' )
52
55
target_heap = []
53
56
for path in args .target :
54
- logger .info ("Reading & sorting TARGET variants: {}" .format (path ))
57
+ logger .info ("Reading TARGET variants: {}" .format (path ))
55
58
pvar = read_var_general (path , chrom = None ) # essential not to filter if it is target (messes up common line indexing)
56
59
57
60
loc_afreq = path .replace ('.pvar.zst' , '.afreq.gz' )
@@ -75,7 +78,10 @@ def run_intersect():
75
78
# outf.write('{}\t{}\t{}\t{}\t{}\t{}\n'.format(key, v['ID'], v['REF'], str(IS_MA_TARGET), ALT_FREQS[i],
76
79
# F_MISS_DOSAGE))
77
80
MAF = AAF2MAF (ALT_FREQS [i ])
78
- heapq .heappush (target_heap , ([key , v ['ID' ], v ['REF' ]], [IS_MA_TARGET , MAF ,F_MISS_DOSAGE ]))
81
+ target_heap .append (([key , v ['ID' ], v ['REF' ]], [IS_MA_TARGET , MAF ,F_MISS_DOSAGE ]))
82
+
83
+ logger .info ("Sorting TARGET variants (heapify)" )
84
+ heapq .heapify (target_heap )
79
85
80
86
# Output the sorted reference variants
81
87
logger .info ("Outputting TARGET variants -> target_variants.txt" )
0 commit comments