Mercurial > repos > nick > sequence_content_trimmer
annotate trimmer.xml @ 2:a8fd651dcbd9 draft
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
| author | nick |
|---|---|
| date | Fri, 27 May 2022 22:46:30 +0000 |
| parents | 7ef568cbf13b |
| children | d8b86dc67f84 |
| rev | line source |
|---|---|
|
1
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
1 <?xml version="1.0"?> |
|
2
a8fd651dcbd9
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
1
diff
changeset
|
2 <tool id="sequence_content_trimmer" version="0.2.2" name="Sequence Content Trimmer"> |
|
0
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
3 <description>trim reads based on certain bases</description> |
|
1
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
4 <command detect_errors="exit_code"><![CDATA[ |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
5 #if $paired.is_paired and (('fasta' in $input1.extension and 'fastq' in $input2.extension) or \ |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
6 ('fastq' in $input1.extension and 'fasta' in $input2.extension)) |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
7 echo 'Both input files must be either fastq or fasta (no mixing the two).' >&2 |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
8 #else |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
9 trimmer.py $input1 |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
10 #if $paired.is_paired: |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
11 $input2 $output1 $output2 |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
12 #end if |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
13 #if $input1.extension in ('fastq', 'fastqsanger', 'fastqillumina', 'fastqsolexa') |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
14 -f fastq |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
15 #elif $input1.extension == 'fasta' |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
16 -f fasta |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
17 #else |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
18 -f $input1.extension |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
19 #end if |
|
2
a8fd651dcbd9
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
1
diff
changeset
|
20 -b '$bases' -t $thres -w $win_len $invert |
|
1
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
21 #if $min_len.has_min_len: |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
22 -m $min_len.value |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
23 #end if |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
24 #if not $paired.is_paired: |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
25 > $output1 |
|
0
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
26 #end if |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
27 #end if |
|
1
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
28 ]]> |
|
0
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
29 </command> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
30 <inputs> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
31 <conditional name="paired"> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
32 <param name="is_paired" type="select" label="Paired reads?"> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
33 <option value="" selected="True">Unpaired</option> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
34 <option value="true">Paired</option> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
35 </param> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
36 <when value="true"> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
37 <param name="input1" type="data" format="fasta,fastq" label="Input reads (mate 1)"/> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
38 <param name="input2" type="data" format="fasta,fastq" label="Input reads (mate 2)"/> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
39 </when> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
40 <when value=""> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
41 <param name="input1" type="data" format="fasta,fastq" label="Input reads"/> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
42 </when> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
43 </conditional> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
44 <param name="bases" type="text" value="N" label="Bases to filter on"/> |
|
1
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
45 <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."/> |
|
0
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
46 <param name="win_len" type="integer" value="10" min="1" label="Size of the window"/> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
47 <param name="invert" type="boolean" truevalue="--invert" falsevalue="" checked="False" label="Invert filter bases" help="Trim when the frequency of bases NOT in the "filter bases" list exceeds the threshold."/> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
48 <conditional name="min_len"> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
49 <param name="has_min_len" type="boolean" truevalue="true" falsevalue="" checked="False" label="Set a minimum read length"/> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
50 <when value="true"> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
51 <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."/> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
52 </when> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
53 </conditional> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
54 </inputs> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
55 <outputs> |
|
1
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
56 <data name="output1" format_source="input1" label="$tool.name on $on_string"/> |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
57 <data name="output2" format_source="input2" label="$tool.name on $on_string (mate 2)"> |
|
0
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
58 <filter>paired['is_paired']</filter> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
59 </data> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
60 </outputs> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
61 |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
62 <help> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
63 |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
64 .. class:: infomark |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
65 |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
66 **What it does** |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
67 |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
68 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. |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
69 |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
70 |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
71 .. class:: infomark |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
72 |
|
1
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
73 **How it works** |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
74 |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
75 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, in which case it will trim once non-filter bases exceed the threshold). |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
76 |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
77 The trim point will be just before the first (leftmost) filter base in the final window (the one where the frequency exceeded the threshold). |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
78 |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
79 |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
80 .. class:: infomark |
|
7ef568cbf13b
"planemo upload commit 9a5d91c35d21411a0733cd233ca588ff358aabd8-dirty"
nick
parents:
0
diff
changeset
|
81 |
|
0
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
82 **Input** |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
83 |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
84 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). |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
85 |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
86 </help> |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
87 |
|
c824894e0827
planemo upload commit bb6c51fa3c8501e779f3b266d17f4900d98fc431-dirty
nick
parents:
diff
changeset
|
88 </tool> |
