Mercurial > repos > iuc > varscan_somatic
annotate varscan.py @ 9:4e97191a1ff7 draft
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
| author | iuc | 
|---|---|
| date | Fri, 16 Aug 2019 15:49:54 -0400 | 
| parents | b79bb8b09822 | 
| children | cf8ffc79db67 | 
| rev | line source | 
|---|---|
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1 #!/usr/bin/env python3 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 2 from __future__ import print_function | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 3 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 4 import argparse | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 5 import io | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 6 import os | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 7 import subprocess | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 8 import sys | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 9 import tempfile | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 10 import time | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 11 from collections import namedtuple | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 12 from contextlib import ExitStack | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 13 from functools import partial | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 14 from threading import Thread | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 15 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 16 import pysam | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 17 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 18 | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 19 AlleleStats = namedtuple( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 20 "AlleleStats", | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 21 [ | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 22 'reads_total', | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 23 'reads_fw', | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 24 'reads_rv', | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 25 'avg_mapqual', | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 26 'avg_basequal', | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 27 'avg_dist_from_center', | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 28 'avg_mismatch_fraction', | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 29 'avg_mismatch_qualsum', | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 30 'avg_clipped_len', | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 31 'avg_dist_from_3prime' | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 32 ] | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 33 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 34 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 35 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 36 def _get_allele_specific_pileup_column_stats(pileups, ref_fetch, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 37 ignore_md, ignore_nm, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 38 mm_runs, detect_q2_runs): | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 39 var_reads_plus = var_reads_minus = 0 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 40 sum_mapping_qualities = 0 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 41 sum_base_qualities = 0 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 42 sum_dist_from_center = 0 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 43 sum_dist_from_3prime = 0 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 44 sum_clipped_length = 0 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 45 sum_unclipped_length = 0 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 46 sum_mismatch_fractions = 0 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 47 sum_mismatch_qualities = 0 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 48 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 49 for p in pileups: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 50 if p.alignment.is_reverse: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 51 var_reads_minus += 1 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 52 else: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 53 var_reads_plus += 1 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 54 sum_mapping_qualities += p.alignment.mapping_quality | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 55 sum_base_qualities += p.alignment.query_qualities[p.query_position] | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 56 sum_clipped_length += p.alignment.query_alignment_length | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 57 unclipped_length = p.alignment.query_length | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 58 sum_unclipped_length += unclipped_length | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 59 # The following calculations are all in 1-based coordinates | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 60 # with respect to the physical 5'-end of the read sequence. | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 61 if p.alignment.is_reverse: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 62 read_base_pos = unclipped_length - p.query_position | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 63 read_first_aln_pos = ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 64 unclipped_length - p.alignment.query_alignment_end + 1 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 65 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 66 read_last_aln_pos = ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 67 unclipped_length - p.alignment.query_alignment_start | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 68 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 69 qualities_3to5prime = p.alignment.query_alignment_qualities | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 70 else: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 71 read_base_pos = p.query_position + 1 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 72 read_first_aln_pos = p.alignment.query_alignment_start + 1 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 73 read_last_aln_pos = p.alignment.query_alignment_end | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 74 qualities_3to5prime = reversed( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 75 p.alignment.query_alignment_qualities | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 76 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 77 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 78 read_last_effective_aln_pos = read_last_aln_pos | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 79 if detect_q2_runs: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 80 # Note: the original bam-readcount algorithm always takes | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 81 # terminal q2 runs into account when determining the | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 82 # effective 3'-ends of reads. | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 83 # However, q2 runs have no special meaning since Illumina | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 84 # pipeline version 1.8 so detecting them is optional | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 85 # in this code. | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 86 for qual in qualities_3to5prime: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 87 if qual != 2: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 88 break | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 89 read_last_effective_aln_pos -= 1 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 90 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 91 # Note: the original bam-readcount algorithm defines the | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 92 # read center as: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 93 # read_center = p.alignment.query_alignment_length / 2 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 94 # This is less accurate than the implementation here. | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 95 read_center = (read_first_aln_pos + read_last_aln_pos) / 2 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 96 sum_dist_from_center += 1 - abs( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 97 read_base_pos - read_center | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 98 ) / (read_center - 1) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 99 # To calculate the distance of base positions from the 3'-ends | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 100 # of reads bam-readcount uses the formula: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 101 # sum_dist_from_3prime += abs( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 102 # read_last_effective_aln_pos - read_base_pos | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 103 # ) / (unclipped_length - 1) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 104 # , which treats base positions on both sides of the effective | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 105 # 3'-end equally. Since this seems hard to justify, we cap | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 106 # the distance calculation at 0 for base positions past the | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 107 # effective 3'-end (which, in turn, should only be possible | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 108 # with detection of q2 runs). | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 109 if read_last_effective_aln_pos > read_base_pos: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 110 sum_dist_from_3prime += ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 111 read_last_effective_aln_pos - read_base_pos | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 112 ) / (unclipped_length - 1) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 113 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 114 if sum_mismatch_fractions >= 0 or sum_mismatch_qualities >= 0: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 115 # sum_mismatch_fractions and sum_mismatch_qualities will be | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 116 # set to float('nan') if reference info (in form of an MD tag or | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 117 # an actual reference sequence) was not available for any previous | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 118 # read in the pileup. | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 119 # In that case, there is no point to trying to calculate | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 120 # mismatch stats for other reads anymore. | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 121 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 122 # The following mismatch calculations use this logic: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 123 # 1. For determining the edit distance between an aligned read and | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 124 # the reference, we follow the authoritative definition of the | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 125 # NM tag calculation in | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 126 # http://samtools.github.io/hts-specs/SAMtags.pdf | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 127 # | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 128 # For historical reasons, the result of this calculation will | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 129 # disagree more often than not with NM tag values calculated by | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 130 # other tools. | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 131 # If precalculated NM tag values are present on the aligned | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 132 # reads, these can be given preference through the use_nm flag. | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 133 # Doing so will mimick the behavior of bam-readcount, which | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 134 # requires and always just looks at NM tags. | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 135 # 2. For determining mismatch quality sums, a mismatch is defined | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 136 # differently and in accordance with the implementation in | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 137 # bam-readcount: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 138 # - only mismatches (not inserted or deleted bases) are | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 139 # considered | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 140 # - 'N' in the reference is considered a match for any read base | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 141 # - any matching (case-insensitive) base in reference and read | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 142 # is considered a match, even if that base is not one of | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 143 # A, C, G or T. | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 144 # In both 1. and 2. above a '=' in the read is always considered a | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 145 # match, irrespective of the reference base. | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 146 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 147 num_mismatches = 0 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 148 if not ignore_md: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 149 try: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 150 # see if the read has an MD tag, in which case pysam can | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 151 # calculate the reference sequence for us | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 152 ref_seq = p.alignment.get_reference_sequence().upper() | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 153 except ValueError: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 154 ignore_md = True | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 155 if not ignore_nm: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 156 try: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 157 num_mismatches = p.alignment.get_tag('NM') | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 158 except KeyError: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 159 ignore_nm = True | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 160 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 161 if ignore_md: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 162 if not ref_fetch: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 163 # cannot calculate mismatch stats without ref info | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 164 sum_mismatch_qualities = float('nan') | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 165 if ignore_nm: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 166 sum_mismatch_fractions = float('nan') | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 167 else: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 168 sum_mismatch_fractions += ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 169 num_mismatches / p.alignment.query_alignment_length | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 170 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 171 continue | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 172 # Without an MD tag we need to extract the relevant part | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 173 # of the reference from the full sequence by position. | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 174 ref_positions = p.alignment.get_reference_positions() | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 175 ref_seq = ref_fetch( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 176 ref_positions[0], ref_positions[-1] + 1 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 177 ).upper() | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 178 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 179 potential_matches = {'A', 'C', 'G', 'T'} | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 180 aligned_pairs = p.alignment.get_aligned_pairs(matches_only=True) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 181 ref_offset = aligned_pairs[0][1] | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 182 last_mismatch_pos = None | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 183 mismatch_run_quals = [] | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 184 for qpos, rpos in aligned_pairs: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 185 read_base = p.alignment.query_sequence[qpos].upper() | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 186 if read_base == '=': | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 187 # always treat the special read base '=' as a | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 188 # match, irrespective of the reference base | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 189 continue | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 190 ref_base = ref_seq[rpos - ref_offset] | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 191 # see if we have a mismatch to use for mismatch quality sum | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 192 # calculation | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 193 if ref_base != 'N' and ref_base != read_base: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 194 if mm_runs: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 195 if ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 196 last_mismatch_pos is None | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 197 ) or ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 198 last_mismatch_pos + 1 == qpos | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 199 ): | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 200 mismatch_run_quals.append( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 201 p.alignment.query_qualities[qpos] | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 202 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 203 else: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 204 sum_mismatch_qualities += max(mismatch_run_quals) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 205 mismatch_run_quals = [ | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 206 p.alignment.query_qualities[qpos] | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 207 ] | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 208 last_mismatch_pos = qpos | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 209 else: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 210 sum_mismatch_qualities += ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 211 p.alignment.query_qualities[qpos] | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 212 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 213 if ignore_nm: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 214 # see if we have a mismatch that increases the edit | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 215 # distance according to the SAMtags specs | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 216 if ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 217 read_base not in potential_matches | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 218 ) or ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 219 ref_base not in potential_matches | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 220 ) or ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 221 read_base != ref_base | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 222 ): | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 223 num_mismatches += 1 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 224 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 225 if mismatch_run_quals: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 226 sum_mismatch_qualities += max(mismatch_run_quals) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 227 if ignore_nm: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 228 # use the number of mismatches calculated above, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 229 # but add inserted and deleted bases to it | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 230 cigar_stats = p.alignment.get_cigar_stats()[0] | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 231 num_mismatches += cigar_stats[1] + cigar_stats[2] | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 232 sum_mismatch_fractions += ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 233 num_mismatches / p.alignment.query_alignment_length | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 234 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 235 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 236 return ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 237 var_reads_plus, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 238 var_reads_minus, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 239 sum_mapping_qualities, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 240 sum_base_qualities, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 241 sum_dist_from_center, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 242 sum_mismatch_fractions, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 243 sum_mismatch_qualities, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 244 sum_clipped_length, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 245 sum_dist_from_3prime | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 246 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 247 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 248 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 249 def get_allele_stats(reads, pos, alleles, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 250 ref=None, ignore_md=True, ignore_nm=True, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 251 mm_runs=True, detect_q2_runs=False, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 252 pileup_args=None): | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 253 chrom, start, stop = pos | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 254 if pileup_args is None: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 255 pileup_args = {} | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 256 if pileup_args.get('stepper') == 'samtools': | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 257 if pileup_args.get('compute_baq', True) is not False: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 258 if 'fastafile' not in pileup_args: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 259 pileup_args['fastafile'] = ref | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 260 # be careful when passing in a custom 'fastafile' option: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 261 # providing it slows down pysam tremendously even if the option | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 262 # isn't actually required. | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 263 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 264 pile = reads.pileup( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 265 chrom, start, stop, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 266 **pileup_args | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 267 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 268 # apply false-positive filtering a la varscan fpfilter | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 269 # find the variant site in the pileup columns | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 270 for pile_column in pile: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 271 if pile_column.reference_pos == start: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 272 break | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 273 else: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 274 # With no reads covering the genomic position | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 275 # we can only return "empty" allele stats | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 276 return [ | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 277 AlleleStats(0, 0, 0, *[float('nan')] * 7) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 278 for allele in alleles | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 279 ] | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 280 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 281 # extract required information | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 282 # overall read depth at the site | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 283 read_depth = pile_column.get_num_aligned() | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 284 assert read_depth > 0 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 285 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 286 alleles_stats = [] | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 287 for allele in alleles: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 288 if '-' in allele: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 289 allele, indel_type, indel_after = allele.partition('-') | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 290 indel_len = -len(indel_after) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 291 elif '+' in allele: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 292 allele, indel_type, indel_after = allele.partition('+') | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 293 indel_len = len(indel_after) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 294 else: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 295 indel_type = None | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 296 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 297 stats_it = ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 298 p for p in pile_column.pileups | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 299 # skip reads that don't support the allele we're looking for | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 300 if (p.query_position is not None) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 301 and (p.alignment.query_sequence[p.query_position] == allele) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 302 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 303 if indel_type == '-': | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 304 stats_it = ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 305 p for p in stats_it if p.indel == indel_len | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 306 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 307 elif indel_type == '+': | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 308 stats_it = ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 309 p for p in stats_it if ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 310 p.indel == indel_len | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 311 ) and ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 312 p.alignment.query_sequence[ | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 313 p.query_position + 1: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 314 p.query_position + 1 + indel_len | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 315 ] == indel_after | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 316 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 317 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 318 allele_stats = _get_allele_specific_pileup_column_stats( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 319 stats_it, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 320 partial( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 321 pysam.FastaFile.fetch, ref, chrom | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 322 ) if ref else None, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 323 ignore_md, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 324 ignore_nm, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 325 mm_runs, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 326 detect_q2_runs | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 327 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 328 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 329 allele_reads_total = allele_stats[0] + allele_stats[1] | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 330 if allele_reads_total == 0: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 331 # No stats without reads! | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 332 alleles_stats.append( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 333 AlleleStats(read_depth, 0, 0, *[float('nan')] * 7) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 334 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 335 else: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 336 alleles_stats.append( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 337 AlleleStats( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 338 read_depth, allele_stats[0], allele_stats[1], | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 339 *(i / allele_reads_total for i in allele_stats[2:]) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 340 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 341 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 342 return alleles_stats | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 343 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 344 | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 345 class VariantCallingError (RuntimeError): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 346 """Exception class for issues with samtools and varscan subprocesses.""" | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 347 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 348 def __init__(self, message=None, call='', error=''): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 349 self.message = message | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 350 self.call = call.strip() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 351 self.error = error.strip() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 352 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 353 def __str__(self): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 354 if self.message is None: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 355 return '' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 356 if self.error: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 357 msg_header = '"{0}" failed with:\n{1}\n\n'.format( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 358 self.call, self.error | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 359 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 360 else: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 361 msg_header = '{0} failed.\n' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 362 'No further information about this error is available.\n\n'.format( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 363 self.call | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 364 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 365 return msg_header + self.message | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 366 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 367 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 368 class VarScanCaller (object): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 369 def __init__(self, ref_genome, bam_input_files, | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 370 max_depth=None, count_orphans=False, detect_overlaps=True, | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 371 min_mapqual=None, min_basequal=None, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 372 threads=1, verbose=False, quiet=True | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 373 ): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 374 self.ref_genome = ref_genome | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 375 self.bam_input_files = bam_input_files | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 376 self.max_depth = max_depth | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 377 self.count_orphans = count_orphans | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 378 self.detect_overlaps = detect_overlaps | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 379 self.min_mapqual = min_mapqual | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 380 self.min_basequal = min_basequal | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 381 self.threads = threads | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 382 self.verbose = verbose | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 383 self.quiet = quiet | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 384 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 385 with pysam.FastaFile(ref_genome) as ref_fa: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 386 self.ref_contigs = ref_fa.references | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 387 self.ref_lengths = ref_fa.lengths | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 388 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 389 self.pileup_engine = ['samtools', 'mpileup'] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 390 self.varcall_engine = ['varscan', 'somatic'] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 391 self.requires_stdout_redirect = False | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 392 self.TemporaryContigVCF = partial( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 393 tempfile.NamedTemporaryFile, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 394 mode='wb', suffix='', delete=False, dir=os.getcwd() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 395 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 396 self.tmpfiles = [] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 397 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 398 def _get_pysam_pileup_args(self): | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 399 # Compute the pileup args dynamically to account for possibly updated | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 400 # instance attributes. | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 401 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 402 # fixed default parameters | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 403 # Note on the fixed default for 'ignore_overlaps': | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 404 # In order to use the exact same pileup parameters during variant | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 405 # calling and postprocessing, we would have to compute the setting | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 406 # dynamically like so: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 407 # if not self.detect_overlaps: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 408 # param_dict['ignore_overlaps'] = False | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 409 # However, samtools/pysam implement overlap correction by manipulating | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 410 # (setting to zero) the lower qualities of bases that are part of an | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 411 # overlap (see | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 412 # https://sourceforge.net/p/samtools/mailman/message/32793789/). This | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 413 # manipulation has such a big undesirable effect on base quality stats | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 414 # calculated during postprocessing that calculating the stats on a | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 415 # slightly different pileup seems like the lesser evil. | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 416 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 417 param_dict = { | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 418 'ignore_overlaps': False, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 419 'compute_baq': False, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 420 'stepper': 'samtools', | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 421 } | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 422 # user-controllable parameters | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 423 if self.count_orphans: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 424 param_dict['ignore_orphans'] = False | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 425 if self.max_depth is not None: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 426 param_dict['max_depth'] = self.max_depth | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 427 if self.min_mapqual is not None: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 428 param_dict['min_mapping_quality'] = self.min_mapqual | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 429 if self.min_basequal is not None: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 430 param_dict['min_base_quality'] = self.min_basequal | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 431 return param_dict | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 432 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 433 def varcall_parallel(self, normal_purity=None, tumor_purity=None, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 434 min_coverage=None, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 435 min_var_count=None, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 436 min_var_freq=None, min_hom_freq=None, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 437 p_value=None, somatic_p_value=None, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 438 threads=None, verbose=None, quiet=None | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 439 ): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 440 if not threads: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 441 threads = self.threads | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 442 if verbose is None: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 443 verbose = self.verbose | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 444 if quiet is None: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 445 quiet = self.quiet | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 446 # mapping of method parameters to varcall engine command line options | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 447 varcall_engine_option_mapping = [ | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 448 ('--normal-purity', normal_purity), | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 449 ('--tumor-purity', tumor_purity), | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 450 ('--min-coverage', min_coverage), | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 451 ('--min-reads2', min_var_count), | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 452 ('--min-var-freq', min_var_freq), | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 453 ('--min-freq-for-hom', min_hom_freq), | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 454 ('--p-value', p_value), | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 455 ('--somatic-p-value', somatic_p_value), | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 456 ('--min-avg-qual', self.min_basequal) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 457 ] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 458 varcall_engine_options = [] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 459 for option, value in varcall_engine_option_mapping: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 460 if value is not None: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 461 varcall_engine_options += [option, str(value)] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 462 pileup_engine_options = ['-B'] | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 463 if self.count_orphans: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 464 pileup_engine_options += ['-A'] | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 465 if not self.detect_overlaps: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 466 pileup_engine_options += ['-x'] | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 467 if self.max_depth is not None: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 468 pileup_engine_options += ['-d', str(self.max_depth)] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 469 if self.min_mapqual is not None: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 470 pileup_engine_options += ['-q', str(self.min_mapqual)] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 471 if self.min_basequal is not None: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 472 pileup_engine_options += ['-Q', str(self.min_basequal)] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 473 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 474 # Create a tuple of calls to samtools mpileup and varscan for | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 475 # each contig. The contig name is stored as the third element of | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 476 # that tuple. | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 477 # The calls are stored in the reverse order of the contig list so | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 478 # that they can be popped off later in the original order | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 479 calls = [( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 480 self.pileup_engine + pileup_engine_options + [ | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 481 '-r', contig + ':', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 482 '-f', self.ref_genome | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 483 ] + self.bam_input_files, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 484 self.varcall_engine + [ | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 485 '-', '{out}', '--output-vcf', '1', '--mpileup', '1' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 486 ] + varcall_engine_options, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 487 contig | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 488 ) for contig in self.ref_contigs[::-1]] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 489 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 490 if verbose: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 491 print('Starting variant calling ..') | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 492 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 493 # launch subprocesses and monitor their status | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 494 subprocesses = [] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 495 error_table = {} | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 496 tmp_io_started = [] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 497 tmp_io_finished = [] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 498 self.tmpfiles = [] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 499 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 500 def enqueue_stderr_output(out, stderr_buffer): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 501 for line in iter(out.readline, b''): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 502 # Eventually we are going to print the contents of | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 503 # the stderr_buffer to sys.stderr so we can | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 504 # decode things here using its encoding. | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 505 # We do a 'backslashreplace' just to be on the safe side. | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 506 stderr_buffer.write(line.decode(sys.stderr.encoding, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 507 'backslashreplace')) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 508 out.close() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 509 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 510 try: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 511 while subprocesses or calls: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 512 while calls and len(subprocesses) < threads: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 513 # There are still calls waiting for execution and we | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 514 # have unoccupied threads so we launch a new combined | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 515 # call to samtools mpileup and the variant caller. | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 516 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 517 # pop the call arguments from our call stack | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 518 call = calls.pop() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 519 # get the name of the contig that this call is going | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 520 # to work on | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 521 contig = call[2] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 522 # Based on the contig name, generate a readable and | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 523 # file system-compatible prefix and use it to create | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 524 # a named temporary file, to which the call output | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 525 # will be redirected. | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 526 # At the moment we create the output file we add it to | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 527 # the list of all temporary output files so that we can | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 528 # remove it eventually during cleanup. | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 529 call_out = self.TemporaryContigVCF( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 530 prefix=''.join( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 531 c if c.isalnum() else '_' for c in contig | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 532 ) + '_', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 533 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 534 # maintain a list of variant call outputs | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 535 # in the order the subprocesses got launched | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 536 tmp_io_started.append(call_out.name) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 537 if self.requires_stdout_redirect: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 538 # redirect stdout to the temporary file just created | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 539 stdout_p2 = call_out | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 540 stderr_p2 = subprocess.PIPE | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 541 else: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 542 # variant caller wants to write output to file directly | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 543 stdout_p2 = subprocess.PIPE | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 544 stderr_p2 = subprocess.STDOUT | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 545 call[1][call[1].index('{out}')] = call_out.name | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 546 call_out.close() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 547 # for reporting purposes, join the arguments for the | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 548 # samtools and the variant caller calls into readable | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 549 # strings | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 550 c_str = (' '.join(call[0]), ' '.join(call[1])) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 551 error_table[c_str] = [io.StringIO(), io.StringIO()] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 552 # start the subprocesses | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 553 p1 = subprocess.Popen( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 554 call[0], | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 555 stdout=subprocess.PIPE, stderr=subprocess.PIPE | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 556 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 557 p2 = subprocess.Popen( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 558 call[1], | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 559 stdin=p1.stdout, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 560 stdout=stdout_p2, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 561 stderr=stderr_p2 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 562 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 563 # subprocess bookkeeping | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 564 subprocesses.append((c_str, p1, p2, call_out, contig)) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 565 # make sure our newly launched call does not block | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 566 # because its buffers fill up | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 567 p1.stdout.close() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 568 t1 = Thread( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 569 target=enqueue_stderr_output, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 570 args=(p1.stderr, error_table[c_str][0]) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 571 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 572 t2 = Thread( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 573 target=enqueue_stderr_output, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 574 args=( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 575 p2.stderr | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 576 if self.requires_stdout_redirect else | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 577 p2.stdout, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 578 error_table[c_str][1] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 579 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 580 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 581 t1.daemon = t2.daemon = True | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 582 t1.start() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 583 t2.start() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 584 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 585 if verbose: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 586 print( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 587 'Calling variants for contig: {0}' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 588 .format(call[2]) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 589 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 590 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 591 # monitor all running calls to see if any of them are done | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 592 for call, p1, p2, ofo, contig in subprocesses: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 593 p1_stat = p1.poll() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 594 p2_stat = p2.poll() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 595 if p1_stat is not None or p2_stat is not None: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 596 # There is an outcome for this process! | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 597 # Lets see what it is | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 598 if p1_stat or p2_stat: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 599 print() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 600 print( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 601 error_table[call][0].getvalue(), | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 602 error_table[call][1].getvalue(), | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 603 file=sys.stderr | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 604 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 605 raise VariantCallingError( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 606 'Variant Calling for contig {0} failed.' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 607 .format(contig), | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 608 call='{0} | {1}'.format(call[0], call[1]) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 609 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 610 if p1_stat == 0 and p2_stat is None: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 611 # VarScan is not handling the no output from | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 612 # samtools mpileup situation correctly so maybe | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 613 # that's the issue here | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 614 last_words = error_table[call][1].getvalue( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 615 ).splitlines()[-4:] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 616 if len(last_words) < 4 or any( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 617 not msg.startswith('Input stream not ready') | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 618 for msg in last_words | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 619 ): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 620 break | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 621 # lets give this process a bit more time | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 622 # VarScan is waiting for input it will never | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 623 # get, stop it. | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 624 p2.terminate() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 625 subprocesses.remove((call, p1, p2, ofo, contig)) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 626 ofo.close() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 627 break | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 628 if p2_stat == 0: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 629 # Things went fine. | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 630 # maintain a list of variant call outputs | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 631 # that finished successfully (in the order | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 632 # they finished) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 633 tmp_io_finished.append(ofo.name) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 634 if verbose: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 635 print() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 636 print('Contig {0} finished.'.format(contig)) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 637 if not quiet: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 638 print() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 639 print( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 640 'stderr output from samtools mpileup/' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 641 'bcftools:'.upper(), | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 642 file=sys.stderr | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 643 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 644 print( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 645 error_table[call][0].getvalue(), | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 646 error_table[call][1].getvalue(), | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 647 file=sys.stderr | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 648 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 649 # Discard the collected stderr output from | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 650 # the call, remove the call from the list of | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 651 # running calls and close its output file. | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 652 del error_table[call] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 653 subprocesses.remove((call, p1, p2, ofo, contig)) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 654 # Closing the output file is important or we | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 655 # may hit the file system limit for open files | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 656 # if there are lots of contigs. | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 657 ofo.close() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 658 break | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 659 # wait a bit in between monitoring cycles | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 660 time.sleep(2) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 661 finally: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 662 for call, p1, p2, ofo, contig in subprocesses: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 663 # make sure we do not leave running subprocesses behind | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 664 for proc in (p1, p2): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 665 try: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 666 proc.terminate() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 667 except Exception: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 668 pass | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 669 # close currently open files | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 670 ofo.close() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 671 # store the files with finished content in the order that | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 672 # the corresponding jobs were launched | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 673 self.tmpfiles = [f for f in tmp_io_started if f in tmp_io_finished] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 674 # Make sure remaining buffered stderr output of | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 675 # subprocesses does not get lost. | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 676 # Currently, we don't screen this output for real errors, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 677 # but simply rewrite everything. | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 678 if not quiet and error_table: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 679 print() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 680 print( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 681 'stderr output from samtools mpileup/bcftools:'.upper(), | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 682 file=sys.stderr | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 683 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 684 for call, errors in error_table.items(): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 685 print(' | '.join(call), ':', file=sys.stderr) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 686 print('-' * 20, file=sys.stderr) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 687 print('samtools mpileup output:', file=sys.stderr) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 688 print(errors[0].getvalue(), file=sys.stderr) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 689 print('varscan somatic output:', file=sys.stderr) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 690 print(errors[1].getvalue(), file=sys.stderr) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 691 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 692 def _add_ref_contigs_to_header(self, header): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 693 for chrom, length in zip(self.ref_contigs, self.ref_lengths): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 694 header.add_meta( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 695 'contig', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 696 items=[('ID', chrom), ('length', length)] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 697 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 698 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 699 def _add_filters_to_header(self, header): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 700 varscan_fpfilters = { | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 701 'VarCount': 'Fewer than {min_var_count2} variant-supporting reads', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 702 'VarFreq': 'Variant allele frequency below {min_var_freq2}', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 703 'VarAvgRL': | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 704 'Average clipped length of variant-supporting reads < ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 705 '{min_var_len}', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 706 'VarReadPos': 'Relative average read position < {min_var_readpos}', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 707 'VarDist3': | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 708 'Average distance to effective 3\' end < {min_var_dist3}', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 709 'VarMMQS': | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 710 'Average mismatch quality sum for variant reads > ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 711 '{max_var_mmqs}', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 712 'VarMapQual': | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 713 'Average mapping quality of variant reads < {min_var_mapqual}', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 714 'VarBaseQual': | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 715 'Average base quality of variant reads < {min_var_basequal}', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 716 'Strand': | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 717 'Strand representation of variant reads < {min_strandedness}', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 718 'RefAvgRL': | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 719 'Average clipped length of ref-supporting reads < ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 720 '{min_ref_len}', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 721 'RefReadPos': | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 722 'Relative average read position < {min_ref_readpos}', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 723 'RefDist3': | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 724 'Average distance to effective 3\' end < {min_ref_dist3}', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 725 'RefMapQual': | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 726 'Average mapping quality of reference reads < ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 727 '{min_ref_mapqual}', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 728 'RefBaseQual': | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 729 'Average base quality of ref-supporting reads < ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 730 '{min_ref_basequal}', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 731 'RefMMQS': | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 732 'Average mismatch quality sum for ref-supporting reads > ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 733 '{max_ref_mmqs}', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 734 'MMQSdiff': | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 735 'Mismatch quality sum difference (var - ref) > ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 736 '{max_mmqs_diff}', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 737 'MinMMQSdiff': | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 738 'Mismatch quality sum difference (var - ref) < ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 739 '{max_mmqs_diff}', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 740 'MapQualDiff': | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 741 'Mapping quality difference (ref - var) > {max_mapqual_diff}', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 742 'MaxBAQdiff': | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 743 'Average base quality difference (ref - var) > ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 744 '{max_basequal_diff}', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 745 'ReadLenDiff': | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 746 'Average supporting read length difference (ref - var) > ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 747 '{max_relative_len_diff}', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 748 } | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 749 for filter_id, description in varscan_fpfilters.items(): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 750 header.filters.add(filter_id, None, None, description) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 751 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 752 def _add_indel_info_flag_to_header(self, header): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 753 header.info.add( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 754 'INDEL', 0, 'Flag', 'Indicates that the variant is an INDEL' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 755 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 756 | 
| 6 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 757 def _standardize_format_fields(self, header): | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 758 """Add standard FORMAT key declarations to a VCF header.""" | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 759 | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 760 format_field_specs = [ | 
| 8 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 761 # pysam will not add quotes around single-word descriptions, | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 762 # which is a violation of the VCF specification. | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 763 # To work around this we are using two words as the | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 764 # GT format description (instead of the commonly used "Genotype"). | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 765 # This could be changed once pysam learns to quote correctly. | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 766 ('GT', '1', 'String', 'Genotype code'), | 
| 6 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 767 ('GQ', '1', 'Integer', 'Genotype quality'), | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 768 ('DP', '1', 'Integer', 'Read depth'), | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 769 ('AD', 'R', 'Integer', 'Read depth for each allele'), | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 770 ('ADF', 'R', 'Integer', | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 771 'Read depth for each allele on the forward strand'), | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 772 ('ADR', 'R', 'Integer', | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 773 'Read depth for each allele on the reverse strand') | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 774 ] | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 775 # Existing FORMAT declarations cannot be overwritten. | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 776 # The only viable strategy is to mark them as removed, | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 777 # then merge the header with another one containing the | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 778 # correct declarations. This is what is implemented below. | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 779 temp_header = pysam.VariantHeader() | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 780 for spec in format_field_specs: | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 781 temp_header.formats.add(*spec) | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 782 if spec[0] in header.formats: | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 783 header.formats.remove_header(spec[0]) | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 784 header.merge(temp_header) | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 785 | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 786 def _compile_common_header(self, varcall_template, no_filters=False): | 
| 8 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 787 # read the header produced by VarScan for use as a template | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 788 with pysam.VariantFile(varcall_template, 'r') as original_data: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 789 varscan_header = original_data.header | 
| 7 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 790 # don't propagate non-standard and redundant FORMAT keys written | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 791 # by VarScan | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 792 varscan_header.formats.remove_header('AD') | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 793 varscan_header.formats.remove_header('FREQ') | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 794 varscan_header.formats.remove_header('RD') | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 795 varscan_header.formats.remove_header('DP4') | 
| 8 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 796 # build a new header containing information not written by VarScan | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 797 common_header = pysam.VariantHeader() | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 798 # copy over sample info from the VarScan template | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 799 for sample in varscan_header.samples: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 800 common_header.samples.add(sample) | 
| 8 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 801 # add reference information | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 802 common_header.add_meta('reference', value=self.ref_genome) | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 803 # change the source information | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 804 common_header.add_meta('source', value='varscan.py') | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 805 # add contig information | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 806 self._add_ref_contigs_to_header(common_header) | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 807 # declare an INDEL flag for record INFO fields | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 808 self._add_indel_info_flag_to_header(common_header) | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 809 # merge in remaining information from the VarScan template | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 810 common_header.merge(varscan_header) | 
| 8 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 811 # add additional FILTER declarations | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 812 if not no_filters: | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 813 # add filter info | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 814 self._add_filters_to_header(common_header) | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 815 # generate standard FORMAT field declarations | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 816 # including a correct AD declaration to prevent VarScan's | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 817 # non-standard one from getting propagated | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 818 self._standardize_format_fields(common_header) | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 819 return common_header | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 820 | 
| 7 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 821 def _fix_record_gt_fields(self, record): | 
| 6 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 822 """Migrate non-standard genotype fields to standard ones.""" | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 823 | 
| 7 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 824 # The key issue to consider here is that we need to modify | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 825 # genotype field values on a per-sample basis, but htslib | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 826 # reserves memory for the values of all samples upon the first | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 827 # modification of the field in the variant record. | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 828 # => We need to calculate all values first, then fill each | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 829 # genotype field starting with the sample with the largest value. | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 830 new_gt_fields = {'AD': [], 'ADF': [], 'ADR': []} | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 831 # store the current genotype field contents for each sample | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 832 per_sample_gts = record.samples.values() | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 833 # calculate and store the new genotype field values | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 834 for gt_field in per_sample_gts: | 
| 6 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 835 # generate a standard AD field by combining VarScan's | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 836 # RD and non-standard AD fields | 
| 7 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 837 new_gt_fields['AD'].append((gt_field['RD'], gt_field['AD'][0])) | 
| 6 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 838 # split VarScan's DP4 field into the standard fields | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 839 # ADF and ADR | 
| 7 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 840 new_gt_fields['ADF'].append( | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 841 (int(gt_field['DP4'][0]), int(gt_field['DP4'][2])) | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 842 ) | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 843 new_gt_fields['ADR'].append( | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 844 (int(gt_field['DP4'][1]), int(gt_field['DP4'][3])) | 
| 6 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 845 ) | 
| 7 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 846 # Modify the record's genotype fields. | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 847 # For each field, modify the sample containing the largest | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 848 # value for the field first. | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 849 # Without this precaution we could trigger: | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 850 # "bcf_update_format: Assertion `!fmt->p_free' failed." | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 851 # in vcf.c of htslib resulting in a core dump. | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 852 for field in sorted(new_gt_fields): | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 853 for new_field, sample_fields in sorted( | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 854 zip(new_gt_fields[field], per_sample_gts), | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 855 key=lambda x: max(x[0]), | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 856 reverse=True | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 857 ): | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 858 sample_fields[field] = new_field | 
| 6 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 859 # remove redundant fields | 
| 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 860 # FREQ is easy to calculate from AD | 
| 7 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 861 del record.format['FREQ'] | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 862 del record.format['RD'] | 
| 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 863 del record.format['DP4'] | 
| 6 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 864 | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 865 def _postprocess_variant_records(self, invcf, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 866 min_var_count2, min_var_count2_lc, | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 867 min_var_freq2, min_var_count2_depth, | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 868 min_ref_readpos, min_var_readpos, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 869 min_ref_dist3, min_var_dist3, | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 870 detect_q2_runs, | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 871 min_ref_len, min_var_len, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 872 max_relative_len_diff, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 873 min_strandedness, min_strand_reads, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 874 min_ref_basequal, min_var_basequal, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 875 max_basequal_diff, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 876 min_ref_mapqual, min_var_mapqual, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 877 max_mapqual_diff, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 878 max_ref_mmqs, max_var_mmqs, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 879 min_mmqs_diff, max_mmqs_diff, | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 880 ignore_md, | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 881 **args): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 882 # set FILTER field according to Varscan criteria | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 883 # multiple FILTER entries must be separated by semicolons | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 884 # No filters applied should be indicated with MISSING | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 885 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 886 # since posterior filters are always applied to just one sample, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 887 # a better place to store the info is in the FT genotype field: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 888 # can be PASS, '.' to indicate that filters have not been applied, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 889 # or a semicolon-separated list of filters that failed | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 890 # unfortunately, gemini does not support this field | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 891 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 892 with ExitStack() as io_stack: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 893 normal_reads, tumor_reads = ( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 894 io_stack.enter_context( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 895 pysam.Samfile(fn, 'rb')) for fn in self.bam_input_files | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 896 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 897 refseq = io_stack.enter_context(pysam.FastaFile(self.ref_genome)) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 898 pileup_args = self._get_pysam_pileup_args() | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 899 _get_stats = get_allele_stats | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 900 for record in invcf: | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 901 is_indel = False | 
| 8 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 902 if record.alleles[0] == 'N': | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 903 # It makes no sense to call SNPs against an unknown | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 904 # reference base | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 905 continue | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 906 if len(record.alleles[0]) > 1: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 907 # a deletion | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 908 is_indel = True | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 909 alleles = [ | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 910 record.alleles[1], record.alleles[0].replace( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 911 record.alleles[1], record.alleles[1] + '-', 1 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 912 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 913 ] | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 914 elif len(record.alleles[1]) > 1: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 915 # an insertion | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 916 is_indel = True | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 917 alleles = [ | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 918 record.alleles[0], | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 919 record.alleles[1].replace( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 920 record.alleles[0], record.alleles[0] + '+', 1 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 921 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 922 ] | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 923 else: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 924 # a regular SNV | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 925 alleles = record.alleles[:2] | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 926 # get pileup for genomic region affected by this variant | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 927 if record.info['SS'] == '2': | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 928 # a somatic variant => generate pileup from tumor data | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 929 reads_of_interest = tumor_reads | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 930 calculate_ref_stats = record.samples['TUMOR']['RD'] > 0 | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 931 elif record.info['SS'] in ['1', '3']: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 932 # a germline or LOH variant => pileup from normal data | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 933 reads_of_interest = normal_reads | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 934 calculate_ref_stats = record.samples['NORMAL']['RD'] > 0 | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 935 else: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 936 # TO DO: figure out if there is anything interesting to do | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 937 # for SS status codes 0 (reference) and 5 (unknown) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 938 yield record | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 939 continue | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 940 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 941 # no multiallelic sites in varscan | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 942 assert len(record.alleles) == 2 | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 943 | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 944 if calculate_ref_stats: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 945 ref_stats, alt_stats = _get_stats( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 946 reads_of_interest, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 947 (record.chrom, record.start, record.stop), | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 948 alleles, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 949 refseq, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 950 ignore_md=ignore_md, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 951 ignore_nm=False, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 952 mm_runs=True, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 953 detect_q2_runs=detect_q2_runs, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 954 pileup_args=pileup_args | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 955 ) | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 956 else: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 957 ref_stats = None | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 958 alt_stats = _get_stats( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 959 reads_of_interest, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 960 (record.chrom, record.start, record.stop), | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 961 alleles[1:2], | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 962 refseq, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 963 ignore_md=ignore_md, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 964 ignore_nm=False, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 965 mm_runs=True, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 966 detect_q2_runs=detect_q2_runs, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 967 pileup_args=pileup_args | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 968 )[0] | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 969 ref_count = 0 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 970 if ref_stats: | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 971 ref_count = ref_stats.reads_fw + ref_stats.reads_rv | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 972 if ref_stats.avg_basequal < min_ref_basequal: | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 973 record.filter.add('RefBaseQual') | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 974 if ref_count >= 2: | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 975 if ref_stats.avg_mapqual < min_ref_mapqual: | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 976 record.filter.add('RefMapQual') | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 977 if ref_stats.avg_dist_from_center < min_ref_readpos: | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 978 record.filter.add('RefReadPos') | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 979 # ref_stats.avg_mismatch_fraction | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 980 # is not a filter criterion in VarScan fpfilter | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 981 if ref_stats.avg_mismatch_qualsum > max_ref_mmqs: | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 982 record.filter.add('RefMMQS') | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 983 if not is_indel and ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 984 ref_stats.avg_clipped_len < min_ref_len | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 985 ): | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 986 # VarScan fpfilter does not apply this filter | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 987 # for indels, so we do not do it either. | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 988 record.filter.add('RefAvgRL') | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 989 if ref_stats.avg_dist_from_3prime < min_ref_dist3: | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 990 record.filter.add('RefDist3') | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 991 if alt_stats: | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 992 alt_count = alt_stats.reads_fw + alt_stats.reads_rv | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 993 if alt_count < min_var_count2: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 994 if ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 995 (alt_count + ref_count) >= min_var_count2_depth | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 996 ) or ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 997 alt_count < min_var_count2_lc | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 998 ): | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 999 record.filter.add('VarCount') | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1000 if alt_count / alt_stats.reads_total < min_var_freq2: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1001 record.filter.add('VarFreq') | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1002 if not is_indel and ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1003 alt_stats.avg_basequal < min_var_basequal | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1004 ): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1005 record.filter.add('VarBaseQual') | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1006 if alt_count >= min_strand_reads: | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1007 if ( | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1008 alt_stats.reads_fw / alt_count < min_strandedness | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1009 ) or ( | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1010 alt_stats.reads_rv / alt_count < min_strandedness | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1011 ): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1012 record.filter.add('Strand') | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1013 if alt_count >= 2: | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1014 if alt_stats.avg_mapqual < min_var_mapqual: | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1015 record.filter.add('VarMapQual') | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1016 if alt_stats.avg_dist_from_center < min_var_readpos: | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1017 record.filter.add('VarReadPos') | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1018 # alt_stats.avg_mismatch_fraction | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1019 # is not a filter criterion in VarScan fpfilter | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1020 if alt_stats.avg_mismatch_qualsum > max_var_mmqs: | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1021 record.filter.add('VarMMQS') | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1022 if not is_indel and ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1023 alt_stats.avg_clipped_len < min_var_len | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1024 ): | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1025 # VarScan fpfilter does not apply this filter | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1026 # for indels, so we do not do it either. | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1027 record.filter.add('VarAvgRL') | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1028 if alt_stats.avg_dist_from_3prime < min_var_dist3: | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1029 record.filter.add('VarDist3') | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1030 if ref_count >= 2 and alt_count >= 2: | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1031 if ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1032 ref_stats.avg_mapqual - alt_stats.avg_mapqual | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1033 ) > max_mapqual_diff: | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1034 record.filter.add('MapQualDiff') | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1035 if ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1036 ref_stats.avg_basequal - alt_stats.avg_basequal | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1037 ) > max_basequal_diff: | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1038 record.filter.add('MaxBAQdiff') | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1039 mmqs_diff = ( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1040 alt_stats.avg_mismatch_qualsum | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1041 - ref_stats.avg_mismatch_qualsum | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1042 ) | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1043 if mmqs_diff < min_mmqs_diff: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1044 record.filter.add('MinMMQSdiff') | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1045 if mmqs_diff > max_mmqs_diff: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1046 record.filter.add('MMQSdiff') | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1047 if ( | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1048 1 - | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1049 alt_stats.avg_clipped_len | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1050 / ref_stats.avg_clipped_len | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1051 ) > max_relative_len_diff: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1052 record.filter.add('ReadLenDiff') | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1053 else: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1054 # No variant-supporting reads for this record! | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1055 # This can happen in rare cases because of | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1056 # samtools mpileup issues, but indicates a | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1057 # rather unreliable variant call. | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1058 record.filter.add('VarCount') | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1059 record.filter.add('VarFreq') | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1060 yield record | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1061 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1062 def _indel_flagged_records(self, vcf): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1063 for record in vcf: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1064 record.info['INDEL'] = True | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1065 yield record | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1066 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1067 def _merge_generator(self, vcf1, vcf2): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1068 try: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1069 record1 = next(vcf1) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1070 except StopIteration: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1071 for record2 in vcf2: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1072 yield record2 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1073 return | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1074 try: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1075 record2 = next(vcf2) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1076 except StopIteration: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1077 yield record1 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1078 for record1 in vcf1: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1079 yield record1 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1080 return | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1081 while True: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1082 if (record1.start, record1.stop) < (record2.start, record2.stop): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1083 yield record1 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1084 try: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1085 record1 = next(vcf1) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1086 except StopIteration: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1087 yield record2 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1088 for record2 in vcf2: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1089 yield record2 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1090 return | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1091 else: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1092 yield record2 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1093 try: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1094 record2 = next(vcf2) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1095 except StopIteration: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1096 yield record1 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1097 for record1 in vcf1: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1098 yield record1 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1099 return | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1100 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1101 def merge_and_postprocess(self, snps_out, indels_out=None, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1102 no_filters=False, **filter_args): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1103 temporary_data = self.tmpfiles | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1104 self.tmpfiles = [] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1105 temporary_snp_files = [f + '.snp.vcf' for f in temporary_data] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1106 temporary_indel_files = [f + '.indel.vcf' for f in temporary_data] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1107 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1108 for f in temporary_data: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1109 try: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1110 os.remove(f) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1111 except Exception: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1112 pass | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1113 | 
| 8 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 1114 def filter_minimal(data, **kwargs): | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 1115 for record in data: | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 1116 if record.alleles[0] != 'N' or len(record.alleles[1]) > 1: | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 1117 # Yield everything except SNPs called against an unknown | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 1118 # reference base | 
| 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 1119 yield record | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1120 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1121 if no_filters: | 
| 8 
b79bb8b09822
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit bd1034af3217cd9fc654d7187bf674a89465755b
 iuc parents: 
