Skip to content

Commit 435065a

Browse files
authored
Fixed merge None type error. Added wb3 as default compression level for long-reads (run-pipeline) (#116)
1 parent 636b5b6 commit 435065a

File tree

3 files changed

+17
-11
lines changed

3 files changed

+17
-11
lines changed

dysgu/call_component.pyx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -833,6 +833,7 @@ def linear_scan_clustering(spanning, informative):
833833
# return result
834834

835835

836+
836837
def process_spanning(paired_end, spanning_alignments, divergence, length_extend, informative,
837838
generic_insertions, insert_ppf, to_assemble):
838839
# echo("PROCESS SPANNING")

dysgu/main.py

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,8 @@
6060
"trust_ins_len": "False",
6161
"sd": 0.6,
6262
"symbolic_sv_size": 50000,
63-
"divergence": "auto"
63+
"divergence": "auto",
64+
"compression": "wb3",
6465
},
6566
"nanopore-r10": {"mq": 1,
6667
"min_support": "auto",
@@ -72,7 +73,8 @@
7273
"trust_ins_len": "False",
7374
"sd": 0.35,
7475
"thresholds": "0.35,0.35,0.35,0.35,0.35",
75-
"symbolic_sv_size": 50000
76+
"symbolic_sv_size": 50000,
77+
"compression": "wb3",
7678
},
7779
"pacbio-sequel2": {"mq": 1,
7880
"min_support": "auto",
@@ -83,7 +85,8 @@
8385
"clip_length": -1,
8486
"trust_ins_len": "True",
8587
"sd": 0.45,
86-
"symbolic_sv_size": 50000
88+
"symbolic_sv_size": 50000,
89+
"compression": "wb3",
8790
},
8891
"pacbio-revio": {"mq": 1,
8992
"min_support": "auto",
@@ -95,7 +98,8 @@
9598
"trust_ins_len": "True",
9699
"sd": 0.4,
97100
"thresholds": "0.25,0.25,0.25,0.25,0.25",
98-
"symbolic_sv_size": 50000
101+
"symbolic_sv_size": 50000,
102+
"compression": "wb3",
99103
},
100104
"pe": {"mq": defaults["mq"],
101105
"min_support": defaults["min_support"],
@@ -211,12 +215,11 @@ def cli():
211215
@click.option("-p", "--procs", help="Number of cpu cores to use", type=cpu_range, default=1,
212216
show_default=True)
213217
@click.option('--mode', help=f"Type of input reads. Multiple options are set, overrides other options. "
214-
f"pacbio-sequel2: --mq {presets['pacbio-sequel2']['mq']} --paired False --min-support '{presets['pacbio-sequel2']['min_support']}' --max-cov {presets['pacbio-sequel2']['max_cov']} --dist-norm {presets['pacbio-sequel2']['dist_norm']} --trust-ins-len True --symbolic-sv-size {presets['pacbio-sequel2']['symbolic_sv_size']} --sd {presets['pacbio-sequel2']['sd']}."
215-
f"pacbio-revio: --mq {presets['pacbio-revio']['mq']} --paired False --min-support '{presets['pacbio-revio']['min_support']}' --max-cov {presets['pacbio-revio']['max_cov']} --dist-norm {presets['pacbio-revio']['dist_norm']} --trust-ins-len True --thresholds {presets['pacbio-revio']['thresholds']} --symbolic-sv-size {presets['pacbio-revio']['symbolic_sv_size']} --sd {presets['pacbio-revio']['sd']}."
216-
f"nanopore-r9: --mq {presets['nanopore-r9']['mq']} --paired False --min-support '{presets['nanopore-r9']['min_support']}' --max-cov {presets['nanopore-r9']['max_cov']} --dist-norm {presets['nanopore-r9']['dist_norm']} --trust-ins-len False --symbolic-sv-size {presets['nanopore-r9']['symbolic_sv_size']} --sd {presets['nanopore-r9']['sd']} --divergence {presets['nanopore-r9']['divergence']}."
217-
f"nanopore-r10: --mq {presets['nanopore-r10']['mq']} --paired False --min-support '{presets['nanopore-r10']['min_support']}' --max-cov {presets['nanopore-r10']['max_cov']} --dist-norm {presets['nanopore-r10']['dist_norm']} --trust-ins-len False --thresholds {presets['nanopore-r10']['thresholds']} --symbolic-sv-size {presets['nanopore-r10']['symbolic_sv_size']} --sd {presets['nanopore-r10']['sd']}",
218+
f"pacbio-sequel2: --mq {presets['pacbio-sequel2']['mq']} --paired False --min-support '{presets['pacbio-sequel2']['min_support']}' --max-cov {presets['pacbio-sequel2']['max_cov']} --dist-norm {presets['pacbio-sequel2']['dist_norm']} --trust-ins-len True --symbolic-sv-size {presets['pacbio-sequel2']['symbolic_sv_size']} --sd {presets['pacbio-sequel2']['sd']} --compression wb3. "
219+
f"pacbio-revio: --mq {presets['pacbio-revio']['mq']} --paired False --min-support '{presets['pacbio-revio']['min_support']}' --max-cov {presets['pacbio-revio']['max_cov']} --dist-norm {presets['pacbio-revio']['dist_norm']} --trust-ins-len True --thresholds {presets['pacbio-revio']['thresholds']} --symbolic-sv-size {presets['pacbio-revio']['symbolic_sv_size']} --sd {presets['pacbio-revio']['sd']} --compression wb3. "
220+
f"nanopore-r9: --mq {presets['nanopore-r9']['mq']} --paired False --min-support '{presets['nanopore-r9']['min_support']}' --max-cov {presets['nanopore-r9']['max_cov']} --dist-norm {presets['nanopore-r9']['dist_norm']} --trust-ins-len False --symbolic-sv-size {presets['nanopore-r9']['symbolic_sv_size']} --sd {presets['nanopore-r9']['sd']} --divergence {presets['nanopore-r9']['divergence']} --compression wb3. "
221+
f"nanopore-r10: --mq {presets['nanopore-r10']['mq']} --paired False --min-support '{presets['nanopore-r10']['min_support']}' --max-cov {presets['nanopore-r10']['max_cov']} --dist-norm {presets['nanopore-r10']['dist_norm']} --trust-ins-len False --thresholds {presets['nanopore-r10']['thresholds']} --symbolic-sv-size {presets['nanopore-r10']['symbolic_sv_size']} --sd {presets['nanopore-r10']['sd']} --compression wb3",
218222
default="pe", type=click.Choice(["pe", "pacbio-sequel2", "pacbio-revio", "nanopore-r9", "nanopore-r10", "pacbio", "nanopore"]), show_default=True)
219-
220223
@click.option('--pl', help=f"Type of input reads [default: {defaults['pl']}]",
221224
type=click.Choice(["pe", "pacbio", "nanopore"]), callback=add_option_set)
222225
@click.option('--clip-length', help="Minimum soft-clip length, >= threshold are kept. Set to -1 to ignore [default: {deafults['clip_length']}]", type=int, callback=add_option_set)
@@ -376,7 +379,6 @@ def get_reads(ctx, **kwargs):
376379
f"nanopore-r9: --mq {presets['nanopore-r9']['mq']} --paired False --min-support '{presets['nanopore-r9']['min_support']}' --max-cov {presets['nanopore-r9']['max_cov']} --dist-norm {presets['nanopore-r9']['dist_norm']} --trust-ins-len False --symbolic-sv-size {presets['nanopore-r9']['symbolic_sv_size']} --sd {presets['nanopore-r9']['sd']} --divergence {presets['nanopore-r9']['divergence']}."
377380
f"nanopore-r10: --mq {presets['nanopore-r10']['mq']} --paired False --min-support '{presets['nanopore-r10']['min_support']}' --max-cov {presets['nanopore-r10']['max_cov']} --dist-norm {presets['nanopore-r10']['dist_norm']} --trust-ins-len False --thresholds {presets['nanopore-r10']['thresholds']} --symbolic-sv-size {presets['nanopore-r10']['symbolic_sv_size']} --sd {presets['nanopore-r10']['sd']}",
378381
default="pe", type=click.Choice(["pe", "pacbio-sequel2", "pacbio-revio", "nanopore-r9", "nanopore-r10", "pacbio", "nanopore"]), show_default=True)
379-
380382
@click.option('--pl', help=f"Type of input reads [default: {defaults['pl']}]",
381383
type=click.Choice(["pe", "pacbio", "nanopore"]), callback=add_option_set)
382384
@click.option('--clip-length', help="Minimum soft-clip length, >= threshold are kept. Set to -1 to ignore [default: {deafults['clip_length']}]", type=int, callback=add_option_set)

dysgu/merge_svs.pyx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,8 @@ def consistent_alignment_and_cigars(ei, ej, l_ratio):
159159

160160

161161
def jaccard_similarity(set1, set2):
162+
if not set1 or not set2:
163+
return 0
162164
intersection = len(set1.intersection(set2))
163165
union = len(set1.union(set2))
164166
return intersection / union if union != 0 else 0
@@ -648,7 +650,8 @@ def merge_events(potential, max_dist, tree, paired_end=False, try_rev=False, pic
648650
best_var_seq = w0.variant_seq
649651
for k in range(1, len(best)):
650652
item = best[k]
651-
w0.qnames |= item.qnames
653+
if w0.qnames is not None and item.qnames is not None:
654+
w0.qnames |= item.qnames
652655
w0.pe += item.pe
653656
w0.supp += item.supp
654657
w0.sc += item.sc

0 commit comments

Comments
 (0)