changeset 0:b145b9b26648

Uploaded tool tarball.
author devteam
date Wed, 25 Sep 2013 11:02:21 -0400
parents
children 57adb07cccfc
files fastq_quality_filter.xml test-data/fastq_qual_filter1.fastq test-data/fastq_qual_filter1a.out test-data/fastq_qual_filter1b.out tool_dependencies.xml
diffstat 5 files changed, 153 insertions(+), 0 deletions(-) [+]
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>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/fastq_qual_filter1.fastq	Wed Sep 25 11:02:21 2013 -0400
@@ -0,0 +1,36 @@
+@CSHL_3_FC042AGLLWW:1:2:7:203
+GTACGCATGACCGAACCCCCCNCCCCCCAATTGGTT
++CSHL_3_FC042AGLLWW:1:2:7:203
+aab^V^aU]`aa^aZaaaaaaaaabaaaaaaaa]]`
+@CSHL_3_FC042AGLLWW:1:2:7:33
+CAATGCCTCCAATTGGTTAATCCCCCTATATATACT
++CSHL_3_FC042AGLLWW:1:2:7:33
+aaaaaaaaaW^U_XaWaa\WMEP^KEZXRPEEEGaa
+@CSHL_3_FC042AGLLWW:1:2:7:169
+GCAGCAGGCGCGTCAGAGAGCCCCCCCCCCCCCCCC
++CSHL_3_FC042AGLLWW:1:2:7:169
+a_M^a\Uaaa_M_aaaZZZZZZUZUZaaV\ZUGUUR
+@CSHL_3_FC042AGLLWW:1:2:7:1436
+AATTATTTATTAAATTTTAATAATATGGGAGACACT
++CSHL_3_FC042AGLLWW:1:2:7:1436
+a^aaaaaaaaaaaaaaa_U`aaaaa_S_aaaaaVV[
+@CSHL_3_FC042AGLLWW:1:2:7:292
+GGAGAAATACACACAATTGGTTAATCCCCCTATATA
++CSHL_3_FC042AGLLWW:1:2:7:292
+babaaaaaaaUMaaaaaaaaaaa\XEUUEP_]UERE
+@CSHL_3_FC042AGLLWW:1:2:7:1819
+AATTCAAACCACCCCAACCCACACACAGAGATACAA
++CSHL_3_FC042AGLLWW:1:2:7:1819
+a\\QVVVLaaLOEXUWUUEKUULEMUEUUKULIQMU
+@CSHL_3_FC042AGLLWW:1:2:7:1875
+GCAAAAGAGTAGTGTACCCCCCCCCCCCCCCCCCCC
++CSHL_3_FC042AGLLWW:1:2:7:1875
+aaaaaaaaaXUXXEXaaaaa`_ZaaaaaaaaaXEXU
+@CSHL_3_FC042AGLLWW:1:2:8:624
+ACTGCAATTGGTTAATCCCCCTATATAGCGCTGTGG
++CSHL_3_FC042AGLLWW:1:2:8:624
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+@CSHL_3_FC042AGLLWW:1:2:8:250
+TGCCGCGCACACTGATGCAATTGGTTAATCCCCCTA
++CSHL_3_FC042AGLLWW:1:2:8:250
+aaaaaaaa^aaaaaabbb[KXPEU[RXZ^JUKRKXE
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/fastq_qual_filter1a.out	Wed Sep 25 11:02:21 2013 -0400
@@ -0,0 +1,4 @@
+@CSHL_3_FC042AGLLWW:1:2:8:624
+ACTGCAATTGGTTAATCCCCCTATATAGCGCTGTGG
++CSHL_3_FC042AGLLWW:1:2:8:624
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/fastq_qual_filter1b.out	Wed Sep 25 11:02:21 2013 -0400
@@ -0,0 +1,24 @@
+@CSHL_3_FC042AGLLWW:1:2:7:203
+GTACGCATGACCGAACCCCCCNCCCCCCAATTGGTT
++CSHL_3_FC042AGLLWW:1:2:7:203
+aab^V^aU]`aa^aZaaaaaaaaabaaaaaaaa]]`
+@CSHL_3_FC042AGLLWW:1:2:7:169
+GCAGCAGGCGCGTCAGAGAGCCCCCCCCCCCCCCCC
++CSHL_3_FC042AGLLWW:1:2:7:169
+a_M^a\Uaaa_M_aaaZZZZZZUZUZaaV\ZUGUUR
+@CSHL_3_FC042AGLLWW:1:2:7:1436
+AATTATTTATTAAATTTTAATAATATGGGAGACACT
++CSHL_3_FC042AGLLWW:1:2:7:1436
+a^aaaaaaaaaaaaaaa_U`aaaaa_S_aaaaaVV[
+@CSHL_3_FC042AGLLWW:1:2:7:292
+GGAGAAATACACACAATTGGTTAATCCCCCTATATA
++CSHL_3_FC042AGLLWW:1:2:7:292
+babaaaaaaaUMaaaaaaaaaaa\XEUUEP_]UERE
+@CSHL_3_FC042AGLLWW:1:2:7:1875
+GCAAAAGAGTAGTGTACCCCCCCCCCCCCCCCCCCC
++CSHL_3_FC042AGLLWW:1:2:7:1875
+aaaaaaaaaXUXXEXaaaaa`_ZaaaaaaaaaXEXU
+@CSHL_3_FC042AGLLWW:1:2:8:624
+ACTGCAATTGGTTAATCCCCCTATATAGCGCTGTGG
++CSHL_3_FC042AGLLWW:1:2:8:624
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tool_dependencies.xml	Wed Sep 25 11:02:21 2013 -0400
@@ -0,0 +1,6 @@
+<?xml version="1.0"?>
+<tool_dependency>
+    <package name="fastx_toolkit" version="0.0.13">
+        <repository changeset_revision="ec66ae4c269b" name="package_fastx_toolkit_0_0_13" owner="devteam" toolshed="http://toolshed.g2.bx.psu.edu" />
+    </package>
+</tool_dependency>