7diff
changeset | 1122 apply_filters = filter_minimal | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1123 else: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1124 apply_filters = self._postprocess_variant_records | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1125 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1126 output_header = self._compile_common_header( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1127 temporary_snp_files[0], | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1128 no_filters | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1129 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1130 if indels_out is None: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1131 with open(snps_out, 'w') as o: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1132 o.write(str(output_header).format(**filter_args)) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1133 for snp_f, indel_f in zip( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1134 temporary_snp_files, temporary_indel_files | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1135 ): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1136 with pysam.VariantFile(snp_f, 'r') as snp_invcf: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1137 # fix the input header on the fly | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1138 # to avoid Warnings from htslib about missing contig | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1139 # info | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1140 self._add_ref_contigs_to_header(snp_invcf.header) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1141 self._add_filters_to_header(snp_invcf.header) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1142 self._add_indel_info_flag_to_header(snp_invcf.header) | 
| 6 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 1143 self._standardize_format_fields(snp_invcf.header) | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1144 with pysam.VariantFile(indel_f, 'r') as indel_invcf: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1145 # fix the input header on the fly | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1146 # to avoid Warnings from htslib about missing | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1147 # contig info | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1148 self._add_ref_contigs_to_header(indel_invcf.header) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1149 self._add_filters_to_header(indel_invcf.header) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1150 self._add_indel_info_flag_to_header( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1151 indel_invcf.header | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1152 ) | 
| 6 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 1153 self._standardize_format_fields(indel_invcf.header) | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1154 for record in apply_filters( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1155 self._merge_generator( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1156 snp_invcf, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1157 self._indel_flagged_records(indel_invcf) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1158 ), | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1159 **filter_args | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1160 ): | 
| 7 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 1161 self._fix_record_gt_fields(record) | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1162 o.write(str(record)) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1163 try: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1164 os.remove(snp_f) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1165 except Exception: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1166 pass | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1167 try: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1168 os.remove(indel_f) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1169 except Exception: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1170 pass | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1171 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1172 else: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1173 with open(snps_out, 'w') as o: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1174 o.write(str(output_header).format(**filter_args)) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1175 for f in temporary_snp_files: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1176 with pysam.VariantFile(f, 'r') as invcf: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1177 # fix the input header on the fly | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1178 # to avoid Warnings from htslib about missing | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1179 # contig info and errors because of undeclared | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1180 # filters | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1181 self._add_ref_contigs_to_header(invcf.header) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1182 self._add_filters_to_header(invcf.header) | 
| 6 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 1183 self._standardize_format_fields(invcf.header) | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1184 for record in apply_filters( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1185 invcf, **filter_args | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1186 ): | 
| 7 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 1187 self._fix_record_gt_fields(record) | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1188 o.write(str(record)) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1189 try: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1190 os.remove(f) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1191 except Exception: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1192 pass | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1193 with open(indels_out, 'w') as o: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1194 o.write(str(output_header)) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1195 for f in temporary_indel_files: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1196 with pysam.VariantFile(f, 'r') as invcf: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1197 # fix the input header on the fly | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1198 # to avoid Warnings from htslib about missing | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1199 # contig info and errors because of undeclared | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1200 # filters | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1201 self._add_ref_contigs_to_header(invcf.header) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1202 self._add_filters_to_header(invcf.header) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1203 self._add_indel_info_flag_to_header(invcf.header) | 
| 6 
2c66c4025db2
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 1204 self._standardize_format_fields(invcf.header) | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1205 for record in apply_filters( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1206 self._indel_flagged_records(invcf), **filter_args | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1207 ): | 
| 7 
2657ab48e16a
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 1208 self._fix_record_gt_fields(record) | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1209 o.write(str(record)) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1210 try: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1211 os.remove(f) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1212 except Exception: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1213 pass | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1214 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1215 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1216 def varscan_call(ref_genome, normal, tumor, output_path, **args): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1217 """Preparse arguments and orchestrate calling and postprocessing.""" | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1218 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1219 if args.pop('split_output'): | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1220 if '%T' in output_path: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1221 out = ( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1222 output_path.replace('%T', 'snp'), | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1223 output_path.replace('%T', 'indel') | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1224 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1225 else: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1226 out = ( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1227 output_path + '.snp', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1228 output_path + '.indel' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1229 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1230 else: | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1231 out = (output_path, None) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1232 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1233 instance_args = { | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1234 k: args.pop(k) for k in [ | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1235 'max_depth', | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1236 'count_orphans', | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1237 'detect_overlaps', | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1238 'min_mapqual', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1239 'min_basequal', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1240 'threads', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1241 'verbose', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1242 'quiet' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1243 ] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1244 } | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1245 varscan_somatic_args = { | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1246 k: args.pop(k) for k in [ | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1247 'normal_purity', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1248 'tumor_purity', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1249 'min_coverage', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1250 'min_var_count', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1251 'min_var_freq', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1252 'min_hom_freq', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1253 'somatic_p_value', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1254 'p_value' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1255 ] | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1256 } | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1257 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1258 v = VarScanCaller(ref_genome, [normal, tumor], **instance_args) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1259 v.varcall_parallel(**varscan_somatic_args) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1260 v.merge_and_postprocess(*out, **args) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1261 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1262 | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1263 if __name__ == '__main__': | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1264 p = argparse.ArgumentParser() | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1265 p.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1266 'ref_genome', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1267 metavar='reference_genome', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1268 help='the reference genome (in fasta format)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1269 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1270 p.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1271 '--normal', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1272 metavar='BAM_file', required=True, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1273 help='the BAM input file of aligned reads from the normal sample' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1274 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1275 p.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1276 '--tumor', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1277 metavar='BAM_file', required=True, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1278 help='the BAM input file of aligned reads from the tumor sample' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1279 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1280 p.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1281 '-o', '--ofile', required=True, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1282 metavar='OFILE', dest='output_path', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1283 help='Name of the variant output file. With --split-output, the name ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1284 'may use the %%T replacement token or will be used as the ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1285 'basename for the two output files to be generated (see ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1286 '-s|--split-output below).' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1287 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1288 p.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1289 '-s', '--split-output', | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1290 dest='split_output', action='store_true', | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1291 help='indicate that separate output files for SNPs and indels ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1292 'should be generated (original VarScan behavior). If specified, ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1293 '%%T in the --ofile file name will be replaced with "snp" and ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1294 '"indel" to generate the names of the SNP and indel output ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1295 'files, respectively. If %%T is not found in the file name, it ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1296 'will get interpreted as a basename to which ".snp"/".indel" ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1297 'will be appended.' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1298 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1299 p.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1300 '-t', '--threads', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1301 type=int, default=1, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1302 help='level of parallelism' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1303 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1304 p.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1305 '-v', '--verbose', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1306 action='store_true', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1307 help='be verbose about progress' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1308 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1309 p.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1310 '-q', '--quiet', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1311 action='store_true', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1312 help='suppress output from wrapped tools' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1313 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1314 call_group = p.add_argument_group('Variant calling parameters') | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1315 call_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1316 '--normal-purity', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1317 dest='normal_purity', type=float, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1318 default=1.0, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1319 help='Estimated purity of the normal sample (default: 1.0)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1320 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1321 call_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1322 '--tumor-purity', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1323 dest='tumor_purity', type=float, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1324 default=1.0, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1325 help='Estimated purity of the tumor sample (default: 1.0)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1326 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1327 call_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1328 '--max-pileup-depth', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1329 dest='max_depth', type=int, default=8000, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1330 help='Maximum depth of generated pileups (samtools mpileup -d option; ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1331 'default: 8000)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1332 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1333 call_group.add_argument( | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1334 '--count-orphans', | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1335 dest='count_orphans', action='store_true', | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1336 help='Use anomalous read pairs in variant calling ' | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1337 '(samtools mpileup -A option; default: ignore anomalous pairs)' | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1338 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1339 call_group.add_argument( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1340 '--no-detect-overlaps', | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1341 dest='detect_overlaps', action='store_false', | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1342 help='Disable automatic read-pair overlap detection by samtools ' | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1343 'mpileup. Overlap detection tries to avoid counting duplicated ' | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1344 'bases twice during variant calling. ' | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1345 '(samtools mpileup -x option; default: use overlap detection)' | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1346 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1347 call_group.add_argument( | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1348 '--min-basequal', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1349 dest='min_basequal', type=int, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1350 default=13, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1351 help='Minimum base quality at the variant position to use a read ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1352 '(default: 13)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1353 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1354 call_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1355 '--min-mapqual', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1356 dest='min_mapqual', type=int, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1357 default=0, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1358 help='Minimum mapping quality required to use a read ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1359 '(default: 0)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1360 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1361 call_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1362 '--min-coverage', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1363 dest='min_coverage', type=int, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1364 default=8, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1365 help='Minimum site coverage required in the normal and in the tumor ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1366 'sample to call a variant (default: 8)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1367 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1368 call_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1369 '--min-var-count', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1370 dest='min_var_count', type=int, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1371 default=2, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1372 help='Minimum number of variant-supporting reads required to call a ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1373 'variant (default: 2)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1374 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1375 call_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1376 '--min-var-freq', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1377 dest='min_var_freq', type=float, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1378 default=0.1, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1379 help='Minimum variant allele frequency for calling (default: 0.1)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1380 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1381 call_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1382 '--min-hom-freq', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1383 dest='min_hom_freq', type=float, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1384 default=0.75, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1385 help='Minimum variant allele frequency for homozygous call ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1386 '(default: 0.75)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1387 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1388 call_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1389 '--p-value', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1390 dest='p_value', type=float, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1391 default=0.99, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1392 help='P-value threshold for heterozygous call (default: 0.99)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1393 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1394 call_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1395 '--somatic-p-value', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1396 dest='somatic_p_value', type=float, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1397 default=0.05, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1398 help='P-value threshold for somatic call (default: 0.05)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1399 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1400 filter_group = p.add_argument_group('Posterior variant filter parameters') | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1401 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1402 '--no-filters', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1403 dest='no_filters', action='store_true', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1404 help='Disable all posterior variant filters. ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1405 'If specified, all following options will be ignored' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1406 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1407 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1408 '--min-var-count2', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1409 dest='min_var_count2', type=int, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1410 default=4, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1411 help='Minimum number of variant-supporting reads (default: 4)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1412 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1413 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1414 '--min-var-count2-lc', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1415 dest='min_var_count2_lc', type=int, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1416 default=2, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1417 help='Minimum number of variant-supporting reads when depth below ' | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1418 '--min-var-count2-depth (default: 2)' | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1419 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1420 filter_group.add_argument( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1421 '--min-var-count2-depth', | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1422 dest='min_var_count2_depth', type=int, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1423 default=10, | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1424 help='Combined depth of ref- and variant-supporting reads required to ' | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1425 'apply the --min-var-count filter instead of --min-var-count-lc ' | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1426 '(default: 10)' | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1427 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1428 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1429 '--min-var-freq2', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1430 dest='min_var_freq2', type=float, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1431 default=0.05, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1432 help='Minimum variant allele frequency (default: 0.05)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1433 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1434 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1435 '--min-ref-readpos', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1436 dest='min_ref_readpos', type=float, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1437 default=0.1, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1438 help='Minimum average relative distance of site from the ends of ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1439 'ref-supporting reads (default: 0.1)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1440 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1441 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1442 '--min-var-readpos', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1443 dest='min_var_readpos', type=float, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1444 default=0.1, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1445 help='Minimum average relative distance of site from the ends of ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1446 'variant-supporting reads (default: 0.1)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1447 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1448 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1449 '--min-ref-dist3', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1450 dest='min_ref_dist3', type=float, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1451 default=0.1, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1452 help='Minimum average relative distance of site from the effective ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1453 '3\'end of ref-supporting reads (default: 0.1)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1454 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1455 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1456 '--min-var-dist3', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1457 dest='min_var_dist3', type=float, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1458 default=0.1, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1459 help='Minimum average relative distance of site from the effective ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1460 '3\'end of variant-supporting reads (default: 0.1)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1461 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1462 filter_group.add_argument( | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1463 '--detect-q2-runs', | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1464 dest='detect_q2_runs', action='store_true', | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1465 help='Look for 3\'-terminal q2 runs and take their lengths into ' | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1466 'account for determining the effective 3\'end of reads ' | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1467 '(default: off)' | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1468 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1469 filter_group.add_argument( | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1470 '--min-ref-len', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1471 dest='min_ref_len', type=int, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1472 default=90, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1473 help='Minimum average trimmed length of reads supporting the ref ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1474 'allele (default: 90)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1475 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1476 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1477 '--min-var-len', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1478 dest='min_var_len', type=int, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1479 default=90, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1480 help='Minimum average trimmed length of reads supporting the variant ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1481 'allele (default: 90)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1482 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1483 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1484 '--max-len-diff', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1485 dest='max_relative_len_diff', type=float, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1486 default=0.25, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1487 help='Maximum average relative read length difference (ref - var; ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1488 'default: 0.25)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1489 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1490 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1491 '--min-strandedness', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1492 dest='min_strandedness', type=float, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1493 default=0.01, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1494 help='Minimum fraction of variant reads from each strand ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1495 '(default: 0.01)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1496 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1497 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1498 '--min-strand-reads', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1499 dest='min_strand_reads', type=int, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1500 default=5, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1501 help='Minimum allele depth required to run --min-strandedness filter ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1502 '(default: 5)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1503 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1504 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1505 '--min-ref-basequal', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1506 dest='min_ref_basequal', type=int, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1507 default=15, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1508 help='Minimum average base quality for the ref allele (default: 15)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1509 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1510 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1511 '--min-var-basequal', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1512 dest='min_var_basequal', type=int, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1513 default=15, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1514 help='Minimum average base quality for the variant allele ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1515 '(default: 15)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1516 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1517 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1518 '--max-basequal-diff', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1519 dest='max_basequal_diff', type=int, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1520 default=50, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1521 help='Maximum average base quality diff (ref - var; default: 50)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1522 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1523 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1524 '--min-ref-mapqual', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1525 dest='min_ref_mapqual', type=int, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1526 default=15, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1527 help='Minimum average mapping quality of reads supporting the ref ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1528 'allele (default: 15)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1529 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1530 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1531 '--min-var-mapqual', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1532 dest='min_var_mapqual', type=int, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1533 default=15, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1534 help='Minimum average mapping quality of reads supporting the variant ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1535 'allele (default: 15)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1536 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1537 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1538 '--max-mapqual-diff', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1539 dest='max_mapqual_diff', type=int, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1540 default=50, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1541 help='Maximum average mapping quality difference (ref - var; ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1542 'default: 50)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1543 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1544 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1545 '--max-ref-mmqs', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1546 dest='max_ref_mmqs', type=int, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1547 default=100, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1548 help='Maximum mismatch quality sum of reads supporting the ref ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1549 'allele (default: 100)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1550 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1551 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1552 '--max-var-mmqs', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1553 dest='max_var_mmqs', type=int, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1554 default=100, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1555 help='Maximum mismatch quality sum of reads supporting the variant ' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1556 'allele (default: 100)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1557 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1558 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1559 '--min-mmqs-diff', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1560 dest='min_mmqs_diff', type=int, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1561 default=0, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1562 help='Minimum mismatch quality sum difference (var - ref; default: 0)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1563 ) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1564 filter_group.add_argument( | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1565 '--max-mmqs-diff', | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1566 dest='max_mmqs_diff', type=int, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1567 default=50, | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1568 help='Maximum mismatch quality sum difference (var - ref; default: 50)' | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1569 ) | 
| 9 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1570 filter_group.add_argument( | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1571 '--ignore-md', | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1572 dest='ignore_md', action='store_true', | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1573 help='Do not rely on read MD tag, even if it is present on the mapped ' | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1574 'reads, and recalculate mismatch quality stats from ref ' | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1575 'alignments instead.' | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1576 ) | 
| 
4e97191a1ff7
"planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit fcf5ac14629c694f0f64773fab0428b1e78fe156"
 iuc parents: 
8diff
changeset | 1577 | 
| 2 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1578 args = vars(p.parse_args()) | 
| 
2fe9ebb98aad
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1579 varscan_call(**args) | 
