annotate trimmer.xml @ 0:7f170cb06e2e draft

planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
author nick
date Tue, 01 Dec 2015 21:33:27 -0500
parents
children 464aee13e2df
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
1 <tool id="sequence_content_trimmer" version="0.1" name="Sequence Content Trimmer">
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
2 <description>trim reads based on certain bases</description>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
3 <command interpreter="python">
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
4 trimmer.py $input1
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
5 #if $paired.is_paired:
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
6 $input2 $output1 $output2
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
7 #if ('fasta' in $input1.extension and 'fastq' in $input2.extension) or ('fastq' in $input1.extension and 'fasta' in $input2.extension)
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
8 --error 'Both input files must be either fastq or fasta (no mixing the two).'
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
9 #end if
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
10 #end if
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
11 #if $input1.extension == 'fastq' or $input1.extension == 'fastqsanger' or $input1.extension == 'fastqillumina' or $input1.extension == 'fastqsolexa'
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
12 -f fastq
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
13 #elif $input1.extension == 'fasta'
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
14 -f fasta
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
15 #else
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
16 -f $input1.extension
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
17 #end if
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
18 -b $bases -t $thres -w $win_len $invert
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
19 #if $min_len.has_min_len:
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
20 -m $min_len.value
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
21 #end if
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
22 #if not $paired.is_paired:
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
23 &gt; $output1
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
24 #end if
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
25 </command>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
26 <inputs>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
27 <conditional name="paired">
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
28 <param name="is_paired" type="select" label="Paired reads?">
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
29 <option value="" selected="True">Unpaired</option>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
30 <option value="true">Paired</option>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
31 </param>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
32 <when value="true">
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
33 <param name="input1" type="data" format="fasta,fastq" label="Input reads (mate 1)"/>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
34 <param name="input2" type="data" format="fasta,fastq" label="Input reads (mate 2)"/>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
35 </when>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
36 <when value="">
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
37 <param name="input1" type="data" format="fasta,fastq" label="Input reads"/>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
38 </when>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
39 </conditional>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
40 <param name="bases" type="text" value="N" label="Bases to filter on"/>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
41 <param name="thres" type="float" value="0.5" min="0" max="1" label="Frequency threshold" help="Trim when the frequency of filter bases (or non-filter bases, if inverting) exceeds this value."/>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
42 <param name="win_len" type="integer" value="10" min="1" label="Size of the window"/>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
43 <param name="invert" type="boolean" truevalue="--invert" falsevalue="" checked="False" label="Invert filter bases" help="Trim when the frequency of bases NOT in the &quot;filter bases&quot; list exceeds the threshold."/>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
44 <conditional name="min_len">
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
45 <param name="has_min_len" type="boolean" truevalue="true" falsevalue="" checked="False" label="Set a minimum read length"/>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
46 <when value="true">
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
47 <param name="value" type="integer" value="10" min="0" label="Minimum read length" help="Reads trimmed to less than this length will be omitted from the output. Pairs will be preserved: both must exceed this threshold to be kept."/>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
48 </when>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
49 </conditional>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
50 </inputs>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
51 <outputs>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
52 <data name="output1" format_source="input1"/>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
53 <data name="output2" format_source="input2">
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
54 <filter>paired['is_paired']</filter>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
55 </data>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
56 </outputs>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
57
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
58 <help>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
59
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
60 .. class:: infomark
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
61
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
62 **What it does**
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
63
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
64 This tool trims the 3' ends of reads based on the presence of the given bases. For instance, trim when N's are encountered or when the GC content exceeds a certain frequency.
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
65
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
66
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
67 .. class:: infomark
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
68
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
69 **How it works**
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
70
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
71 This will slide along the read with a window, and trim once the frequency of filter bases exceeds the frequency threshold (unless "Invert filter bases" is enabled, when it will trim once non-filter bases exceed the threshold).
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
72
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
73 The trim point will be just before the first (leftmost) filter base in the final window (the one where the frequency exceeded the threshold).
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
74
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
75
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
76 .. class:: infomark
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
77
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
78 **Input**
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
79
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
80 The inputs can be in the following formats: fasta, fastq, fastqsanger, fastqillumina, and fastqsolexa. Both must be either a fasta or fastq type (no mixing fastq and fasta).
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
81
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
82 </help>
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
83
7f170cb06e2e planemo upload commit d76a1cf04f3e4bc735d320ccccbf7aecbc193395
nick
parents:
diff changeset
84 </tool>