Mercurial > repos > iuc > varscan_copynumber
annotate varscan.py @ 7:192bd5b78300 draft
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
| author | iuc | 
|---|---|
| date | Mon, 21 Jan 2019 12:06:22 -0500 | 
| parents | 0cb031c7f464 | 
| children | c24910ad5441 | 
| rev | line source | 
|---|---|
| 2 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1 #!/usr/bin/env python3 | 
| 
4ce3441c407c
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 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 3 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 4 import argparse | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 5 import io | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 6 import os | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 7 import subprocess | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 8 import sys | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 9 import tempfile | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 10 import time | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 11 from contextlib import ExitStack | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 12 from functools import partial | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 13 from threading import Thread | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 14 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 15 import pysam | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 16 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 17 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 18 class VariantCallingError (RuntimeError): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 19 """Exception class for issues with samtools and varscan subprocesses.""" | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 20 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 21 def __init__(self, message=None, call='', error=''): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 22 self.message = message | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 23 self.call = call.strip() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 24 self.error = error.strip() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 25 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 26 def __str__(self): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 27 if self.message is None: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 28 return '' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 29 if self.error: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 30 msg_header = '"{0}" failed with:\n{1}\n\n'.format( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 31 self.call, self.error | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 32 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 33 else: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 34 msg_header = '{0} failed.\n' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 35 'No further information about this error is available.\n\n'.format( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 36 self.call | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 37 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 38 return msg_header + self.message | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 39 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 40 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 41 class VarScanCaller (object): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 42 def __init__(self, ref_genome, bam_input_files, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 43 max_depth=None, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 44 min_mapqual=None, min_basequal=None, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 45 threads=1, verbose=False, quiet=True | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 46 ): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 47 self.ref_genome = ref_genome | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 48 self.bam_input_files = bam_input_files | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 49 self.max_depth = max_depth | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 50 self.min_mapqual = min_mapqual | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 51 self.min_basequal = min_basequal | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 52 self.threads = threads | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 53 self.verbose = verbose | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 54 self.quiet = quiet | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 55 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 56 with pysam.FastaFile(ref_genome) as ref_fa: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 57 self.ref_contigs = ref_fa.references | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 58 self.ref_lengths = ref_fa.lengths | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 59 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 60 self.pileup_engine = ['samtools', 'mpileup'] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 61 self.varcall_engine = ['varscan', 'somatic'] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 62 self.requires_stdout_redirect = False | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 63 self.TemporaryContigVCF = partial( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 64 tempfile.NamedTemporaryFile, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 65 mode='wb', suffix='', delete=False, dir=os.getcwd() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 66 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 67 self.tmpfiles = [] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 68 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 69 def _get_pysam_pileup_args(self): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 70 param_dict = {} | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 71 if self.max_depth is not None: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 72 param_dict['max_depth'] = self.max_depth | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 73 if self.min_mapqual is not None: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 74 param_dict['min_mapping_quality'] = self.min_mapqual | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 75 if self.min_basequal is not None: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 76 param_dict['min_base_quality'] = self.min_basequal | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 77 param_dict['compute_baq'] = False | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 78 param_dict['stepper'] = 'samtools' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 79 return param_dict | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 80 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 81 def varcall_parallel(self, normal_purity=None, tumor_purity=None, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 82 min_coverage=None, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 83 min_var_count=None, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 84 min_var_freq=None, min_hom_freq=None, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 85 p_value=None, somatic_p_value=None, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 86 threads=None, verbose=None, quiet=None | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 87 ): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 88 if not threads: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 89 threads = self.threads | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 90 if verbose is None: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 91 verbose = self.verbose | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 92 if quiet is None: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 93 quiet = self.quiet | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 94 # mapping of method parameters to varcall engine command line options | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 95 varcall_engine_option_mapping = [ | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 96 ('--normal-purity', normal_purity), | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 97 ('--tumor-purity', tumor_purity), | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 98 ('--min-coverage', min_coverage), | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 99 ('--min-reads2', min_var_count), | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 100 ('--min-var-freq', min_var_freq), | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 101 ('--min-freq-for-hom', min_hom_freq), | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 102 ('--p-value', p_value), | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 103 ('--somatic-p-value', somatic_p_value), | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 104 ('--min-avg-qual', self.min_basequal) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 105 ] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 106 varcall_engine_options = [] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 107 for option, value in varcall_engine_option_mapping: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 108 if value is not None: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 109 varcall_engine_options += [option, str(value)] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 110 pileup_engine_options = ['-B'] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 111 if self.max_depth is not None: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 112 pileup_engine_options += ['-d', str(self.max_depth)] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 113 if self.min_mapqual is not None: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 114 pileup_engine_options += ['-q', str(self.min_mapqual)] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 115 if self.min_basequal is not None: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 116 pileup_engine_options += ['-Q', str(self.min_basequal)] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 117 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 118 # Create a tuple of calls to samtools mpileup and varscan for | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 119 # each contig. The contig name is stored as the third element of | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 120 # that tuple. | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 121 # The calls are stored in the reverse order of the contig list so | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 122 # that they can be popped off later in the original order | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 123 calls = [( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 124 self.pileup_engine + pileup_engine_options + [ | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 125 '-r', contig + ':', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 126 '-f', self.ref_genome | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 127 ] + self.bam_input_files, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 128 self.varcall_engine + [ | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 129 '-', '{out}', '--output-vcf', '1', '--mpileup', '1' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 130 ] + varcall_engine_options, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 131 contig | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 132 ) for contig in self.ref_contigs[::-1]] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 133 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 134 if verbose: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 135 print('Starting variant calling ..') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 136 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 137 # launch subprocesses and monitor their status | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 138 subprocesses = [] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 139 error_table = {} | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 140 tmp_io_started = [] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 141 tmp_io_finished = [] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 142 self.tmpfiles = [] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 143 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 144 def enqueue_stderr_output(out, stderr_buffer): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 145 for line in iter(out.readline, b''): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 146 # Eventually we are going to print the contents of | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 147 # the stderr_buffer to sys.stderr so we can | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 148 # decode things here using its encoding. | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 149 # We do a 'backslashreplace' just to be on the safe side. | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 150 stderr_buffer.write(line.decode(sys.stderr.encoding, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 151 'backslashreplace')) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 152 out.close() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 153 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 154 try: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 155 while subprocesses or calls: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 156 while calls and len(subprocesses) < threads: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 157 # There are still calls waiting for execution and we | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 158 # have unoccupied threads so we launch a new combined | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 159 # call to samtools mpileup and the variant caller. | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 160 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 161 # pop the call arguments from our call stack | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 162 call = calls.pop() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 163 # get the name of the contig that this call is going | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 164 # to work on | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 165 contig = call[2] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 166 # Based on the contig name, generate a readable and | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 167 # file system-compatible prefix and use it to create | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 168 # a named temporary file, to which the call output | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 169 # will be redirected. | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 170 # At the moment we create the output file we add it to | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 171 # the list of all temporary output files so that we can | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 172 # remove it eventually during cleanup. | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 173 call_out = self.TemporaryContigVCF( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 174 prefix=''.join( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 175 c if c.isalnum() else '_' for c in contig | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 176 ) + '_', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 177 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 178 # maintain a list of variant call outputs | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 179 # in the order the subprocesses got launched | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 180 tmp_io_started.append(call_out.name) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 181 if self.requires_stdout_redirect: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 182 # redirect stdout to the temporary file just created | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 183 stdout_p2 = call_out | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 184 stderr_p2 = subprocess.PIPE | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 185 else: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 186 # variant caller wants to write output to file directly | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 187 stdout_p2 = subprocess.PIPE | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 188 stderr_p2 = subprocess.STDOUT | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 189 call[1][call[1].index('{out}')] = call_out.name | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 190 call_out.close() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 191 # for reporting purposes, join the arguments for the | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 192 # samtools and the variant caller calls into readable | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 193 # strings | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 194 c_str = (' '.join(call[0]), ' '.join(call[1])) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 195 error_table[c_str] = [io.StringIO(), io.StringIO()] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 196 # start the subprocesses | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 197 p1 = subprocess.Popen( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 198 call[0], | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 199 stdout=subprocess.PIPE, stderr=subprocess.PIPE | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 200 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 201 p2 = subprocess.Popen( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 202 call[1], | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 203 stdin=p1.stdout, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 204 stdout=stdout_p2, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 205 stderr=stderr_p2 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 206 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 207 # subprocess bookkeeping | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 208 subprocesses.append((c_str, p1, p2, call_out, contig)) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 209 # make sure our newly launched call does not block | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 210 # because its buffers fill up | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 211 p1.stdout.close() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 212 t1 = Thread( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 213 target=enqueue_stderr_output, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 214 args=(p1.stderr, error_table[c_str][0]) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 215 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 216 t2 = Thread( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 217 target=enqueue_stderr_output, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 218 args=( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 219 p2.stderr | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 220 if self.requires_stdout_redirect else | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 221 p2.stdout, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 222 error_table[c_str][1] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 223 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 224 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 225 t1.daemon = t2.daemon = True | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 226 t1.start() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 227 t2.start() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 228 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 229 if verbose: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 230 print( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 231 'Calling variants for contig: {0}' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 232 .format(call[2]) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 233 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 234 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 235 # monitor all running calls to see if any of them are done | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 236 for call, p1, p2, ofo, contig in subprocesses: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 237 p1_stat = p1.poll() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 238 p2_stat = p2.poll() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 239 if p1_stat is not None or p2_stat is not None: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 240 # There is an outcome for this process! | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 241 # Lets see what it is | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 242 if p1_stat or p2_stat: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 243 print() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 244 print( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 245 error_table[call][0].getvalue(), | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 246 error_table[call][1].getvalue(), | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 247 file=sys.stderr | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 248 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 249 raise VariantCallingError( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 250 'Variant Calling for contig {0} failed.' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 251 .format(contig), | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 252 call='{0} | {1}'.format(call[0], call[1]) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 253 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 254 if p1_stat == 0 and p2_stat is None: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 255 # VarScan is not handling the no output from | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 256 # samtools mpileup situation correctly so maybe | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 257 # that's the issue here | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 258 last_words = error_table[call][1].getvalue( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 259 ).splitlines()[-4:] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 260 if len(last_words) < 4 or any( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 261 not msg.startswith('Input stream not ready') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 262 for msg in last_words | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 263 ): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 264 break | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 265 # lets give this process a bit more time | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 266 # VarScan is waiting for input it will never | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 267 # get, stop it. | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 268 p2.terminate() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 269 subprocesses.remove((call, p1, p2, ofo, contig)) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 270 ofo.close() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 271 break | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 272 if p2_stat == 0: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 273 # Things went fine. | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 274 # maintain a list of variant call outputs | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 275 # that finished successfully (in the order | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 276 # they finished) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 277 tmp_io_finished.append(ofo.name) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 278 if verbose: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 279 print() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 280 print('Contig {0} finished.'.format(contig)) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 281 if not quiet: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 282 print() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 283 print( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 284 'stderr output from samtools mpileup/' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 285 'bcftools:'.upper(), | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 286 file=sys.stderr | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 287 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 288 print( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 289 error_table[call][0].getvalue(), | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 290 error_table[call][1].getvalue(), | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 291 file=sys.stderr | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 292 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 293 # Discard the collected stderr output from | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 294 # the call, remove the call from the list of | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 295 # running calls and close its output file. | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 296 del error_table[call] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 297 subprocesses.remove((call, p1, p2, ofo, contig)) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 298 # Closing the output file is important or we | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 299 # may hit the file system limit for open files | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 300 # if there are lots of contigs. | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 301 ofo.close() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 302 break | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 303 # wait a bit in between monitoring cycles | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 304 time.sleep(2) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 305 finally: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 306 for call, p1, p2, ofo, contig in subprocesses: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 307 # make sure we do not leave running subprocesses behind | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 308 for proc in (p1, p2): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 309 try: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 310 proc.terminate() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 311 except Exception: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 312 pass | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 313 # close currently open files | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 314 ofo.close() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 315 # store the files with finished content in the order that | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 316 # the corresponding jobs were launched | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 317 self.tmpfiles = [f for f in tmp_io_started if f in tmp_io_finished] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 318 # Make sure remaining buffered stderr output of | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 319 # subprocesses does not get lost. | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 320 # Currently, we don't screen this output for real errors, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 321 # but simply rewrite everything. | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 322 if not quiet and error_table: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 323 print() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 324 print( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 325 'stderr output from samtools mpileup/bcftools:'.upper(), | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 326 file=sys.stderr | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 327 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 328 for call, errors in error_table.items(): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 329 print(' | '.join(call), ':', file=sys.stderr) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 330 print('-' * 20, file=sys.stderr) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 331 print('samtools mpileup output:', file=sys.stderr) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 332 print(errors[0].getvalue(), file=sys.stderr) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 333 print('varscan somatic output:', file=sys.stderr) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 334 print(errors[1].getvalue(), file=sys.stderr) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 335 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 336 def _add_ref_contigs_to_header(self, header): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 337 for chrom, length in zip(self.ref_contigs, self.ref_lengths): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 338 header.add_meta( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 339 'contig', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 340 items=[('ID', chrom), ('length', length)] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 341 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 342 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 343 def _add_filters_to_header(self, header): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 344 varscan_fpfilters = { | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 345 'VarCount': 'Fewer than {min_var_count2} variant-supporting reads', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 346 'VarFreq': 'Variant allele frequency below {min_var_freq2}', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 347 'VarAvgRL': | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 348 'Average clipped length of variant-supporting reads < ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 349 '{min_var_len}', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 350 'VarReadPos': 'Relative average read position < {min_var_readpos}', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 351 'VarDist3': | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 352 'Average distance to effective 3\' end < {min_var_dist3}', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 353 'VarMMQS': | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 354 'Average mismatch quality sum for variant reads > ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 355 '{max_var_mmqs}', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 356 'VarMapQual': | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 357 'Average mapping quality of variant reads < {min_var_mapqual}', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 358 'VarBaseQual': | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 359 'Average base quality of variant reads < {min_var_basequal}', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 360 'Strand': | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 361 'Strand representation of variant reads < {min_strandedness}', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 362 'RefAvgRL': | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 363 'Average clipped length of ref-supporting reads < ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 364 '{min_ref_len}', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 365 'RefReadPos': | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 366 'Relative average read position < {min_ref_readpos}', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 367 'RefDist3': | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 368 'Average distance to effective 3\' end < {min_ref_dist3}', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 369 'RefMapQual': | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 370 'Average mapping quality of reference reads < ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 371 '{min_ref_mapqual}', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 372 'RefBaseQual': | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 373 'Average base quality of ref-supporting reads < ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 374 '{min_ref_basequal}', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 375 'RefMMQS': | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 376 'Average mismatch quality sum for ref-supporting reads > ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 377 '{max_ref_mmqs}', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 378 'MMQSdiff': | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 379 'Mismatch quality sum difference (var - ref) > ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 380 '{max_mmqs_diff}', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 381 'MinMMQSdiff': | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 382 'Mismatch quality sum difference (var - ref) < ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 383 '{max_mmqs_diff}', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 384 'MapQualDiff': | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 385 'Mapping quality difference (ref - var) > {max_mapqual_diff}', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 386 'MaxBAQdiff': | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 387 'Average base quality difference (ref - var) > ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 388 '{max_basequal_diff}', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 389 'ReadLenDiff': | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 390 'Average supporting read length difference (ref - var) > ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 391 '{max_relative_len_diff}', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 392 } | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 393 for filter_id, description in varscan_fpfilters.items(): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 394 header.filters.add(filter_id, None, None, description) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 395 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 396 def _add_indel_info_flag_to_header(self, header): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 397 header.info.add( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 398 'INDEL', 0, 'Flag', 'Indicates that the variant is an INDEL' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 399 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 400 | 
| 6 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 401 def _standardize_format_fields(self, header): | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 402 """Add standard FORMAT key declarations to a VCF header.""" | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 403 | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 404 format_field_specs = [ | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 405 ('GT', '1', 'String', 'Genotype'), | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 406 ('GQ', '1', 'Integer', 'Genotype quality'), | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 407 ('DP', '1', 'Integer', 'Read depth'), | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 408 ('AD', 'R', 'Integer', 'Read depth for each allele'), | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 409 ('ADF', 'R', 'Integer', | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 410 'Read depth for each allele on the forward strand'), | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 411 ('ADR', 'R', 'Integer', | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 412 'Read depth for each allele on the reverse strand') | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 413 ] | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 414 # Existing FORMAT declarations cannot be overwritten. | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 415 # The only viable strategy is to mark them as removed, | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 416 # then merge the header with another one containing the | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 417 # correct declarations. This is what is implemented below. | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 418 temp_header = pysam.VariantHeader() | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 419 for spec in format_field_specs: | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 420 temp_header.formats.add(*spec) | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 421 if spec[0] in header.formats: | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 422 header.formats.remove_header(spec[0]) | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 423 header.merge(temp_header) | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 424 | 
| 2 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 425 def _compile_common_header(self, varcall_template, no_filters=False): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 426 # fix the header generated by VarScan | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 427 # by adding reference and contig information | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 428 common_header = pysam.VariantHeader() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 429 common_header.add_meta('reference', value=self.ref_genome) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 430 self._add_ref_contigs_to_header(common_header) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 431 if not no_filters: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 432 # add filter info | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 433 self._add_filters_to_header(common_header) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 434 # change the source information | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 435 common_header.add_meta('source', value='varscan.py') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 436 # declare an INDEL flag for record INFO fields | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 437 self._add_indel_info_flag_to_header(common_header) | 
| 6 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 438 # generate standard FORMAT field declarations | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 439 # including a correct AD declaration to prevent VarScan's | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 440 # non-standard one from getting propagated | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 441 self._standardize_format_fields(common_header) | 
| 2 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 442 # take the remaining metadata from the template header produced by | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 443 # VarScan | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 444 with pysam.VariantFile(varcall_template, 'r') as original_data: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 445 varscan_header = original_data.header | 
| 7 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 446 # don't propagate non-standard and redundant FORMAT keys written | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 447 # by VarScan | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 448 varscan_header.formats.remove_header('AD') | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 449 varscan_header.formats.remove_header('FREQ') | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 450 varscan_header.formats.remove_header('RD') | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 451 varscan_header.formats.remove_header('DP4') | 
| 2 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 452 for sample in varscan_header.samples: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 453 common_header.samples.add(sample) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 454 common_header.merge(varscan_header) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 455 return common_header | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 456 | 
| 7 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 457 def _fix_record_gt_fields(self, record): | 
| 6 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 458 """Migrate non-standard genotype fields to standard ones.""" | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 459 | 
| 7 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 460 # The key issue to consider here is that we need to modify | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 461 # genotype field values on a per-sample basis, but htslib | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 462 # reserves memory for the values of all samples upon the first | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 463 # modification of the field in the variant record. | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 464 # => We need to calculate all values first, then fill each | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 465 # genotype field starting with the sample with the largest value. | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 466 new_gt_fields = {'AD': [], 'ADF': [], 'ADR': []} | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 467 # store the current genotype field contents for each sample | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 468 per_sample_gts = record.samples.values() | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 469 # calculate and store the new genotype field values | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 470 for gt_field in per_sample_gts: | 
| 6 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 471 # generate a standard AD field by combining VarScan's | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 472 # RD and non-standard AD fields | 
| 7 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 473 new_gt_fields['AD'].append((gt_field['RD'], gt_field['AD'][0])) | 
| 6 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 474 # split VarScan's DP4 field into the standard fields | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 475 # ADF and ADR | 
| 7 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 476 new_gt_fields['ADF'].append( | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 477 (int(gt_field['DP4'][0]), int(gt_field['DP4'][2])) | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 478 ) | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 479 new_gt_fields['ADR'].append( | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 480 (int(gt_field['DP4'][1]), int(gt_field['DP4'][3])) | 
| 6 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 481 ) | 
| 7 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 482 # Modify the record's genotype fields. | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 483 # For each field, modify the sample containing the largest | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 484 # value for the field first. | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 485 # Without this precaution we could trigger: | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 486 # "bcf_update_format: Assertion `!fmt->p_free' failed." | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 487 # in vcf.c of htslib resulting in a core dump. | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 488 for field in sorted(new_gt_fields): | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 489 for new_field, sample_fields in sorted( | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 490 zip(new_gt_fields[field], per_sample_gts), | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 491 key=lambda x: max(x[0]), | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 492 reverse=True | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 493 ): | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 494 sample_fields[field] = new_field | 
| 6 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 495 # remove redundant fields | 
| 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 496 # FREQ is easy to calculate from AD | 
| 7 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 497 del record.format['FREQ'] | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 498 del record.format['RD'] | 
| 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 499 del record.format['DP4'] | 
| 6 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 500 | 
| 2 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 501 def pileup_masker(self, mask): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 502 def apply_mask_on_pileup(piled_items): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 503 for item, status in zip(piled_items, mask): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 504 if status: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 505 yield item | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 506 return apply_mask_on_pileup | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 507 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 508 def get_allele_specific_pileup_column_stats( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 509 self, allele, pile_column, ref_fetch | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 510 ): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 511 # number of reads supporting the given allele on | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 512 # forward and reverse strand, and in total | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 513 var_reads_plus = var_reads_minus = 0 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 514 var_supp_read_mask = [] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 515 for base in pile_column.get_query_sequences(): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 516 if base == allele: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 517 # allele supporting read on + strand | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 518 var_reads_plus += 1 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 519 var_supp_read_mask.append(True) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 520 elif base.upper() == allele: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 521 # allele supporting read on - strand | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 522 var_reads_minus += 1 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 523 var_supp_read_mask.append(True) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 524 else: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 525 var_supp_read_mask.append(False) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 526 var_reads_total = var_reads_plus + var_reads_minus | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 527 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 528 if var_reads_total == 0: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 529 # No stats without reads! | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 530 return None | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 531 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 532 var_supp_only = self.pileup_masker(var_supp_read_mask) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 533 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 534 # average mapping quality of the reads supporting the | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 535 # given allele | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 536 avg_mapping_quality = sum( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 537 mq for mq in var_supp_only( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 538 pile_column.get_mapping_qualities() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 539 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 540 ) / var_reads_total | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 541 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 542 # for the remaining stats we need access to complete | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 543 # read information | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 544 piled_reads = [ | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 545 p for p in var_supp_only(pile_column.pileups) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 546 ] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 547 assert len(piled_reads) == var_reads_total | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 548 sum_avg_base_qualities = 0 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 549 sum_dist_from_center = 0 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 550 sum_dist_from_3prime = 0 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 551 sum_clipped_length = 0 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 552 sum_unclipped_length = 0 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 553 sum_num_mismatches_as_fraction = 0 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 554 sum_mismatch_qualities = 0 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 555 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 556 for p in piled_reads: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 557 sum_avg_base_qualities += sum( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 558 p.alignment.query_qualities | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 559 ) / p.alignment.infer_query_length() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 560 sum_clipped_length += p.alignment.query_alignment_length | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 561 unclipped_length = p.alignment.infer_read_length() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 562 sum_unclipped_length += unclipped_length | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 563 read_center = p.alignment.query_alignment_length / 2 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 564 sum_dist_from_center += 1 - abs( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 565 p.query_position - read_center | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 566 ) / read_center | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 567 if p.alignment.is_reverse: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 568 sum_dist_from_3prime += p.query_position / unclipped_length | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 569 else: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 570 sum_dist_from_3prime += 1 - p.query_position / unclipped_length | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 571 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 572 sum_num_mismatches = 0 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 573 for qpos, rpos in p.alignment.get_aligned_pairs(): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 574 if qpos is not None and rpos is not None: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 575 if p.alignment.query_sequence[qpos] != ref_fetch( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 576 rpos, rpos + 1 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 577 ).upper(): # ref bases can be lowercase! | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 578 sum_num_mismatches += 1 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 579 sum_mismatch_qualities += p.alignment.query_qualities[ | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 580 qpos | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 581 ] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 582 sum_num_mismatches_as_fraction += ( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 583 sum_num_mismatches / p.alignment.query_alignment_length | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 584 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 585 avg_basequality = sum_avg_base_qualities / var_reads_total | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 586 avg_pos_as_fraction = sum_dist_from_center / var_reads_total | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 587 avg_num_mismatches_as_fraction = ( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 588 sum_num_mismatches_as_fraction / var_reads_total | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 589 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 590 avg_sum_mismatch_qualities = sum_mismatch_qualities / var_reads_total | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 591 avg_clipped_length = sum_clipped_length / var_reads_total | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 592 avg_distance_to_effective_3p_end = ( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 593 sum_dist_from_3prime / var_reads_total | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 594 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 595 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 596 return ( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 597 avg_mapping_quality, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 598 avg_basequality, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 599 var_reads_plus, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 600 var_reads_minus, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 601 avg_pos_as_fraction, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 602 avg_num_mismatches_as_fraction, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 603 avg_sum_mismatch_qualities, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 604 avg_clipped_length, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 605 avg_distance_to_effective_3p_end | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 606 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 607 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 608 def _postprocess_variant_records(self, invcf, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 609 min_var_count2, min_var_count2_lc, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 610 min_var_freq2, max_somatic_p, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 611 max_somatic_p_depth, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 612 min_ref_readpos, min_var_readpos, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 613 min_ref_dist3, min_var_dist3, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 614 min_ref_len, min_var_len, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 615 max_relative_len_diff, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 616 min_strandedness, min_strand_reads, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 617 min_ref_basequal, min_var_basequal, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 618 max_basequal_diff, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 619 min_ref_mapqual, min_var_mapqual, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 620 max_mapqual_diff, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 621 max_ref_mmqs, max_var_mmqs, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 622 min_mmqs_diff, max_mmqs_diff, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 623 **args): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 624 # set FILTER field according to Varscan criteria | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 625 # multiple FILTER entries must be separated by semicolons | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 626 # No filters applied should be indicated with MISSING | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 627 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 628 # since posterior filters are always applied to just one sample, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 629 # a better place to store the info is in the FT genotype field: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 630 # can be PASS, '.' to indicate that filters have not been applied, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 631 # or a semicolon-separated list of filters that failed | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 632 # unfortunately, gemini does not support this field | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 633 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 634 with ExitStack() as io_stack: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 635 normal_reads, tumor_reads = ( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 636 io_stack.enter_context( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 637 pysam.Samfile(fn, 'rb')) for fn in self.bam_input_files | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 638 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 639 refseq = io_stack.enter_context(pysam.FastaFile(self.ref_genome)) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 640 pileup_args = self._get_pysam_pileup_args() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 641 for record in invcf: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 642 if any(len(allele) > 1 for allele in record.alleles): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 643 # skip indel postprocessing for the moment | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 644 yield record | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 645 continue | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 646 # get pileup for genomic region affected by this variant | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 647 if record.info['SS'] == '2': | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 648 # a somatic variant => generate pileup from tumor data | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 649 pile = tumor_reads.pileup( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 650 record.chrom, record.start, record.stop, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 651 **pileup_args | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 652 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 653 sample_of_interest = 'TUMOR' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 654 elif record.info['SS'] in ['1', '3']: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 655 # a germline or LOH variant => pileup from normal data | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 656 pile = normal_reads.pileup( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 657 record.chrom, record.start, record.stop, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 658 **pileup_args | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 659 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 660 sample_of_interest = 'NORMAL' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 661 else: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 662 # TO DO: figure out if there is anything interesting to do | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 663 # for SS status codes 0 (reference) and 5 (unknown) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 664 yield record | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 665 continue | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 666 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 667 # apply false-positive filtering a la varscan fpfilter | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 668 # find the variant site in the pileup columns | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 669 for pile_column in pile: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 670 if pile_column.reference_pos == record.start: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 671 break | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 672 # extract required information | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 673 # overall read depth at the site | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 674 read_depth = pile_column.get_num_aligned() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 675 assert read_depth > 0 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 676 # no multiallelic sites in varscan | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 677 assert len(record.alleles) == 2 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 678 if record.samples[sample_of_interest]['RD'] > 0: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 679 ref_stats, alt_stats = [ | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 680 self.get_allele_specific_pileup_column_stats( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 681 allele, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 682 pile_column, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 683 partial( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 684 pysam.FastaFile.fetch, refseq, record.chrom | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 685 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 686 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 687 for allele in record.alleles | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 688 ] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 689 else: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 690 ref_stats = None | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 691 alt_stats = self.get_allele_specific_pileup_column_stats( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 692 record.alleles[1], | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 693 pile_column, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 694 partial(pysam.FastaFile.fetch, refseq, record.chrom) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 695 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 696 ref_count = 0 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 697 if ref_stats: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 698 ref_count = ref_stats[2] + ref_stats[3] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 699 if ref_stats[1] < min_ref_basequal: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 700 record.filter.add('RefBaseQual') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 701 if ref_count >= 2: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 702 if ref_stats[0] < min_ref_mapqual: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 703 record.filter.add('RefMapQual') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 704 if ref_stats[4] < min_ref_readpos: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 705 record.filter.add('RefReadPos') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 706 # ref_stats[5] (avg_num_mismatches_as_fraction | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 707 # is not a filter criterion in VarScan fpfilter | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 708 if ref_stats[6] > max_ref_mmqs: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 709 record.filter.add('RefMMQS') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 710 if ref_stats[7] < min_ref_len: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 711 # VarScan fpfilter does not apply this filter | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 712 # for indels, but there is no reason | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 713 # not to do it. | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 714 record.filter.add('RefAvgRL') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 715 if ref_stats[8] < min_ref_dist3: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 716 record.filter.add('RefDist3') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 717 if alt_stats: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 718 alt_count = alt_stats[2] + alt_stats[3] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 719 if ( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 720 alt_count < min_var_count2_lc | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 721 ) or ( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 722 read_depth >= max_somatic_p_depth and | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 723 alt_count < min_var_count2 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 724 ): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 725 record.filter.add('VarCount') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 726 if alt_count / read_depth < min_var_freq2: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 727 record.filter.add('VarFreq') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 728 if alt_stats[1] < min_var_basequal: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 729 record.filter.add('VarBaseQual') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 730 if alt_count > min_strand_reads: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 731 if ( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 732 alt_stats[2] / alt_count < min_strandedness | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 733 ) or ( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 734 alt_stats[3] / alt_count < min_strandedness | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 735 ): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 736 record.filter.add('Strand') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 737 if alt_stats[2] + alt_stats[3] >= 2: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 738 if alt_stats[0] < min_var_mapqual: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 739 record.filter.add('VarMapQual') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 740 if alt_stats[4] < min_var_readpos: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 741 record.filter.add('VarReadPos') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 742 # alt_stats[5] (avg_num_mismatches_as_fraction | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 743 # is not a filter criterion in VarScan fpfilter | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 744 if alt_stats[6] > max_var_mmqs: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 745 record.filter.add('VarMMQS') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 746 if alt_stats[7] < min_var_len: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 747 # VarScan fpfilter does not apply this filter | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 748 # for indels, but there is no reason | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 749 # not to do it. | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 750 record.filter.add('VarAvgRL') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 751 if alt_stats[8] < min_var_dist3: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 752 record.filter.add('VarDist3') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 753 if ref_count >= 2 and alt_count >= 2: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 754 if (ref_stats[0] - alt_stats[0]) > max_mapqual_diff: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 755 record.filter.add('MapQualDiff') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 756 if (ref_stats[1] - alt_stats[1]) > max_basequal_diff: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 757 record.filter.add('MaxBAQdiff') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 758 mmqs_diff = alt_stats[6] - ref_stats[6] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 759 if mmqs_diff < min_mmqs_diff: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 760 record.filter.add('MinMMQSdiff') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 761 if mmqs_diff > max_mmqs_diff: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 762 record.filter.add('MMQSdiff') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 763 if ( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 764 1 - alt_stats[7] / ref_stats[7] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 765 ) > max_relative_len_diff: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 766 record.filter.add('ReadLenDiff') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 767 else: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 768 # No variant-supporting reads for this record! | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 769 # This can happen in rare cases because of | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 770 # samtools mpileup issues, but indicates a | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 771 # rather unreliable variant call. | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 772 record.filter.add('VarCount') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 773 record.filter.add('VarFreq') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 774 yield record | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 775 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 776 def _indel_flagged_records(self, vcf): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 777 for record in vcf: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 778 record.info['INDEL'] = True | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 779 yield record | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 780 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 781 def _merge_generator(self, vcf1, vcf2): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 782 try: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 783 record1 = next(vcf1) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 784 except StopIteration: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 785 for record2 in vcf2: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 786 yield record2 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 787 return | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 788 try: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 789 record2 = next(vcf2) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 790 except StopIteration: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 791 yield record1 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 792 for record1 in vcf1: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 793 yield record1 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 794 return | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 795 while True: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 796 if (record1.start, record1.stop) < (record2.start, record2.stop): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 797 yield record1 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 798 try: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 799 record1 = next(vcf1) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 800 except StopIteration: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 801 yield record2 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 802 for record2 in vcf2: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 803 yield record2 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 804 return | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 805 else: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 806 yield record2 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 807 try: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 808 record2 = next(vcf2) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 809 except StopIteration: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 810 yield record1 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 811 for record1 in vcf1: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 812 yield record1 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 813 return | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 814 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 815 def merge_and_postprocess(self, snps_out, indels_out=None, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 816 no_filters=False, **filter_args): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 817 temporary_data = self.tmpfiles | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 818 self.tmpfiles = [] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 819 temporary_snp_files = [f + '.snp.vcf' for f in temporary_data] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 820 temporary_indel_files = [f + '.indel.vcf' for f in temporary_data] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 821 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 822 for f in temporary_data: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 823 try: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 824 os.remove(f) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 825 except Exception: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 826 pass | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 827 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 828 def noop_gen(data, **kwargs): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 829 for d in data: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 830 yield d | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 831 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 832 if no_filters: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 833 apply_filters = noop_gen | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 834 else: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 835 apply_filters = self._postprocess_variant_records | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 836 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 837 output_header = self._compile_common_header( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 838 temporary_snp_files[0], | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 839 no_filters | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 840 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 841 if indels_out is None: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 842 with open(snps_out, 'w') as o: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 843 o.write(str(output_header).format(**filter_args)) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 844 for snp_f, indel_f in zip( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 845 temporary_snp_files, temporary_indel_files | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 846 ): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 847 with pysam.VariantFile(snp_f, 'r') as snp_invcf: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 848 # fix the input header on the fly | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 849 # to avoid Warnings from htslib about missing contig | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 850 # info | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 851 self._add_ref_contigs_to_header(snp_invcf.header) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 852 self._add_filters_to_header(snp_invcf.header) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 853 self._add_indel_info_flag_to_header(snp_invcf.header) | 
| 6 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 854 self._standardize_format_fields(snp_invcf.header) | 
| 2 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 855 with pysam.VariantFile(indel_f, 'r') as indel_invcf: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 856 # fix the input header on the fly | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 857 # to avoid Warnings from htslib about missing | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 858 # contig info | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 859 self._add_ref_contigs_to_header(indel_invcf.header) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 860 self._add_filters_to_header(indel_invcf.header) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 861 self._add_indel_info_flag_to_header( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 862 indel_invcf.header | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 863 ) | 
| 6 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 864 self._standardize_format_fields(indel_invcf.header) | 
| 2 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 865 for record in apply_filters( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 866 self._merge_generator( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 867 snp_invcf, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 868 self._indel_flagged_records(indel_invcf) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 869 ), | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 870 **filter_args | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 871 ): | 
| 7 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 872 self._fix_record_gt_fields(record) | 
| 2 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 873 o.write(str(record)) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 874 try: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 875 os.remove(snp_f) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 876 except Exception: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 877 pass | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 878 try: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 879 os.remove(indel_f) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 880 except Exception: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 881 pass | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 882 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 883 else: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 884 with open(snps_out, 'w') as o: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 885 o.write(str(output_header).format(**filter_args)) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 886 for f in temporary_snp_files: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 887 with pysam.VariantFile(f, 'r') as invcf: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 888 # fix the input header on the fly | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 889 # to avoid Warnings from htslib about missing | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 890 # contig info and errors because of undeclared | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 891 # filters | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 892 self._add_ref_contigs_to_header(invcf.header) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 893 self._add_filters_to_header(invcf.header) | 
| 6 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 894 self._standardize_format_fields(invcf.header) | 
| 2 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 895 for record in apply_filters( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 896 invcf, **filter_args | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 897 ): | 
| 7 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 898 self._fix_record_gt_fields(record) | 
| 2 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 899 o.write(str(record)) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 900 try: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 901 os.remove(f) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 902 except Exception: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 903 pass | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 904 with open(indels_out, 'w') as o: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 905 o.write(str(output_header)) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 906 for f in temporary_indel_files: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 907 with pysam.VariantFile(f, 'r') as invcf: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 908 # fix the input header on the fly | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 909 # to avoid Warnings from htslib about missing | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 910 # contig info and errors because of undeclared | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 911 # filters | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 912 self._add_ref_contigs_to_header(invcf.header) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 913 self._add_filters_to_header(invcf.header) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 914 self._add_indel_info_flag_to_header(invcf.header) | 
| 6 
0cb031c7f464
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 4b7660df2384d8c8c6b5a6f02a00d13211e6ff6c
 iuc parents: 
2diff
changeset | 915 self._standardize_format_fields(invcf.header) | 
| 2 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 916 for record in apply_filters( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 917 self._indel_flagged_records(invcf), **filter_args | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 918 ): | 
| 7 
192bd5b78300
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit f5e4d8903b6d69b0507f6a8fc4c2533fc7a15dfa
 iuc parents: 
6diff
changeset | 919 self._fix_record_gt_fields(record) | 
| 2 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 920 o.write(str(record)) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 921 try: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 922 os.remove(f) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 923 except Exception: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 924 pass | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 925 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 926 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 927 def varscan_call(ref_genome, normal, tumor, output_path, **args): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 928 """Preparse arguments and orchestrate calling and postprocessing.""" | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 929 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 930 if args.pop('split_output'): | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 931 if '%T' in output_path: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 932 out = ( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 933 output_path.replace('%T', 'snp'), | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 934 output_path.replace('%T', 'indel') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 935 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 936 else: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 937 out = ( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 938 output_path + '.snp', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 939 output_path + '.indel' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 940 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 941 else: | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 942 out = (output_path, None) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 943 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 944 instance_args = { | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 945 k: args.pop(k) for k in [ | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 946 'max_depth', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 947 'min_mapqual', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 948 'min_basequal', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 949 'threads', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 950 'verbose', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 951 'quiet' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 952 ] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 953 } | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 954 varscan_somatic_args = { | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 955 k: args.pop(k) for k in [ | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 956 'normal_purity', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 957 'tumor_purity', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 958 'min_coverage', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 959 'min_var_count', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 960 'min_var_freq', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 961 'min_hom_freq', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 962 'somatic_p_value', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 963 'p_value' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 964 ] | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 965 } | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 966 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 967 v = VarScanCaller(ref_genome, [normal, tumor], **instance_args) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 968 v.varcall_parallel(**varscan_somatic_args) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 969 v.merge_and_postprocess(*out, **args) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 970 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 971 | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 972 if __name__ == '__main__': | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 973 p = argparse.ArgumentParser() | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 974 p.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 975 'ref_genome', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 976 metavar='reference_genome', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 977 help='the reference genome (in fasta format)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 978 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 979 p.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 980 '--normal', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 981 metavar='BAM_file', required=True, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 982 help='the BAM input file of aligned reads from the normal sample' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 983 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 984 p.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 985 '--tumor', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 986 metavar='BAM_file', required=True, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 987 help='the BAM input file of aligned reads from the tumor sample' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 988 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 989 p.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 990 '-o', '--ofile', required=True, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 991 metavar='OFILE', dest='output_path', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 992 help='Name of the variant output file. With --split-output, the name ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 993 'may use the %%T replacement token or will be used as the ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 994 'basename for the two output files to be generated (see ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 995 '-s|--split-output below).' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 996 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 997 p.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 998 '-s', '--split-output', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 999 dest='split_output', action='store_true', default=False, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1000 help='indicate that separate output files for SNPs and indels ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1001 'should be generated (original VarScan behavior). If specified, ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1002 '%%T in the --ofile file name will be replaced with "snp" and ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1003 '"indel" to generate the names of the SNP and indel output ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1004 'files, respectively. If %%T is not found in the file name, it ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1005 'will get interpreted as a basename to which ".snp"/".indel" ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1006 'will be appended.' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1007 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1008 p.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1009 '-t', '--threads', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1010 type=int, default=1, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1011 help='level of parallelism' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1012 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1013 p.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1014 '-v', '--verbose', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1015 action='store_true', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1016 help='be verbose about progress' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1017 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1018 p.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1019 '-q', '--quiet', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1020 action='store_true', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1021 help='suppress output from wrapped tools' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1022 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1023 call_group = p.add_argument_group('Variant calling parameters') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1024 call_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1025 '--normal-purity', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1026 dest='normal_purity', type=float, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1027 default=1.0, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1028 help='Estimated purity of the normal sample (default: 1.0)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1029 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1030 call_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1031 '--tumor-purity', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1032 dest='tumor_purity', type=float, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1033 default=1.0, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1034 help='Estimated purity of the tumor sample (default: 1.0)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1035 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1036 call_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1037 '--max-pileup-depth', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1038 dest='max_depth', type=int, default=8000, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1039 help='Maximum depth of generated pileups (samtools mpileup -d option; ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1040 'default: 8000)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1041 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1042 call_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1043 '--min-basequal', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1044 dest='min_basequal', type=int, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1045 default=13, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1046 help='Minimum base quality at the variant position to use a read ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1047 '(default: 13)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1048 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1049 call_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1050 '--min-mapqual', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1051 dest='min_mapqual', type=int, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1052 default=0, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1053 help='Minimum mapping quality required to use a read ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1054 '(default: 0)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1055 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1056 call_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1057 '--min-coverage', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1058 dest='min_coverage', type=int, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1059 default=8, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1060 help='Minimum site coverage required in the normal and in the tumor ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1061 'sample to call a variant (default: 8)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1062 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1063 call_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1064 '--min-var-count', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1065 dest='min_var_count', type=int, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1066 default=2, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1067 help='Minimum number of variant-supporting reads required to call a ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1068 'variant (default: 2)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1069 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1070 call_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1071 '--min-var-freq', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1072 dest='min_var_freq', type=float, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1073 default=0.1, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1074 help='Minimum variant allele frequency for calling (default: 0.1)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1075 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1076 call_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1077 '--min-hom-freq', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1078 dest='min_hom_freq', type=float, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1079 default=0.75, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1080 help='Minimum variant allele frequency for homozygous call ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1081 '(default: 0.75)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1082 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1083 call_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1084 '--p-value', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1085 dest='p_value', type=float, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1086 default=0.99, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1087 help='P-value threshold for heterozygous call (default: 0.99)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1088 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1089 call_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1090 '--somatic-p-value', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1091 dest='somatic_p_value', type=float, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1092 default=0.05, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1093 help='P-value threshold for somatic call (default: 0.05)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1094 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1095 filter_group = p.add_argument_group('Posterior variant filter parameters') | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1096 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1097 '--no-filters', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1098 dest='no_filters', action='store_true', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1099 help='Disable all posterior variant filters. ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1100 'If specified, all following options will be ignored' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1101 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1102 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1103 '--min-var-count2', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1104 dest='min_var_count2', type=int, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1105 default=4, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1106 help='Minimum number of variant-supporting reads (default: 4)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1107 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1108 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1109 '--min-var-count2-lc', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1110 dest='min_var_count2_lc', type=int, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1111 default=2, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1112 help='Minimum number of variant-supporting reads when depth below ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1113 '--somatic-p-depth (default: 2)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1114 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1115 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1116 '--min-var-freq2', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1117 dest='min_var_freq2', type=float, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1118 default=0.05, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1119 help='Minimum variant allele frequency (default: 0.05)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1120 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1121 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1122 '--max-somatic-p', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1123 dest='max_somatic_p', type=float, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1124 default=0.05, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1125 help='Maximum somatic p-value (default: 0.05)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1126 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1127 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1128 '--max-somatic-p-depth', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1129 dest='max_somatic_p_depth', type=int, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1130 default=10, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1131 help='Depth required to run --max-somatic-p filter (default: 10)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1132 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1133 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1134 '--min-ref-readpos', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1135 dest='min_ref_readpos', type=float, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1136 default=0.1, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1137 help='Minimum average relative distance of site from the ends of ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1138 'ref-supporting reads (default: 0.1)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1139 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1140 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1141 '--min-var-readpos', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1142 dest='min_var_readpos', type=float, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1143 default=0.1, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1144 help='Minimum average relative distance of site from the ends of ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1145 'variant-supporting reads (default: 0.1)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1146 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1147 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1148 '--min-ref-dist3', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1149 dest='min_ref_dist3', type=float, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1150 default=0.1, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1151 help='Minimum average relative distance of site from the effective ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1152 '3\'end of ref-supporting reads (default: 0.1)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1153 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1154 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1155 '--min-var-dist3', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1156 dest='min_var_dist3', type=float, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1157 default=0.1, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1158 help='Minimum average relative distance of site from the effective ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1159 '3\'end of variant-supporting reads (default: 0.1)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1160 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1161 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1162 '--min-ref-len', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1163 dest='min_ref_len', type=int, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1164 default=90, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1165 help='Minimum average trimmed length of reads supporting the ref ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1166 'allele (default: 90)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1167 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1168 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1169 '--min-var-len', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1170 dest='min_var_len', type=int, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1171 default=90, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1172 help='Minimum average trimmed length of reads supporting the variant ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1173 'allele (default: 90)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1174 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1175 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1176 '--max-len-diff', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1177 dest='max_relative_len_diff', type=float, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1178 default=0.25, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1179 help='Maximum average relative read length difference (ref - var; ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1180 'default: 0.25)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1181 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1182 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1183 '--min-strandedness', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1184 dest='min_strandedness', type=float, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1185 default=0.01, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1186 help='Minimum fraction of variant reads from each strand ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1187 '(default: 0.01)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1188 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1189 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1190 '--min-strand-reads', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1191 dest='min_strand_reads', type=int, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1192 default=5, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1193 help='Minimum allele depth required to run --min-strandedness filter ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1194 '(default: 5)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1195 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1196 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1197 '--min-ref-basequal', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1198 dest='min_ref_basequal', type=int, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1199 default=15, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1200 help='Minimum average base quality for the ref allele (default: 15)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1201 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1202 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1203 '--min-var-basequal', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1204 dest='min_var_basequal', type=int, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1205 default=15, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1206 help='Minimum average base quality for the variant allele ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1207 '(default: 15)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1208 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1209 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1210 '--max-basequal-diff', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1211 dest='max_basequal_diff', type=int, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1212 default=50, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1213 help='Maximum average base quality diff (ref - var; default: 50)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1214 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1215 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1216 '--min-ref-mapqual', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1217 dest='min_ref_mapqual', type=int, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1218 default=15, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1219 help='Minimum average mapping quality of reads supporting the ref ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1220 'allele (default: 15)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1221 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1222 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1223 '--min-var-mapqual', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1224 dest='min_var_mapqual', type=int, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1225 default=15, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1226 help='Minimum average mapping quality of reads supporting the variant ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1227 'allele (default: 15)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1228 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1229 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1230 '--max-mapqual-diff', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1231 dest='max_mapqual_diff', type=int, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1232 default=50, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1233 help='Maximum average mapping quality difference (ref - var; ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1234 'default: 50)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1235 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1236 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1237 '--max-ref-mmqs', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1238 dest='max_ref_mmqs', type=int, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1239 default=100, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1240 help='Maximum mismatch quality sum of reads supporting the ref ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1241 'allele (default: 100)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1242 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1243 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1244 '--max-var-mmqs', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1245 dest='max_var_mmqs', type=int, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1246 default=100, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1247 help='Maximum mismatch quality sum of reads supporting the variant ' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1248 'allele (default: 100)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1249 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1250 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1251 '--min-mmqs-diff', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1252 dest='min_mmqs_diff', type=int, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1253 default=0, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1254 help='Minimum mismatch quality sum difference (var - ref; default: 0)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1255 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1256 filter_group.add_argument( | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1257 '--max-mmqs-diff', | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1258 dest='max_mmqs_diff', type=int, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1259 default=50, | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1260 help='Maximum mismatch quality sum difference (var - ref; default: 50)' | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1261 ) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1262 args = vars(p.parse_args()) | 
| 
4ce3441c407c
planemo upload for repository https://github.com/galaxyproject/iuc/tree/master/tools/varscan commit 30867f1f022bed18ba1c3b8dc9c54226890b3a9c
 iuc parents: diff
changeset | 1263 varscan_call(**args) | 
