diff fastq_quality_filter.xml @ 0:b145b9b26648

Uploaded tool tarball.
author devteam
date Wed, 25 Sep 2013 11:02:21 -0400
parents
children 57adb07cccfc
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/fastq_quality_filter.xml	Wed Sep 25 11:02:21 2013 -0400
@@ -0,0 +1,83 @@
+<tool id="cshl_fastq_quality_filter" version="1.0.0" name="Filter by quality">
+	<description></description>
+    <requirements>
+        <requirement type="package" version="0.0.13">fastx_toolkit</requirement>
+    </requirements>
+	<command>zcat -f '$input' | fastq_quality_filter -q $quality -p $percent -v -o $output
+#if $input.ext == "fastqsanger":
+-Q 33
+#end if
+	</command>
+
+	<inputs>
+		<param format="fastqsolexa,fastqsanger" version="1.0.0" name="input" type="data" label="Library to filter" />
+
+		<param version="1.0.0" name="quality" size="4" type="integer" value="20">
+			<label>Quality cut-off value</label>
+		</param>
+
+		<param version="1.0.0" name="percent" size="4" type="integer" value="90">
+			<label>Percent of bases in sequence that must have quality equal to / higher than cut-off value</label>
+		</param>
+	</inputs>
+
+	<tests>
+		<test>
+			<!-- Test1:  100% of bases with quality 33 or higher (pretty steep requirement...) -->
+			<param version="1.0.0" name="input" value="fastq_qual_filter1.fastq" ftype="fastqsolexa" />
+			<param version="1.0.0" name="quality" value="33"/>
+			<param version="1.0.0" name="percent" value="100"/>
+			<output version="1.0.0" name="output" file="fastq_qual_filter1a.out" />
+		</test>
+		<test>
+			<!-- Test2:  80% of bases with quality 20 or higher -->
+			<param version="1.0.0" name="input" value="fastq_qual_filter1.fastq" ftype="fastqsolexa"/>
+			<param version="1.0.0" name="quality" value="20"/>
+			<param version="1.0.0" name="percent" value="80"/>
+			<output version="1.0.0" name="output" file="fastq_qual_filter1b.out" />
+		</test>
+	</tests>
+
+	<outputs>
+		<data format="input" version="1.0.0" name="output" metadata_source="input" />
+	</outputs>
+
+	<help>
+**What it does**
+
+This tool filters reads based on quality scores.
+
+.. class:: infomark
+
+Using **percent = 100** requires all cycles of all reads to be at least the quality cut-off value.
+
+.. class:: infomark
+
+Using **percent = 50** requires the median quality of the cycles (in each read) to be at least the quality cut-off value.
+
+--------
+
+Quality score distribution (of all cycles) is calculated for each read. If it is lower than the quality cut-off value - the read is discarded.
+
+
+**Example**::
+
+    @CSHL_4_FC042AGOOII:1:2:214:584
+    GACAATAAAC
+    +CSHL_4_FC042AGOOII:1:2:214:584
+    30 30 30 30 30 30 30 30 20 10
+
+Using **percent = 50** and **cut-off = 30** - This read will not be discarded (the median quality is higher than 30).
+
+Using **percent = 90** and **cut-off = 30** - This read will be discarded (90% of the cycles do no have quality equal to / higher than 30).
+
+Using **percent = 100** and **cut-off = 20** - This read will be discarded (not all cycles have quality equal to / higher than 20).
+
+------
+
+This tool is based on `FASTX-toolkit`__ by Assaf Gordon.
+
+ .. __: http://hannonlab.cshl.edu/fastx_toolkit/	    
+	</help>
+<!-- FASTQ-Quality-Filter is part of the FASTX-toolkit, by A.Gordon (gordon@cshl.edu) -->
+</tool>