Mercurial > repos > iuc > snpsift
comparison snpSift_filter.xml @ 2:bf8c1526871b draft
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tool_collections/snpsift/snpsift commit d12355cea76843e3ed6f09d96c3e9fe22afe4a4f
author | iuc |
---|---|
date | Mon, 05 Dec 2016 12:11:18 -0500 |
parents | 98708b88af9f |
children | 20c7d583fec1 |
comparison
equal
deleted
inserted
replaced
1:98708b88af9f | 2:bf8c1526871b |
---|---|
1 <tool id="snpSift_filter" name="SnpSift Filter" version="@WRAPPER_VERSION@.0"> | 1 <tool id="snpSift_filter" name="SnpSift Filter" version="@WRAPPER_VERSION@.1"> |
2 <description>Filter variants using arbitrary expressions</description> | 2 <description>Filter variants using arbitrary expressions</description> |
3 <macros> | 3 <macros> |
4 <import>snpSift_macros.xml</import> | 4 <import>snpSift_macros.xml</import> |
5 </macros> | 5 </macros> |
6 <expand macro="requirements" /> | 6 <expand macro="requirements" /> |
7 <expand macro="stdio" /> | 7 <expand macro="stdio" /> |
8 <expand macro="version_command" /> | 8 <expand macro="version_command" /> |
9 | 9 |
10 <command><![CDATA[ | 10 <command><![CDATA[ |
11 java -Xmx6G -jar "\$SNPEFF_JAR_PATH/SnpSift.jar" filter -f "$input" -e "$exprFile" $inverse | 11 @CONDA_SNPSIFT_JAR_PATH@ && |
12 java -Xmx6G -jar "\$SNPSIFT_JAR_PATH/SnpSift.jar" filter -f "$input" -e "$exprFile" $inverse | |
12 #if $filtering.mode == 'field': | 13 #if $filtering.mode == 'field': |
13 #if $filtering.replace.pass: | 14 #if $filtering.replace.pass: |
14 --pass | 15 --pass |
15 #if $filtering.replace.filterId and len(str($filtering.replace.filterId).strip()) > 0: | 16 #if $filtering.replace.filterId and len(str($filtering.replace.filterId).strip()) > 0: |
16 --filterId "$filtering.replace.filterId" | 17 --filterId "$filtering.replace.filterId" |
27 ]]> | 28 ]]> |
28 </command> | 29 </command> |
29 <configfiles> | 30 <configfiles> |
30 <configfile name="exprFile"> | 31 <configfile name="exprFile"> |
31 $expr#slurp | 32 $expr#slurp |
32 </configfile> | 33 </configfile> |
33 </configfiles> | 34 </configfiles> |
34 <inputs> | 35 <inputs> |
35 <param format="vcf" name="input" type="data" label="Variant input file in VCF format"/> | 36 <param format="vcf" name="input" type="data" label="Variant input file in VCF format"/> |
36 <param name="expr" type="text" label="Filter criteria" help="Need help? See below a few examples." > | 37 <param name="expr" type="text" label="Filter criteria" help="Need help? See below a few examples." > |
37 <sanitizer sanitize="False"/> | 38 <sanitizer sanitize="False"/> |
39 <param name="inverse" type="boolean" truevalue="--inverse" falsevalue="" checked="false" label="Inverse filter" help="Show lines that do not match filter expression" /> | 40 <param name="inverse" type="boolean" truevalue="--inverse" falsevalue="" checked="false" label="Inverse filter" help="Show lines that do not match filter expression" /> |
40 <conditional name="filtering"> | 41 <conditional name="filtering"> |
41 <param name="mode" type="select" label="Filter mode"> | 42 <param name="mode" type="select" label="Filter mode"> |
42 <option value="entries" selected="true">Retain entries that pass filter, remove other entries</option> | 43 <option value="entries" selected="true">Retain entries that pass filter, remove other entries</option> |
43 <option value="field">Change the FILTER field, but retain all entries</option> | 44 <option value="field">Change the FILTER field, but retain all entries</option> |
44 </param> | 45 </param> |
45 <when value="entries"/> | 46 <when value="entries"/> |
46 <when value="field"> | 47 <when value="field"> |
47 <conditional name="replace"> | 48 <conditional name="replace"> |
48 <param name="pass" type="boolean" truevalue="yes" falsevalue="no" checked="false" label="Set matching entry FILTER to 'PASS'" | 49 <param name="pass" type="boolean" truevalue="yes" falsevalue="no" checked="false" label="Set matching entry FILTER to 'PASS'" |
49 help="appends an ID tag to non-matching entry FILTER "/> | 50 help="appends an ID tag to non-matching entry FILTER "/> |
50 <when value="no"/> | 51 <when value="no"/> |
51 <when value="yes"> | 52 <when value="yes"> |
52 <param name="filterId" type="text" value="" optional="true" label="ID appended to non-matching (##FILTER tag in header and FILTER VCF field)." | 53 <param name="filterId" type="text" value="" label="ID appended to non-matching (##FILTER tag in header and FILTER VCF field)." help="Default ID is 'SnpSift'"/> |
53 help="Default ID is 'SnpSift'"/> | |
54 </when> | 54 </when> |
55 </conditional> | 55 </conditional> |
56 <param name="addFilter" type="text" value="" optional="true" label="Add a string to FILTER VCF field if 'expression' is true." /> | 56 <param name="addFilter" type="text" value="" label="Add a string to FILTER VCF field if 'expression' is true." /> |
57 <param name="rmFilter" type="text" value="" optional="true" label="Remove a string from FILTER VCF field if 'expression' is true (and 'str' is in the field)." /> | 57 <param name="rmFilter" type="text" value="" label="Remove a string from FILTER VCF field if 'expression' is true (and 'str' is in the field)." /> |
58 </when> | 58 </when> |
59 </conditional> | 59 </conditional> |
60 </inputs> | 60 </inputs> |
61 | 61 |
62 <outputs> | 62 <outputs> |
131 | 131 |
132 - *Filter value is either 'PASS' or it is missing*: | 132 - *Filter value is either 'PASS' or it is missing*: |
133 | 133 |
134 :: | 134 :: |
135 | 135 |
136 (FILTER = 'PASS') | ( na FILTER ) | 136 (FILTER = 'PASS') | ( na FILTER ) |
137 | 137 |
138 - *I want to filter lines with an ANN annotation EFFECT of 'frameshift_variant' ( for vcf files using Sequence Ontology terms )*: | 138 - *I want to filter lines with an ANN annotation EFFECT of 'frameshift_variant' ( for vcf files using Sequence Ontology terms )*: |
139 | 139 |
140 :: | 140 :: |
141 | 141 |
142 ( ANN[*].EFFECT has 'frameshift_variant' ) | 142 ( ANN[*].EFFECT has 'frameshift_variant' ) |
143 | 143 |
144 **Important** According to the specification, there can be more than one EFFECT separated by & (e.g. 'missense_variant&splice_region_variant', thus using has operator is better than using equality operator (=). For instance 'missense_variant&splice_region_variant' = 'missense_variant' is false, whereas 'missense_variant&splice_region_variant' has 'missense_variant' is true. | 144 **Important** According to the specification, there can be more than one EFFECT separated by & (e.g. 'missense_variant&splice_region_variant', thus using has operator is better than using equality operator (=). For instance 'missense_variant&splice_region_variant' = 'missense_variant' is false, whereas 'missense_variant&splice_region_variant' has 'missense_variant' is true. |
145 | 145 |
146 - *I want to filter lines with an EFF of 'FRAME_SHIFT' ( for vcf files using Classic Effect names )*: | 146 - *I want to filter lines with an EFF of 'FRAME_SHIFT' ( for vcf files using Classic Effect names )*: |
147 | 147 |
148 :: | 148 :: |
149 | 149 |
150 ( EFF[*].EFFECT = 'FRAME_SHIFT' ) | 150 ( EFF[*].EFFECT = 'FRAME_SHIFT' ) |
151 | 151 |
152 - *I want to filter out samples with quality less than 30*: | 152 - *I want to filter out samples with quality less than 30*: |
153 | 153 |
154 :: | 154 :: |
158 - *...but we also want InDels that have quality 20 or more*: | 158 - *...but we also want InDels that have quality 20 or more*: |
159 | 159 |
160 :: | 160 :: |
161 | 161 |
162 (( exists INDEL ) & (QUAL >= 20)) | (QUAL >= 30 ) | 162 (( exists INDEL ) & (QUAL >= 20)) | (QUAL >= 30 ) |
163 | 163 |
164 - *...or any homozygous variant present in more than 3 samples*: | 164 - *...or any homozygous variant present in more than 3 samples*: |
165 | 165 |
166 :: | 166 :: |
167 | 167 |
168 (countHom() > 3) | (( exists INDEL ) & (QUAL >= 20)) | (QUAL >= 30 ) | 168 (countHom() > 3) | (( exists INDEL ) & (QUAL >= 20)) | (QUAL >= 30 ) |
169 | 169 |
170 - *...or any heterozygous sample with coverage 25 or more*: | 170 - *...or any heterozygous sample with coverage 25 or more*: |
171 | 171 |
172 :: | 172 :: |
173 | 173 |
174 ((countHet() > 0) & (DP >= 25)) | (countHom() > 3) | (( exists INDEL ) & (QUAL >= 20)) | (QUAL >= 30 ) | 174 ((countHet() > 0) & (DP >= 25)) | (countHom() > 3) | (( exists INDEL ) & (QUAL >= 20)) | (QUAL >= 30 ) |
175 | 175 |
176 - *I want to keep samples where the genotype for the first sample is homozygous variant and the genotype for the second sample is reference*: | 176 - *I want to keep samples where the genotype for the first sample is homozygous variant and the genotype for the second sample is reference*: |
177 | 177 |
178 :: | 178 :: |
179 | 179 |
180 (isHom( GEN[0] ) & isVariant( GEN[0] ) & isRef( GEN[1] )) | 180 (isHom( GEN[0] ) & isVariant( GEN[0] ) & isRef( GEN[1] )) |
181 | 181 |
182 | 182 |
183 **For information regarding HGVS and Sequence Ontology terms versus classic names**: | 183 **For information regarding HGVS and Sequence Ontology terms versus classic names**: |
184 | 184 |