view vcffilter.xml @ 1:e5dd21db760b draft

Uploaded
author anton
date Mon, 12 May 2014 15:53:18 -0400
parents c56b2e440fce
children 77e44d465705
line wrap: on
line source

<tool id="vcffilter" name="VCFfilter:" version="0.0.1">
<requirements>
    <requirement type="package" version="586c5ae5d57a38dae6b32ea831fb1f7cfa14c9bd">vcflib</requirement>
</requirements>
  <description>filter VCF data in a variety of attributes</description>
  <command>
  <!-- This tools depends on tabix functionality, which is currently distributed with Galaxy itself via a pysam egg -->
    ln -s "${input1}" input1.vcf.gz &amp;&amp;
    ln -s "${Tabixized_input}" input1.vcf.gz.tbi &amp;&amp;
    vcffilter ${filterList} input1.vcf.gz  > "${out_file1}"
  </command>
  
  <inputs>
    <param name="filterList" size="40" type="text" value="-f &quot;DP &gt; 10&quot;" label="Specify filterting expression" help="See explanation of filtering options below">
      <sanitizer>
        <valid initial="string.printable">
	  <remove value="&apos;"/>
        </valid>
        <mapping initial="none">
          <add source="&apos;" target="__sq__"/>
        </mapping>
      </sanitizer>
    </param>
    <param format="vcf_bgzip" name="input1" type="data" label="From">
      <conversion name="Tabixized_input" type="tabix" />
    </param>
  </inputs>
  <outputs>
    <data format="vcf" name="out_file1" />
  </outputs>
 <tests>
    <test>
      <param name="filterList" value="-f &quot;DP &gt; 10&quot;"/>
      <param name="input1" value="vcflib.vcf"/>
      <output name="out_file1" file="vcffilter-test1.vcf"/>
    </test>
</tests> 
 <help>

VCFfilter is a part of VCFlib toolkit developed by Erik Garrison (https://github.com/ekg/vcflib).

You can specify the following option the **Specify filtering expression** box in any combination::

    -f, --info-filter     specifies a filter to apply to the info fields of records, removes alleles which do not pass the filter
    -g, --genotype-filter specifies a filter to apply to the genotype fields of records
    -s, --filter-sites    filter entire records, not just alleles
    -t, --tag-pass        tag vcf records as positively filtered with this tag, print all records
    -F, --tag-fail        tag vcf records as negatively filtered with this tag, print all records
    -A, --append-filter   append the existing filter tag, don't just replace it
    -a, --allele-tag      apply -t on a per-allele basis.  adds or sets the corresponding INFO field tag
    -v, --invert          inverts the filter, e.g. grep -v
    -o, --or              use logical OR instead of AND to combine filters

Filters are specified in the form {ID}  {operator} {value}::

 -f "DP > 10"  # for info fields
 -g "GT = 1|1" # for genotype fields
 -f "CpG"  # for 'flag' fields

Operators can be any of: =, !, &lt;, &gt;, pipe, &amp;

Any number of filters may be specified.  They are combined via logical AND
unless --or is specified on the command line.

For convenience, you can specify "QUAL" to refer to the quality of the site, even
though it does not appear in the INFO fields.

</help>
</tool>