0
|
1 <tool id="snpSift_filter" name="SnpSift Filter" version="3.1">
|
|
2 <options sanitize="False" />
|
|
3 <description>Filter variants using arbitrary expressions</description>
|
|
4 <!--
|
|
5 You will need to change the path to wherever your installation is.
|
|
6 You can change the amount of memory used, just change the -Xmx parameter (e.g. use -Xmx2G for 2Gb of memory)
|
|
7 java -Xmx6G -jar $JAVA_JAR_PATH/SnpSift.jar filter -f $input -e $exprFile > $output
|
|
8 -->
|
|
9 <requirements>
|
|
10 <requirement type="package" version="3.1">snpEff</requirement>
|
|
11 </requirements>
|
|
12 <command>
|
|
13 java -Xmx6G -jar \$JAVA_JAR_PATH/SnpSift.jar filter -f $input -e $exprFile > $output
|
|
14 </command>
|
|
15 <inputs>
|
|
16 <param format="vcf" name="input" type="data" label="VCF input"/>
|
|
17 <param name="expr" type="text" label="Expression" size="50"/>
|
|
18 </inputs>
|
|
19 <configfiles>
|
|
20 <configfile name="exprFile">
|
|
21 $expr
|
|
22 </configfile>
|
|
23 </configfiles>
|
|
24
|
|
25 <outputs>
|
|
26 <data format="vcf" name="output" />
|
|
27 </outputs>
|
|
28 <stdio>
|
|
29 <exit_code range=":-1" level="fatal" description="Error: Cannot open file" />
|
|
30 <exit_code range="1:" level="fatal" description="Error" />
|
|
31 </stdio>
|
|
32 <help>
|
|
33
|
1
|
34 **SnpSift filter**
|
|
35
|
|
36 You can filter ia vcf file using arbitrary expressions, for instance "(QUAL > 30) | (exists INDEL) | ( countHet() > 2 )". The actual expressions can be quite complex, so it allows for a lot of flexibility.
|
|
37
|
|
38 Some examples:
|
|
39
|
|
40 - *I want to filter out samples with quality less than 30*:
|
|
41
|
|
42 * **( QUAL > 30 )**
|
|
43
|
|
44 - *...but we also want InDels that have quality 20 or more*:
|
|
45
|
|
46 * **(( exists INDEL ) & (QUAL >= 20)) | (QUAL >= 30 )**
|
0
|
47
|
1
|
48 - *...or any homozygous variant present in more than 3 samples*:
|
|
49
|
|
50 * **(countHom() > 3) | (( exists INDEL ) & (QUAL >= 20)) | (QUAL >= 30 )**
|
|
51
|
|
52 - *...or any heterozygous sample with coverage 25 or more*:
|
|
53
|
|
54 * **((countHet() > 0) && (DP >= 25)) | (countHom() > 3) | (( exists INDEL ) & (QUAL >= 20)) | (QUAL >= 30 )**
|
|
55
|
|
56 - *I want to keep samples where the genotype for the first sample is homozygous variant and the genotype for the second sample is reference*:
|
|
57
|
|
58 * **isHom( GEN[0] ) & isVariant( GEN[0] ) & isRef( GEN[1] )**
|
|
59
|
|
60
|
|
61 For complete details about this tool and epressions that can be used, please go to http://snpeff.sourceforge.net/SnpSift.html#filter
|
0
|
62
|
|
63 </help>
|
|
64 </tool>
|