diff --git a/static/fastx_icons/barcode_splitter_output_example.png b/static/fastx_icons/barcode_splitter_output_example.png new file mode 100644 index 00000000000..49dfd6c4cdb Binary files /dev/null and b/static/fastx_icons/barcode_splitter_output_example.png differ diff --git a/static/fastx_icons/fasta_clipping_histogram_1.png b/static/fastx_icons/fasta_clipping_histogram_1.png new file mode 100644 index 00000000000..a9416f68d9d Binary files /dev/null and b/static/fastx_icons/fasta_clipping_histogram_1.png differ diff --git a/static/fastx_icons/fasta_clipping_histogram_2.png b/static/fastx_icons/fasta_clipping_histogram_2.png new file mode 100644 index 00000000000..471be686bc1 Binary files /dev/null and b/static/fastx_icons/fasta_clipping_histogram_2.png differ diff --git a/static/fastx_icons/fastq_nucleotides_distribution_1.png b/static/fastx_icons/fastq_nucleotides_distribution_1.png new file mode 100644 index 00000000000..f238587ad02 Binary files /dev/null and b/static/fastx_icons/fastq_nucleotides_distribution_1.png differ diff --git a/static/fastx_icons/fastq_nucleotides_distribution_2.png b/static/fastx_icons/fastq_nucleotides_distribution_2.png new file mode 100644 index 00000000000..e935576e64c Binary files /dev/null and b/static/fastx_icons/fastq_nucleotides_distribution_2.png differ diff --git a/static/fastx_icons/fastq_nucleotides_distribution_3.png b/static/fastx_icons/fastq_nucleotides_distribution_3.png new file mode 100644 index 00000000000..cae0c53a88c Binary files /dev/null and b/static/fastx_icons/fastq_nucleotides_distribution_3.png differ diff --git a/static/fastx_icons/fastq_nucleotides_distribution_4.png b/static/fastx_icons/fastq_nucleotides_distribution_4.png new file mode 100644 index 00000000000..7f8369e57f4 Binary files /dev/null and b/static/fastx_icons/fastq_nucleotides_distribution_4.png differ diff --git a/static/fastx_icons/fastq_quality_boxplot_1.png b/static/fastx_icons/fastq_quality_boxplot_1.png new file mode 100644 index 00000000000..c3621fabf6c Binary files /dev/null and b/static/fastx_icons/fastq_quality_boxplot_1.png differ diff --git a/static/fastx_icons/fastq_quality_boxplot_2.png b/static/fastx_icons/fastq_quality_boxplot_2.png new file mode 100644 index 00000000000..95af2c1a648 Binary files /dev/null and b/static/fastx_icons/fastq_quality_boxplot_2.png differ diff --git a/static/fastx_icons/fastq_quality_boxplot_3.png b/static/fastx_icons/fastq_quality_boxplot_3.png new file mode 100644 index 00000000000..6121c84edbe Binary files /dev/null and b/static/fastx_icons/fastq_quality_boxplot_3.png differ diff --git a/static/fastx_icons/fastx_clipper_example.png b/static/fastx_icons/fastx_clipper_example.png new file mode 100644 index 00000000000..8d4ff4cc21a Binary files /dev/null and b/static/fastx_icons/fastx_clipper_example.png differ diff --git a/static/fastx_icons/fastx_clipper_illustration.png b/static/fastx_icons/fastx_clipper_illustration.png new file mode 100644 index 00000000000..5acf892fac9 Binary files /dev/null and b/static/fastx_icons/fastx_clipper_illustration.png differ diff --git a/tool_conf.xml.sample b/tool_conf.xml.sample index a047871b85e..9a6851b13d3 100644 --- a/tool_conf.xml.sample +++ b/tool_conf.xml.sample @@ -288,6 +288,25 @@ +
+ + + + +
+ +
+ + + + + + + + + +
+
diff --git a/tools/fastx_toolkit/fasta_clipping_histogram.xml b/tools/fastx_toolkit/fasta_clipping_histogram.xml new file mode 100644 index 00000000000..a76de578f29 --- /dev/null +++ b/tools/fastx_toolkit/fasta_clipping_histogram.xml @@ -0,0 +1,38 @@ + + chart + fasta_clipping_histogram.pl $input $outfile + + + + + + + + + + +**What it does** + +This tool creates a histogram image of sequence lengths distribution in a given fasta data set file. + +**TIP:** Use this tool after clipping your library (with **FASTX Clipper tool**), to visualize the clipping results. + +----- + +**Output Examples** + + +In the following library, most sequences are 24-mers to 27-mers. +This could indicate an abundance of endo-siRNAs (depending of course of what you've tried to sequence in the first place). + +.. image:: ../static/fastx_icons/fasta_clipping_histogram_1.png + + +In the following library, most sequences are 19,22 or 23-mers. +This could indicate an abundance of miRNAs (depending of course of what you've tried to sequence in the first place). + +.. image:: ../static/fastx_icons/fasta_clipping_histogram_2.png + + + + diff --git a/tools/fastx_toolkit/fasta_collapser.xml b/tools/fastx_toolkit/fasta_collapser.xml new file mode 100644 index 00000000000..032f0656bb3 --- /dev/null +++ b/tools/fastx_toolkit/fasta_collapser.xml @@ -0,0 +1,75 @@ + + sequences + fasta_collapser.pl $input $output + + + + + + + + + + + + + + + + + +**What it does** + +This tool collapses identical sequences in a FASTA file into a single sequence. + +-------- + +**Example** + +Example Input File (Sequence "ATAT" appears multiple times):: + + >CSHL_2_FC0042AGLLOO_1_1_605_414 + TGCG + >CSHL_2_FC0042AGLLOO_1_1_537_759 + ATAT + >CSHL_2_FC0042AGLLOO_1_1_774_520 + TGGC + >CSHL_2_FC0042AGLLOO_1_1_742_502 + ATAT + >CSHL_2_FC0042AGLLOO_1_1_781_514 + TGAG + >CSHL_2_FC0042AGLLOO_1_1_757_487 + TTCA + >CSHL_2_FC0042AGLLOO_1_1_903_769 + ATAT + >CSHL_2_FC0042AGLLOO_1_1_724_499 + ATAT + +Example Output file:: + + >1-1 + TGCG + >2-4 + ATAT + >3-1 + TGGC + >4-1 + TGAG + >5-1 + TTCA + +.. class:: infomark + +Original Sequence Names / Lane descriptions (e.g. "CSHL_2_FC0042AGLLOO_1_1_742_502") are discarded. + +The output seqeunce name is composed of two numbers: the first is the sequence's number, the second is the multiplicity value. + +The following output:: + + >2-4 + ATAT + +means that the sequence "ATAT" is the second sequence in the file, and it appeared 4 times in the input FASTA file. + + + diff --git a/tools/fastx_toolkit/fastq_nucleotides_distribution.xml b/tools/fastx_toolkit/fastq_nucleotides_distribution.xml new file mode 100644 index 00000000000..bbae04eb47b --- /dev/null +++ b/tools/fastx_toolkit/fastq_nucleotides_distribution.xml @@ -0,0 +1,66 @@ + + chart + fastq_nucleotide_distribution_graph.sh -t '$input.name' -i $input -o $output + + + + + + + + + + +**What it does** + +Creates a stacked-histogram graph for the nucleotide distribution in the Solexa library. + +.. class:: infomark + +**TIP:** Use the **FASTQ Statistics** tool to generate the report file needed for this tool. + +----- + +**Output Examples** + + + +The following chart clearly shows the barcode used at the 5'-end of the library: **GATCT** + +.. image:: ../static/fastx_icons/fastq_nucleotides_distribution_1.png + + + + + + + +In the following chart, one can almost 'read' the most abundant sequence by looking at the dominant values: **TGATA TCGTA TTGAT GACTG AA...** + +.. image:: ../static/fastx_icons/fastq_nucleotides_distribution_2.png + + + + + + + + +The following chart shows a growing number of unknown (N) nucleotides towards later cycles (which might indicate a sequencing problem): + +.. image:: ../static/fastx_icons/fastq_nucleotides_distribution_3.png + + + + + + + + +But most of the time, the chart will look rather random: + +.. image:: ../static/fastx_icons/fastq_nucleotides_distribution_4.png + + + + diff --git a/tools/fastx_toolkit/fastq_qual_conv.xml b/tools/fastx_toolkit/fastq_qual_conv.xml new file mode 100644 index 00000000000..a19f32c9f04 --- /dev/null +++ b/tools/fastx_toolkit/fastq_qual_conv.xml @@ -0,0 +1,82 @@ + + (ASCII-Numeric) + zcat -f $input | fastq_quality_converter $QUAL_FORMAT -o $output + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +**What it does** + +Converts a solexa FASTQ file to/from numeric or ASCII quality format. + +.. class:: warningmark + +Re-scaling is **not** performed. (e.g. conversion from Phred scale to Solexa scale). + + +----- + +FASTQ with Numeric quality scores:: + + @CSHL__2_FC042AGWWWXX:8:1:120:202 + ACGATAGATCGGAAGAGCTAGTATGCCGTTTTCTGC + +CSHL__2_FC042AGWWWXX:8:1:120:202 + 40 40 40 40 20 40 40 40 40 6 40 40 28 40 40 25 40 20 40 -1 30 40 14 27 40 8 1 3 7 -1 11 10 -1 21 10 8 + @CSHL__2_FC042AGWWWXX:8:1:103:1185 + ATCACGATAGATCGGCAGAGCTCGTTTACCGTCTTC + +CSHL__2_FC042AGWWWXX:8:1:103:1185 + 40 40 40 40 40 35 33 31 40 40 40 32 30 22 40 -0 9 22 17 14 8 36 15 34 22 12 23 3 10 -0 8 2 4 25 30 2 + + +FASTQ with ASCII quality scores:: + + @CSHL__2_FC042AGWWWXX:8:1:120:202 + ACGATAGATCGGAAGAGCTAGTATGCCGTTTTCTGC + +CSHL__2_FC042AGWWWXX:8:1:120:202 + hhhhThhhhFhh\hhYhTh?^hN[hHACG?KJ?UJH + @CSHL__2_FC042AGWWWXX:8:1:103:1185 + ATCACGATAGATCGGCAGAGCTCGTTTACCGTCTTC + +CSHL__2_FC042AGWWWXX:8:1:103:1185 + hhhhhca_hhh`^Vh@IVQNHdObVLWCJ@HBDY^B + + + + + diff --git a/tools/fastx_toolkit/fastq_qual_stat.xml b/tools/fastx_toolkit/fastq_qual_stat.xml new file mode 100644 index 00000000000..c7a1de21477 --- /dev/null +++ b/tools/fastx_toolkit/fastq_qual_stat.xml @@ -0,0 +1,100 @@ + + + zcat -f $input | fastq_quality_stats -o $output + + + + + + + + + + + + + + + + + + +**What it does** + +Creates quality statistics report for the given Solexa/FASTQ library. + +.. class:: infomark + +**TIP:** This statistics report can be used as input for **Quality Score** and **Nucleotides Distribution** tools. + +----- + +**The output file will contain the following fields:** + +* column = column number (1 to 36 for a 36-cycles read solexa file) +* count = number of bases found in this column. +* min = Lowest quality score value found in this column. +* max = Highest quality score value found in this column. +* sum = Sum of quality score values for this column. +* mean = Mean quality score value for this column. +* Q1 = 1st quartile quality score. +* med = Median quality score. +* Q3 = 3rd quartile quality score. +* IQR = Inter-Quartile range (Q3-Q1). +* lW = 'Left-Whisker' value (for boxplotting). +* rW = 'Right-Whisker' value (for boxplotting). +* A_Count = Count of 'A' nucleotides found in this column. +* C_Count = Count of 'C' nucleotides found in this column. +* G_Count = Count of 'G' nucleotides found in this column. +* T_Count = Count of 'T' nucleotides found in this column. +* N_Count = Count of 'N' nucleotides found in this column. + + + + + + +**Output Example**:: + + column count min max sum mean Q1 med Q3 IQR lW rW A_Count C_Count G_Count T_Count N_Count + 1 6362991 -4 40 250734117 39.41 40 40 40 0 40 40 1396976 1329101 678730 2958184 0 + 2 6362991 -5 40 250531036 39.37 40 40 40 0 40 40 1786786 1055766 1738025 1782414 0 + 3 6362991 -5 40 248722469 39.09 40 40 40 0 40 40 2296384 984875 1443989 1637743 0 + 4 6362991 -5 40 247654797 38.92 40 40 40 0 40 40 1683197 1410855 1722633 1546306 0 + 5 6362991 -4 40 248214827 39.01 40 40 40 0 40 40 2536861 1167423 1248968 1409739 0 + 6 6362991 -5 40 248499903 39.05 40 40 40 0 40 40 1598956 1236081 1568608 1959346 0 + 7 6362991 -4 40 247719760 38.93 40 40 40 0 40 40 1692667 1822140 1496741 1351443 0 + 8 6362991 -5 40 245745205 38.62 40 40 40 0 40 40 2230936 1343260 1529928 1258867 0 + 9 6362991 -5 40 245766735 38.62 40 40 40 0 40 40 1702064 1306257 1336511 2018159 0 + 10 6362991 -5 40 245089706 38.52 40 40 40 0 40 40 1519917 1446370 1450995 1945709 0 + 11 6362991 -5 40 242641359 38.13 40 40 40 0 40 40 1717434 1282975 1387804 1974778 0 + 12 6362991 -5 40 242026113 38.04 40 40 40 0 40 40 1662872 1202041 1519721 1978357 0 + 13 6362991 -5 40 238704245 37.51 40 40 40 0 40 40 1549965 1271411 1973291 1566681 1643 + 14 6362991 -5 40 235622401 37.03 40 40 40 0 40 40 2101301 1141451 1603990 1515774 475 + 15 6362991 -5 40 230766669 36.27 40 40 40 0 40 40 2344003 1058571 1440466 1519865 86 + 16 6362991 -5 40 224466237 35.28 38 40 40 2 35 40 2203515 1026017 1474060 1651582 7817 + 17 6362991 -5 40 219990002 34.57 34 40 40 6 25 40 1522515 1125455 2159183 1555765 73 + 18 6362991 -5 40 214104778 33.65 30 40 40 10 15 40 1479795 2068113 1558400 1249337 7346 + 19 6362991 -5 40 212934712 33.46 30 40 40 10 15 40 1432749 1231352 1769799 1920093 8998 + 20 6362991 -5 40 212787944 33.44 29 40 40 11 13 40 1311657 1411663 2126316 1513282 73 + 21 6362991 -5 40 211369187 33.22 28 40 40 12 10 40 1887985 1846300 1300326 1318380 10000 + 22 6362991 -5 40 213371720 33.53 30 40 40 10 15 40 542299 3446249 516615 1848190 9638 + 23 6362991 -5 40 221975899 34.89 36 40 40 4 30 40 347679 1233267 926621 3855355 69 + 24 6362991 -5 40 194378421 30.55 21 40 40 19 -5 40 433560 674358 3262764 1992242 67 + 25 6362991 -5 40 199773985 31.40 23 40 40 17 -2 40 944760 325595 1322800 3769641 195 + 26 6362991 -5 40 179404759 28.20 17 34 40 23 -5 40 3457922 156013 1494664 1254293 99 + 27 6362991 -5 40 163386668 25.68 13 28 40 27 -5 40 1392177 281250 3867895 821491 178 + 28 6362991 -5 40 156230534 24.55 12 25 40 28 -5 40 907189 981249 4174945 299437 171 + 29 6362991 -5 40 163236046 25.65 13 28 40 27 -5 40 1097171 3418678 1567013 280008 121 + 30 6362991 -5 40 151309826 23.78 12 23 40 28 -5 40 3514775 2036194 566277 245613 132 + 31 6362991 -5 40 141392520 22.22 10 21 40 30 -5 40 1569000 4571357 124732 97721 181 + 32 6362991 -5 40 143436943 22.54 10 21 40 30 -5 40 1453607 4519441 38176 351107 660 + 33 6362991 -5 40 114269843 17.96 6 14 30 24 -5 40 3311001 2161254 155505 734297 934 + 34 6362991 -5 40 140638447 22.10 10 20 40 30 -5 40 1501615 1637357 18113 3205237 669 + 35 6362991 -5 40 138910532 21.83 10 20 40 30 -5 40 1532519 3495057 23229 1311834 352 + 36 6362991 -5 40 117158566 18.41 7 15 30 23 -5 40 4074444 1402980 63287 822035 245 + + + + + diff --git a/tools/fastx_toolkit/fastq_quality_boxplot.xml b/tools/fastx_toolkit/fastq_quality_boxplot.xml new file mode 100644 index 00000000000..2ba0f04d517 --- /dev/null +++ b/tools/fastx_toolkit/fastq_quality_boxplot.xml @@ -0,0 +1,47 @@ + + chart + + fastq_quality_boxplot_graph.sh -t '$input.name' -i $input -o $output + + + + + + + + + + +**What it does** + +Creates a boxplot graph for the quality scores in the library. + +.. class:: infomark + +**TIP:** Use the **FASTQ Statistics** tool to generate the report file needed for this tool. + +----- + +**Output Examples** + +* Black horizontal lines are medians +* Rectangular red boxes show the Inter-quartile Range (IQR) (top value is Q3, bottom value is Q1) +* Whiskers show outlier at max. 1.5*IQR + + +An excellent quality library (median quality is 40 for almost all 36 cycles): + +.. image:: ../static/fastx_icons/fastq_quality_boxplot_1.png + + +A relatively good quality library (median quality degrades towards later cycles): + +.. image:: ../static/fastx_icons/fastq_quality_boxplot_2.png + +A low quality library (median drops quickly): + +.. image:: ../static/fastx_icons/fastq_quality_boxplot_3.png + + + + diff --git a/tools/fastx_toolkit/fastq_quality_filter.xml b/tools/fastx_toolkit/fastq_quality_filter.xml new file mode 100644 index 00000000000..28c7044b33c --- /dev/null +++ b/tools/fastx_toolkit/fastq_quality_filter.xml @@ -0,0 +1,73 @@ + + + + zcat -f '$input' | fastq_quality_filter -q $quality -p $percent -v -o $output + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +**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). + + + + + diff --git a/tools/fastx_toolkit/fastq_to_fasta.xml b/tools/fastx_toolkit/fastq_to_fasta.xml new file mode 100644 index 00000000000..530857faa49 --- /dev/null +++ b/tools/fastx_toolkit/fastq_to_fasta.xml @@ -0,0 +1,70 @@ + + converter + gunzip -cf $input | fastq_to_fasta $SKIPN $RENAMESEQ -o $output -v + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +**What it does** + +This tool converts data from Solexa format to FASTA format (scroll down for format description). + +-------- + +**Example** + +The following data in Solexa-FASTQ format:: + + @CSHL_4_FC042GAMMII_2_1_517_596 + GGTCAATGATGAGTTGGCACTGTAGGCACCATCAAT + +CSHL_4_FC042GAMMII_2_1_517_596 + 40 40 40 40 40 40 40 40 40 40 38 40 40 40 40 40 14 40 40 40 40 40 36 40 13 14 24 24 9 24 9 40 10 10 15 40 + +Will be converted to FASTA (with 'rename sequence names' = NO):: + + >CSHL_4_FC042GAMMII_2_1_517_596 + GGTCAATGATGAGTTGGCACTGTAGGCACCATCAAT + +Will be converted to FASTA (with 'rename sequence names' = YES):: + + >1 + GGTCAATGATGAGTTGGCACTGTAGGCACCATCAAT + + + + diff --git a/tools/fastx_toolkit/fastx_artifacts_filter.xml b/tools/fastx_toolkit/fastx_artifacts_filter.xml new file mode 100644 index 00000000000..2397f9652aa --- /dev/null +++ b/tools/fastx_toolkit/fastx_artifacts_filter.xml @@ -0,0 +1,80 @@ + + + zcat -f '$input' | fastx_artifacts_filter -v -o "$output" + + + + + + + + + + + + + + + + + + + + + + + +**What it does** + +This tool filters sequencing artifacts (reads with all but 3 identical bases). + +-------- + +**The following is an example of sequences which will be filtered out**:: + + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAACACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAACACAAAAAAAAAAAAAAAAAAAAAAAAAAAAACACAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC + AAAAACACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAACACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAACACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAA + AAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAA + AAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAA + AAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAA + + + + diff --git a/tools/fastx_toolkit/fastx_barcode_splitter.xml b/tools/fastx_toolkit/fastx_barcode_splitter.xml new file mode 100644 index 00000000000..0b22466adb7 --- /dev/null +++ b/tools/fastx_toolkit/fastx_barcode_splitter.xml @@ -0,0 +1,68 @@ + + + fastx_barcode_splitter_galaxy_wrapper.sh $BARCODE $input "$input.name" --mismatches $mismatches --partial $partial $EOL > $output + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +**What it does** + +This tool splits a solexa library (FASTQ file) or a regular FASTA file to several files, using barcodes as the split criteria. + +-------- + +**Barcode file Format** + +Barcode files are simple text files. +Each line should contain an identifier (descriptive name for the barcode), and the barcode itself (A/C/G/T), separated by a TAB character. +Example:: + + #This line is a comment (starts with a 'number' sign) + BC1 GATCT + BC2 ATCGT + BC3 GTGAT + BC4 TGTCT + +For each barcode, a new FASTQ file will be created (with the barcode's identifier as part of the file name). +Sequences matching the barcode will be stored in the appropriate file. + +One additional FASTQ file will be created (the 'unmatched' file), where sequences not matching any barcode will be stored. + +The output of this tool is an HTML file, displaying the split counts and the file locations. + +**Output Example** + +.. image:: ../static/fastx_icons/barcode_splitter_output_example.png + + + + diff --git a/tools/fastx_toolkit/fastx_clipper.xml b/tools/fastx_toolkit/fastx_clipper.xml new file mode 100644 index 00000000000..f0ed8a9a416 --- /dev/null +++ b/tools/fastx_toolkit/fastx_clipper.xml @@ -0,0 +1,109 @@ + + adapter sequences + + zcat -f $input | fastx_clipper -s $maxmismatches -l $minlength -a $clip_source.clip_sequence -d $keepdelta -o $output -v $KEEP_N $DISCARD_OPTIONS + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + use this for hairpin barcoding. keep at 0 unless you know what you're doing. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +**What it does** + +This tool clips adapters from the 3'-end of the sequences in a FASTA/FASTQ file. + +-------- + + +**Clipping Illustration:** + +.. image:: ../static/fastx_icons/fastx_clipper_illustration.png + + + + + + + + +**Clipping Example:** + +.. image:: ../static/fastx_icons/fastx_clipper_example.png + + + +**In the above example:** + +* Sequence no. 1 was discarded since it wasn't clipped (i.e. didn't contain the adapter sequence). (**Output** parameter). +* Sequence no. 5 was discarded --- it's length (after clipping) was shorter than 15 nt (**Minimum Sequence Length** parameter). + + + + + + diff --git a/tools/fastx_toolkit/fastx_reverse_complement.xml b/tools/fastx_toolkit/fastx_reverse_complement.xml new file mode 100644 index 00000000000..a4321eb846d --- /dev/null +++ b/tools/fastx_toolkit/fastx_reverse_complement.xml @@ -0,0 +1,52 @@ + + sequences + zcat -f '$input' | fastx_reverse_complement -v -o $output + + + + + + + + + + + + + + + + + + + + + + + +**What it does** + +This tool reverse-complements each sequence in a library. +If the library is a FASTQ, the quality-scores are also reversed. + +-------- + +**Example** + +Input FASTQ file:: + + @CSHL_1_FC42AGWWWXX:8:1:3:740 + TGTCTGTAGCCTCNTCCTTGTAATTCAAAGNNGGTA + +CSHL_1_FC42AGWWWXX:8:1:3:740 + 33 33 33 34 33 33 33 33 33 33 33 33 27 5 27 33 33 33 33 33 33 27 21 27 33 32 31 29 26 24 5 5 15 17 27 26 + + +Output FASTQ file:: + + @CSHL_1_FC42AGWWWXX:8:1:3:740 + TACCNNCTTTGAATTACAAGGANGAGGCTACAGACA + +CSHL_1_FC42AGWWWXX:8:1:3:740 + 26 27 17 15 5 5 24 26 29 31 32 33 27 21 27 33 33 33 33 33 33 27 5 27 33 33 33 33 33 33 33 33 34 33 33 33 + + + diff --git a/tools/fastx_toolkit/fastx_trimmer.xml b/tools/fastx_toolkit/fastx_trimmer.xml new file mode 100644 index 00000000000..96d5e16c9db --- /dev/null +++ b/tools/fastx_toolkit/fastx_trimmer.xml @@ -0,0 +1,70 @@ + + sequences + zcat -f '$input' | fastx_trimmer -v -f $first -l $last -o $output + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +**What it does** + +This tool trims (cut bases from) sequences in a FASTA/Q file. + +-------- + +**Example** + +Input Fasta file (with 36 bases in each sequences):: + + >1-1 + TATGGTCAGAAACCATATGCAGAGCCTGTAGGCACC + >2-1 + CAGCGAGGCTTTAATGCCATTTGGCTGTAGGCACCA + + +Trimming with First=1 and Last=21, we get a FASTA file with 21 bases in each sequences (starting from the first base):: + + >1-1 + TATGGTCAGAAACCATATGCA + >2-1 + CAGCGAGGCTTTAATGCCATT + +Trimming with First=6 and Last=10, will generate a FASTA file with 5 bases (bases 6,7,8,9,10) in each sequences:: + + >1-1 + TCAGA + >2-1 + AGGCT + + + +