annotate scythe/scythe.xml @ 0:8161274941bf draft

Uploaded
author nikhil-joshi
date Thu, 21 Jun 2012 20:54:58 -0400
parents
children 8e5357ca8ebd
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
1 <tool id="scythe" name="Scythe">
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
2 <description>Trimming adapters/contaminants using a Naive Bayesian classifier</description>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
3
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
4 <command>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
5 scythe --quiet -a $adapter_file -q $qual_type
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
6
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
7 #if str($add_tag) == "add_tag_true":
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
8 -t
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
9 #end if
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
10
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
11 #if str($prior) != "":
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
12 -p $prior
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
13 #end if
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
14
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
15 #if str($min_match) != "":
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
16 -n $min_match
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
17 #end if
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
18
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
19 #if str($matches_file) == "matches_file_true":
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
20 -m $output_matches
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
21 #end if
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
22
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
23 -o $output_trimmed $input_fastq 2> /dev/null
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
24 </command>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
25
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
26 <inputs>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
27 <param format="fastq, fastqsanger" name="input_fastq" type="data" optional="false" label="FastQ Reads"/>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
28
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
29 <param format="fasta" name="adapter_file" type="data" optional="false" label="Adapter/Contaminant file (in fasta format)"/>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
30
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
31 <param name="qual_type" type="select" optional="false" label="Quality type">
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
32 <option value="illumina" selected="true">Illumina</option>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
33 <option value="solexa">Solexa</option>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
34 <option value="sanger">Sanger</option>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
35 </param>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
36
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
37 <param name="add_tag" type="boolean" checked="false" truevalue="add_tag_true" falsevalue="add_tag_false" label="Add a tag to the header indicating that Scythe cut a sequence?"/>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
38
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
39 <param name="matches_file" type="boolean" checked="false" truevalue="matches_file_true" falsevalue="matches_file_false" label="Also output another file with details about adapter/contaminant matches?"/>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
40
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
41 <param name="prior" value="0.05" type="float" optional="true" label="Prior" help="The prior contamination rate">
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
42 <validator type="in_range" min="0" message="Minimum value is 0"/>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
43 </param>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
44
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
45 <param name="min_match" value="0" type="integer" optional="true" label="Smallest length adapter/contaminant to consider">
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
46 <validator type="in_range" min="0" message="Minimum value is 0"/>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
47 </param>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
48 </inputs>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
49
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
50 <outputs>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
51 <data format_source="input_fastq" name="output_trimmed" label="Adapter/Contaminant Trimmed FastQ using ${tool.name} on ${on_string}"/>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
52
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
53 <data format="txt" name="output_matches" label="Matches of Adapters/Contaminants using ${tool.name} on ${on_string}">
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
54 <filter>(matches_file == True)</filter>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
55 </data>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
56 </outputs>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
57
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
58 <help>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
59 Scythe uses a Naive Bayesian approach to classify contaminant substrings in sequence reads. It considers quality information, which can make it robust in picking out 3'-end adapters, which often include poor quality bases.
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
60
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
61 Most next generation sequencing reads have deteriorating quality towards the 3'-end. It's common for a quality-based trimmer to be employed before mapping, assemblies, and analysis to remove these poor quality bases. However, quality-based trimming could remove bases that are helpful in identifying (and removing) 3'-end adapter contaminants. Thus, it is recommended you run Scythe before quality-based trimming, as part of a read quality control pipeline.
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
62
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
63 The Bayesian approach Scythe uses compares two likelihood models: the probability of seeing the matches in a sequence given contamination, and not given contamination. Given that the read is contaminated, the probability of seeing a certain number of matches and mistmatches is a function of the quality of the sequence. Given the read is not contaminated (and is thus assumed to be random sequence), the probability of seeing a certain number of matches and mismatches is chance. The posterior is calculated across both these likelihood models, and the class (contaminated or not contaminated) with the maximum posterior probability is the class selected.
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
64 </help>
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
65
8161274941bf Uploaded
nikhil-joshi
parents:
diff changeset
66 </tool>