Previous changeset 3:528ba9c896e0 (2013-09-18) Next changeset 5:b38bbcbd458d (2015-08-05) |
Commit message:
v0.0.6 use format_source; v0.0.5 error handling & citation |
modified:
test-data/sanger-pairs-forward.fastq test-data/sanger-pairs-interleaved.fastq test-data/sanger-pairs-mixed.fastq test-data/sanger-pairs-reverse.fastq test-data/sanger-pairs-singles.fastq |
added:
tools/fastq_paired_unpaired/README.rst tools/fastq_paired_unpaired/fastq_paired_unpaired.py tools/fastq_paired_unpaired/fastq_paired_unpaired.xml |
removed:
tools/fastq/fastq_paired_unpaired.py tools/fastq/fastq_paired_unpaired.rst tools/fastq/fastq_paired_unpaired.xml |
b |
diff -r 528ba9c896e0 -r 09f9f0e29e47 test-data/sanger-pairs-forward.fastq --- a/test-data/sanger-pairs-forward.fastq Wed Sep 18 06:13:27 2013 -0400 +++ b/test-data/sanger-pairs-forward.fastq Wed Aug 05 11:06:38 2015 -0400 |
b |
b"@@ -1,288 +1,288 @@\n @WTSI_1055_1a04.p1kpIBF bases 1 to 186\n TTACCCGTCGGCGCCGAAAGAGCCGAAGGCTTTGTGACTGAGGCCGGACACTGTGCTGTTAAGCTGGACATTGCCCGACCTGTCGAGTGCGCCGCTCGCCGAAATTCGTTATCGCGTAAATTTATTTATTTATTTTTATTTTTTTAAATAAAAATGACGACTAATTTGTAAGGGCATAACAACAA\n-+WTSI_1055_1a04.p1kpIBF bases 1 to 186\n++\n !,,,./644,,,-0377<:Q777<BB<<60,+.,+,.4.,))))//15>>550007:66>>==7@71/--0:<CDBB;;49/***/***22,/+)))11===798:3.,,1488?133??BKKMODFB?BDB7447B?:8--.E:F?B77?BKKC<<322B:..<41,46>>B<<::::5116..\n @WTSI_1055_1a05.p1kpIBF bases 1 to 642\n CGTGCCAGTTCTAAACTGGTCGTTCAGCGCCAACCGAAGTGCATACCCTGACGAGCATACACGCAGCTGAAGCGCTCCACAAGCAGCTCTCACCACTAGTCCACGCACCACCCCGCAAGGAGACGGCACGCAGCCACGGGCAAAAGCCGCCTGTTTCACACAACAGCCCGGCTGACCCGACCTTTAGAGCCAATTCTTTTCCCGAAGTTACGAATCTAATTTGCCGACTTCCCTTACCTACATTATTCTATCGACTAGAGGCTGTTCACCTTGGAGACCTGCTGCGGATATCGGTACGATCAGGCAGGAGATTCATATCGCTTCCCTCGCATTTTCAAGGGCCGTGTGGAGCGCACGAGACACCACAGGAACCGCGGTGCTTTACGGGCGCAACATCCCTATCTCAGGCTGAGCCACTTCCAGGCACGCACGCCCTAAACCAGAAAAGAGAACTCTGGCTCGGACTCCACACGACGTCTGCGAGTTCATTTGCGTTACCGCGCGAAACAGTTCTTGCGAACCGTCATTTCCCTGGCCTGGCGTGGGAATGTTAACCCACTTCCCTTTCGGCAACCGGATGGACAAACTGCGCAAGCACAGCAAAGTCTTCATCCGTAGTGTGTGACGGCATTAGCCGGTGC\n-+WTSI_1055_1a05.p1kpIBF bases 1 to 642\n++\n !<>AIHHCCCCCCCCIIIINNNNNTTTYYYYYYYYYYTTTTIIIIHHNIIIFDKFDDINNNTTTNIIIIINTTTTTTTYYYYYYTNNNNNTTYNIIIIIINNYYYYYYYYYYYYYYYYYTNNNNNTTTTTTYYYYYYYYYYYYYYYYYTLLJJJNNTTTTYYYYYYYYYTNNJNJLLTYYYYTONJJJOOYYYYYYYYYYYYYTTTTLOJJJJOOYYYYYYYYYTTTTTTYYYTTTTTTYYYYYYYYYYYYYYYYLJJJJJTYYYTLLLTOTJJJJJKKOYYYYTJNJJJOOTOOIIIILKYYYYTINDDDEEOSYYYYYYYYYYYYYYYYYYYYYYTTLTTTTTTTINIIIOYTKB888>>KMYYIIFIIITKYYYYKKKTOTYYYYYYYYYYYYYYYYYYYKIDDDD>>444>BKLKIIGGDIOYYYYIYYYQIIII@@7507>43--/<<IAAIIII>559==A@IIB>>===KMQM??/33?BIIQQIIFCCFCCFIIICIHA?@F>:>:>>=3...08AIIIMIQQQQCCCCQC:>=:6:>:>>IICA>>>>IFCCC>:>AA>99>;>AACAA>>>::7;7AIII>>>:>>IAI>833688949>@C>:>A;98777=;>99::>4755057132+\n @WTSI_1055_1a09.p1kpIBF bases 1 to 497\n CGAGCTCGGTACCCGGGGATCCCACCGTTTGGAGGGTGAATTCGCGCTGGAAAAAGGTTTTCCATGCAAAAAATGGAACTTCTTCAGCGTCCAAAGCTTTAGTCAGCCAGCAAAGTGTTGGCATTTCATCGAATGGAAATGGTTCAATAAGTAGCGGCAGCCCCAACGTTTTTGAGAAGTTTTGTGGCGTTTTCTCTGAAGGGGTAAAGTCAGGCGAATTGCTGGAAAAGGTGCCATTGGGTGATTTGGAAGTTGTTCTGTTGATGAACCTTTCATGTTCTAGGCGTTTGTGAAGGAATTTGCTGACAATTTGCTCCGAATCCAAAAGGACGTTGAGCGCTGTGATCGGACCATCAAATTCTATTCCAAACGGGACAATTTGGATGCTCTCCAACGGATAATTTGCACTTACATTTATCGTCGGCTGAAGTTGGACATTGAGGACGGTTACGTGCAGGGAATGTGCGATTTGGTCGCTCCTCTTTTGGTGGTGTTT\n-+WTSI_1055_1a09.p1kpIBF bases 1 to 497\n++\n !989>>CCCCCCIIYOICCCCOIYHHA8339>><@75.444N@IDHHHDDNTTYYYYYTTTIIIIINYYYYYTTTTTTTNNNHHHIHHIIIIOQIDKDDDFHIIITYYYYYYYTTTTTYYYYYYTTTTTTYYYYYYYYYYYYTTTTTTTNNNNNNTTTYYYYYYYTTTTYTYYYSSSYYYYYYYYYYYYYTNNNNNTYYYYYTTTTTTYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYOOKJJNOTTYYYYYYYTTTTTTTTTTYYYYYYYYTTTTTTYYYYYYTTNNLLLLLLYYMOKKKOYYYYYYYYYYYYYYYYYYTTTTTIIIIIITYYLIIIIIFFDDDFYYYYYYYTTTTTTYYYYYYQQMMMYYTTOKKKIIIIIIIKKNNNDDDNNNNTYTTOOKKKINNIIKQONN?N2::NHTQOKKKKFFFFFFMMIIIICBAAIII>>>>>>AAAB=?FBO>88+,+//><IIII<33/++/0<<4\n @WTSI_1055_1a10.p1kpIBF bases 1 to 512\n AACGACGGCCAGTGAATTGTAATACGACTCACTATAGGGCGATTTCGAGCTCGGTACCCGGGGATCCCACGGCAAGAGACCAATCTGGTTTTGCAATGTAACATGCCAATTAATCATCAGCATTTTTCACATAAGTGATGGGATGACGGTTGGGGGGGGGGGAAATAAATGCATGTCGATCAGTGCATAGAAGCGAAAGAAATCGTAGAAATTTGCAGATGAAAATTTTGCAGTGGTAATTTGACCGTACCGAAAAGGAATGAGAGCTATTTACCTGTGGGAATGGGTGTAAAATGGAAACTAAATTGCGCGAGGGACAGTTTTGATTGGACGATATCTCCAGCGCAAAGGTCACATGACCAGCCGCTTGGAGATTGTTCGGGTAAGCGAGACAAAATACGAACAATCGGAGTTATTTGTACAACAACAACACATTGATTAAGTGATGGGAGAAAAAAAAAAGAAGGAATAATATGGCTTTGTGCATTTTTCTAAAGGTCTTAAAAATCAA\n-+WTSI_1055_1a10.p1kpIBF bases 1 to 512\n++\n !.6<:::60.1441+21441++AAAAEHHHHHHHHHHDBB4+,+<<IDCCCCCCCCCHITIIDDDCOOQH@@//)))059><10''*45EHMOFEDCCCCCDIIINTTIINNNNTTTTTTYYYYTIIIDDDDDHHHHHNOKKKKMOOTINNNNNYYYYQPPPPKKKLOKMMMKIINIIIKIIIIIFKIIIITOYSSYYYYYTTTLOKKKKKYYYYYYKLMMOOMSSYSLOKKFBBBFKKKSSYYYSSMMSSYYYSSSSMSSSSSMYYYYMOKKKKSSYYSKKKKKKSYYYPSSSSMMFIIOJJSYYYSSSMLOLIIIIIIYYYLLTLOIIIFFFKKMYYYYYYYYYTTTTTOOKKIINNNNTYYYYYYOFFFFFFIOYYYYYYYYYYQQKKKKKMMTTTTYYYIIIFFFFFFFDMMQQYYKKKKKKMKKKQQYQOKKKMOYYYA;777;>CIIIH@>>CA=94++,69ICCCC@>>7"..b"TTCCCGCCTCCCCCCCCCCTTTTGACCACCTGCCATTGTTGTCGTTGAGCAACCGAATTTGACTCTTCACCCGTCGACTGCTGGGCGTTCGCTGTTCCGCCATGAATTGGCGCCATTCTCTTTGGCCCTAAAAGTGAACCGGTTACCAACTACTAAAGTGTCCGATTCGCTCCCGAACCTGCCGAGTCTGGACAGAGGCCGGAATTTTTGGGAATGCCATCAATCCCGGAGCATTTTTGAAGCTGCTCTCGACATGAGTACCGGCTCCATTAAAATTATCCCCCTCCAAACCGACCACAATCACACGCCCCCACTCGTCCCTGCGCAACGTCGTCTCTTCGTCGTCCACCTCCGCCTCGTCCGTTCTCGCCCATTCCCTTTTCTCGTC\n-+WTSI_1055_1f20.p1kpIBF bases 1 to 491\n++\n !89><<<536::6001:41--<A?>CCCFCDDDDIIIYQKKGGNNNDCCCCCDDDDDHTNIDDDDTTIDA>9449;>@DHHHHHINNNNHDEEFHHNNNIIIIIIYYTIIIIITYYYYTTTTNNTTTTTIIIIIIFF>>2...@NNNTTTTTYYYYYYYYYYTTTTTNNLTTNYYYTTNNNLLLTTTTTTTTTTTTTTTYYYYTTTTTTYTNNNNILLNNNNNNNTTTTTTTTTTTTTTTYYYTTLTTTTTTTTTTTTTYYYYYYYYYYYYYYYYYTTTTTTYYTTTTTTYYTTNNNNIIKYYKKTTTTYYYYTTTTTTYYYYYYYYYYKKKKKKYYYYYTTTTTTYYYYIIIIBB=>7<<>>>CII??36-1(((()*+48ACIAA?4/)))'/***,++,539<>>>>>BD777777>>>>>>>>91/))01<::8=891,*117444,+,12777.,+44>440/0977-//-10++048:30---+\n @WTSI_1055_1f21.p1kpIBF bases 1 to 456\n TAAACGACGGCCAGTGAATTGTAATACGACTCACTATAGGGCGAATTCGAGCTCGGTACCCGGGGATCCCACCTGGAGCAAACTGGTTGTGTCGTGGTCAGGGTACCGCCATTCCGTGAGATATGGTAGGTAAATGCGACCGGGATTATCCACAACTTTGGACGGCCTAATTCGCATACATGGAGTCGGCTTCACATAGCAATAGGGGCCTACGTTGGGATGATTTTCCAGAAAGTAAATGGCTACGGGAATGTTGTACACAGCTCCCTTAAGCTTTATGTATTAAACAAACAAACAAAGACCATACAGCCCACCTTATACAAGATGGGAATGGTCCCCGAAAAGGAAAGGCAATATTTCGGCATTCCGTCAGGGAAAACAAAATTCACAACGTCGGGCTGAAGATCTATAAAATTGTTGAGCGCAGTGAGTAAATCATCCTTCGTACTATCCTC\n-+WTSI_1055_1f21.p1kpIBF bases 1 to 456\n++\n !.348<<<<<4014:3.08::;<<ECCCIIIHCCBCCCDIYMMKKBNNNHDDDDDDDDDINYOIDDHHTTIDDAA<<<>BDDDDDDDDDIIHHHHIINNNIFDHHHIINIFFIINITTKFFIIIIIIIIIIIIIOOMMQQ8.))*25IHMQQQIIIIIIIIIITNNNNIIKYYYTTTTTTTTTTTTYNNIIIINNTTTTTNNIIITTTTTTTTNNNNTTYYYYYTTTTTTYYYTTTTTNTTTTTYYKKFFKKYYYYYYYYYTTTTTTTTTTTTYTTTTTTYTTTTTTTTLIFDDFJJJFFFIIJLOKFFMSSSYYYYYSSFB;??IIKKKKKKKKKLLKFFDDDDMDDDDB;789;AFNDBB;;BOMMMKKIDDDED@D@@8=@ENEBBBBBD;85//6?@@>77<@DFM?82228>D>>77273BB==97330/.--/8@75-,,/,,,0/53,\n @WTSI_1055_1f22.p1kpIBF bases 1 to 370\n CGACCAATGCTCGGTCCGTCACGTAGAGCAATCCGTTTGAGCGATCCACACGAAAATCTTAAGCGCAAAAAAGATTAATATTAATTATTTAACCATCTAATTATTTTAAAAATTTGCCGAAATAGTATCCGATCAAATCGGTTCTGACAATTTTACATTATCTGTTAGCCGTGCCAAAGTCTCTCTCTCACATTCGGTGGCAGCCGGTTGTCGTTGTCCAAGCACAAATTCTACGCTGCCATTATTGCCTTCGTCTCTGTCGCGTGCCAAAAAGCGTCCGATGGCGGTGCCAGCCGGCATATTGTCCAGTAGCCGAATGTGCGTGTCCTGGCGATCCCACAGGATCAGTGGCCGATTATCATTTTTGTC\n-+WTSI_1055_1f22.p1kpIBF bases 1 to 370\n++\n !89A>887>>:>68>AHHIIDCCCCCDNNYYTTTTTTTYTTTTTTYYYYYYYYYYNNHHHDF=@=>9BQQYYYIIIIIITTTTTTTTTTTTTNTTNNNNNTTTTTTTTTTYYYYYYYYYYTTTTTTYTTYTTTYTNNNNLNNNNNNNTLLYTTTTTTTTYYYYYYYYYYYYYYYYYYYYYTTTTTTTTOOKKKOYYYYYYYYYYYYYYYYYYYYYYTTTTLKKTTTTYYYYYYTNNNNNTYYYYYYYYYYYYYYYYYYYYYYYYYKKMMTTTTTTTYOKIIIGKKYYYYYOIIIOAQ==<:77:<IIIABBBCDO>>988>?FKYYPFBB,,.8>FAA:6698<>>D>>::33:4>>66,,,<<Q93+-\n @WTSI_1055_1g01.p1kpIBF bases 1 to 584\n CAAATCCTACTGGCCGGACAAAAGAAGCGGCCAAACAACGTGCTCTTCACAAGACGATCACCACCAAAAACATTCACACATGCTCAACGAGACATTGCTTGCAGGATGGCAAGTGCAGGAAGCACTTTCCGGTGCATTAGTTTACACTGACTATGTAACCTATTGTTAATTCCCTGTAGAAACCGTTTGAGTACGACACTGTGTACTCTGAAAATGCCTACCCTCGCTACAAGCGCCGCCCACCTCCGCCTTCACTCCAAGAAGCCCAGCAGAGTCCGGAATTATACGGGCGCGAAATGCAATACAAGGACCAGCGTGGCAAACTAATTCGCAAGGACAACTCTCACGTCGTGGCTTTCAGTCCATTTCTGTCAAGCAAATATGTCGCTCAGTAAAATTAATACTTTTTGTGACAAAATTGCTAACTTTTTTGCAGCATTAACGTCGAGTTTGTCGCGGGAGAAGGATGTATAAAGTACTTATGCAAGTACATGATGAAAGGAGCGGACATGGCCTTTGTCCAAGTCACGGATGCCAACACGGGCCAAAGTGCGCTGAACTACGACGAACTGCAGCAAATTCG\n-+WTSI_1055_1g01.p1kpIBF bases 1 to 584\n++\n !333;>HCDHHIIIYIIINTTYYYYTTTTTTYYYYYYNIIIIIININNTONB81+++04HQYTTTTTTTNIIINNTTNTTTTTTTTYYYTTTTTYTTTTTTYYYYYYYYYTTTTTTYYYYYTIIIIIITTTTTTTTTNNNNNNTNNTTTNNNNNNNNNNNNNNNNTTTTTYYTNNJJJJLYYYYYYYYYTTTTTTYTNNNNNNTYTTTTTTTTYYYYYYYYYYYYYYYYYYYYYYYYYYTTTTTTYYYYYYYYYYYYTNNNNNNTTYYYTNNNNNTTTNNNNTTYYYYYYYYYYYYYYYYYYYYYYTNNNNNTYYYYYYYYYYYYYYYYYYYYTNNNNNTYYYYYTTTTTTYYYYYYYYYYYYYYYYYYYYYTTTTTTYYYYYYYYYYYTKKKTNNIIINTYYYYYYYYYYYYYYTTTTTTYYYYYYYYYYYYYYYYYTTTTTTOIICBBOQQQQQQC;<88:>>>CIFOYYYYYYQQQQQQQQQCCQQQQHCBAA:AAAAIIA>;A>AAAIC>>AAAACA>>>>III>::>AAACCCIIIA:;==<IIIIIQQAA<:::IA==::8::CQIIIIAA>>CI92\n" |
b |
diff -r 528ba9c896e0 -r 09f9f0e29e47 test-data/sanger-pairs-interleaved.fastq --- a/test-data/sanger-pairs-interleaved.fastq Wed Sep 18 06:13:27 2013 -0400 +++ b/test-data/sanger-pairs-interleaved.fastq Wed Aug 05 11:06:38 2015 -0400 |
b |
b"@@ -1,576 +1,576 @@\n @WTSI_1055_1a04.p1kpIBF bases 1 to 186\n TTACCCGTCGGCGCCGAAAGAGCCGAAGGCTTTGTGACTGAGGCCGGACACTGTGCTGTTAAGCTGGACATTGCCCGACCTGTCGAGTGCGCCGCTCGCCGAAATTCGTTATCGCGTAAATTTATTTATTTATTTTTATTTTTTTAAATAAAAATGACGACTAATTTGTAAGGGCATAACAACAA\n-+WTSI_1055_1a04.p1kpIBF bases 1 to 186\n++\n !,,,./644,,,-0377<:Q777<BB<<60,+.,+,.4.,))))//15>>550007:66>>==7@71/--0:<CDBB;;49/***/***22,/+)))11===798:3.,,1488?133??BKKMODFB?BDB7447B?:8--.E:F?B77?BKKC<<322B:..<41,46>>B<<::::5116..\n @WTSI_1055_1a04.q1kpIBR bases 1 to 359\n TGATTACGCCAAGCTATTTAGGTGAGACTATAGAATACTCAAGCTTGCATGCCTGCAGGTCGACTCTAGAGGATCCCAGGGTACCCGACGTCCGATATCGCGAAAAATGATGTATCTAGATTTGTCAGGAAACGTCCCCGAGTCTGTTCGACAAACAAACGTTATTCCGAACTCCCAACAACAGTATTTGATTGTGTAAAAATCTCTTGGCCTGATTACTATACTTTAGACATTTTTAGTGCCTGTATTGGAGGTATTTTAGGAACTTTTGGAACGAGCTTTTATCGATTTAGGGAACTAAAAAACCGTTCCATATTCATTAGATGCTATTATTTAAAATCCGAGTCTGATTTGCGAT\n-+WTSI_1055_1a04.q1kpIBR bases 1 to 359\n++\n !41>;D>AA>;;=;;>>AA@@CDDAA>>>ADINIIHHDD>::79:>>FIICCCHHHHCCCCCCCCCHHHHIEA>9..''))**,,++''+)**.,,,-,00..0B+..33010701+++-1B1.,??KMOYYQQQQ<<61,))01<:CAIIIIIYYYYTYTTTTYYYYYTTTTNNKKKKYYYYYYYYYYYYPMMOKTTTTYTTTTTYNINNINTNTIIIIIIIIINNYYYYYYYTTOLKKKIIIINNNOKKKKKFFKKYYYYYYYYYYSSMMMQMYYYYYTTTTLLPIDDDDDDFFFFFFMMKKLNIDFFKQQMMMMMMMMHHFF>A>>:779=5<488>>7745/00::300+++0-\n @WTSI_1055_1a05.p1kpIBF bases 1 to 642\n CGTGCCAGTTCTAAACTGGTCGTTCAGCGCCAACCGAAGTGCATACCCTGACGAGCATACACGCAGCTGAAGCGCTCCACAAGCAGCTCTCACCACTAGTCCACGCACCACCCCGCAAGGAGACGGCACGCAGCCACGGGCAAAAGCCGCCTGTTTCACACAACAGCCCGGCTGACCCGACCTTTAGAGCCAATTCTTTTCCCGAAGTTACGAATCTAATTTGCCGACTTCCCTTACCTACATTATTCTATCGACTAGAGGCTGTTCACCTTGGAGACCTGCTGCGGATATCGGTACGATCAGGCAGGAGATTCATATCGCTTCCCTCGCATTTTCAAGGGCCGTGTGGAGCGCACGAGACACCACAGGAACCGCGGTGCTTTACGGGCGCAACATCCCTATCTCAGGCTGAGCCACTTCCAGGCACGCACGCCCTAAACCAGAAAAGAGAACTCTGGCTCGGACTCCACACGACGTCTGCGAGTTCATTTGCGTTACCGCGCGAAACAGTTCTTGCGAACCGTCATTTCCCTGGCCTGGCGTGGGAATGTTAACCCACTTCCCTTTCGGCAACCGGATGGACAAACTGCGCAAGCACAGCAAAGTCTTCATCCGTAGTGTGTGACGGCATTAGCCGGTGC\n-+WTSI_1055_1a05.p1kpIBF bases 1 to 642\n++\n !<>AIHHCCCCCCCCIIIINNNNNTTTYYYYYYYYYYTTTTIIIIHHNIIIFDKFDDINNNTTTNIIIIINTTTTTTTYYYYYYTNNNNNTTYNIIIIIINNYYYYYYYYYYYYYYYYYTNNNNNTTTTTTYYYYYYYYYYYYYYYYYTLLJJJNNTTTTYYYYYYYYYTNNJNJLLTYYYYTONJJJOOYYYYYYYYYYYYYTTTTLOJJJJOOYYYYYYYYYTTTTTTYYYTTTTTTYYYYYYYYYYYYYYYYLJJJJJTYYYTLLLTOTJJJJJKKOYYYYTJNJJJOOTOOIIIILKYYYYTINDDDEEOSYYYYYYYYYYYYYYYYYYYYYYTTLTTTTTTTINIIIOYTKB888>>KMYYIIFIIITKYYYYKKKTOTYYYYYYYYYYYYYYYYYYYKIDDDD>>444>BKLKIIGGDIOYYYYIYYYQIIII@@7507>43--/<<IAAIIII>559==A@IIB>>===KMQM??/33?BIIQQIIFCCFCCFIIICIHA?@F>:>:>>=3...08AIIIMIQQQQCCCCQC:>=:6:>:>>IICA>>>>IFCCC>:>AA>99>;>AACAA>>>::7;7AIII>>>:>>IAI>833688949>@C>:>A;98777=;>99::>4755057132+\n @WTSI_1055_1a05.q1kpIBR bases 1 to 219\n CTGTGTACAAAGGGCAGGGACGTATTCAGAGCGAGTTGATGACTCGCCCCTACAAGGAATTCCTCGTTCACGGACAATAATTGCAATGTCCGATCCCAATCACGGCAAATTTTCACCGGTTTACCAACCCCTTTCGGGGAAGGACAAGCACGCTGATTTTGCCAGTGTAGCGCGCGTGCAGCCCCGGACATCTAAGGGCATCACAGACCTGTTATTGC\n-+WTSI_1055_1a05.q1kpIBR bases 1 to 219\n++\n !>>>>>DDIFKOOTTTNDDDHHFTTOOKKKYYTTNNNIYYNNNNNNYTIIIIITIFNIDDKKKNNIIIFIITTTTNNNNNINIINGIKMYYYYYOTTTTTYKKLMMMYYYQOOAAAAIQ;7:<<<A>=AAQA>><<<>7::77::7>>IIIAAAA>:>A=>>5:88::=BIIIIIIIII>>7;9733999=8370---128999::14.,0,,0442+\n @WTSI_1055_1a09.p1kpIBF bases 1 to 497\n CGAGCTCGGTACCCGGGGATCCCACCGTTTGGAGGGTGAATTCGCGCTGGAAAAAGGTTTTCCATGCAAAAAATGGAACTTCTTCAGCGTCCAAAGCTTTAGTCAGCCAGCAAAGTGTTGGCATTTCATCGAATGGAAATGGTTCAATAAGTAGCGGCAGCCCCAACGTTTTTGAGAAGTTTTGTGGCGTTTTCTCTGAAGGGGTAAAGTCAGGCGAATTGCTGGAAAAGGTGCCATTGGGTGATTTGGAAGTTGTTCTGTTGATGAACCTTTCATGTTCTAGGCGTTTGTGAAGGAATTTGCTGACAATTTGCTCCGAATCCAAAAGGACGTTGAGCGCTGTGATCGGACCATCAAATTCTATTCCAAACGGGACAATTTGGATGCTCTCCAACGGATAATTTGCACTTACATTTATCGTCGGCTGAAGTTGGACATTGAGGACGGTTACGTGCAGGGAATGTGCGATTTGGTCGCTCCTCTTTTGGTGGTGTTT\n-+WTSI_1055_1a09.p1kpIBF bases 1 to 497\n++\n !989>>CCCCCCIIYOICCCCOIYHHA8339>><@75.444N@IDHHHDDNTTYYYYYTTTIIIIINYYYYYTTTTTTTNNNHHHIHHIIIIOQIDKDDDFHIIITYYYYYYYTTTTTYYYYYYTTTTTTYYYYYYYYYYYYTTTTTTTNNNNNNTTTYYYYYYYTTTTYTYYYSSSYYYYYYYYYYYYYTNNNNNTYYYYYTTTTTTYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"..b'KMQMMPPYYYTTTTTTYTTTTNNNNNNKFCCQQYYMMFF<<79?A8335:<:6-2+++\n @WTSI_1055_1f22.p1kpIBF bases 1 to 370\n CGACCAATGCTCGGTCCGTCACGTAGAGCAATCCGTTTGAGCGATCCACACGAAAATCTTAAGCGCAAAAAAGATTAATATTAATTATTTAACCATCTAATTATTTTAAAAATTTGCCGAAATAGTATCCGATCAAATCGGTTCTGACAATTTTACATTATCTGTTAGCCGTGCCAAAGTCTCTCTCTCACATTCGGTGGCAGCCGGTTGTCGTTGTCCAAGCACAAATTCTACGCTGCCATTATTGCCTTCGTCTCTGTCGCGTGCCAAAAAGCGTCCGATGGCGGTGCCAGCCGGCATATTGTCCAGTAGCCGAATGTGCGTGTCCTGGCGATCCCACAGGATCAGTGGCCGATTATCATTTTTGTC\n-+WTSI_1055_1f22.p1kpIBF bases 1 to 370\n++\n !89A>887>>:>68>AHHIIDCCCCCDNNYYTTTTTTTYTTTTTTYYYYYYYYYYNNHHHDF=@=>9BQQYYYIIIIIITTTTTTTTTTTTTNTTNNNNNTTTTTTTTTTYYYYYYYYYYTTTTTTYTTYTTTYTNNNNLNNNNNNNTLLYTTTTTTTTYYYYYYYYYYYYYYYYYYYYYTTTTTTTTOOKKKOYYYYYYYYYYYYYYYYYYYYYYTTTTLKKTTTTYYYYYYTNNNNNTYYYYYYYYYYYYYYYYYYYYYYYYYKKMMTTTTTTTYOKIIIGKKYYYYYOIIIOAQ==<:77:<IIIABBBCDO>>988>?FKYYPFBB,,.8>FAA:6698<>>D>>::33:4>>66,,,<<Q93+-\n @WTSI_1055_1f22.q1kpIBR bases 1 to 496\n CTATTTAGGTGAGACTATAGAATACTCAAGCTTGCATGCCTGCAGGTCGACTCTAGAGGATCCCGCATGAGGAATCGGAAGAGAATAATAACAAGAAAATGACAGATAAAAAGAGTGGAATTGAAGTAGAAGAGAAAAAGGGTAGAGTTGTAACAGAAGAGAAGAAAGTTTTAAATGAAGCGGAAGAAAAGAAGGACGAAGATCAGACGGAAGAGAAGAAAGAAAATGAAAAAGAAGTTAAAAGAAATAATGCGGAAGAGAAGAAGAAATTGGATGAAACTGAAGAGAAGCCGGATGAGGAAAGGGGAGAAAAGAAGAGCAGAGCTGAAGTGGAATTGGAAGAAACAACGAAGAAGAATAATGGACTTAAATATGTTTGGAAGCATCAAAATGAATCGGATGTAAAGAAGTACGAAAACATAATGGAAAGTATGGACGAAAAGAAAATGGAAGAGAAGGAGCTCGTGGACAATTACAGTAATATTTTGTTTGGAA\n-+WTSI_1055_1f22.q1kpIBR bases 1 to 496\n++\n !399>>>>CHHHHBDDDEIIINNTIIFDA>AAAADDDDDDDDDHHHDDHDIIIIIINNNOOBB+++89DFIKKFFINNTTYYYTTTLLLKKKOOTTOLYLLOLTTTTTTTYYYYYYYYYYYYYTIIIDDDFFKOTYYYYYYYYYYYYYTTTLLJTTTYYYYYYYYYYYYTTTNJJLTTLLTTTTYYYYYYYYYTNNNNNTLLMKNNNNNNTTTTTTYYYYYYYYYYYYYYYYYYYYYYYYYYYYYTLLKKKYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYTNNNNJJLNNNNNNNNNTTTTTTNNNNNTYTNNNLNNNTTTTTNNLLTTTTTTTTYYYYYYYYYTTNLLLLLLNNNTLYYYYYYYYYYYYYYYTTTTTTYYYYYYYTNNNNNTTTNNNILOOTINNNNNTTTTMYMMMYIIINFFIIIGINIIIIKLLTOKKKMGGDFFFGFFFFFFFFFNNNIN?CCMQ<<3<<D<<+,.66>>F=;>:5.\n @WTSI_1055_1g01.p1kpIBF bases 1 to 584\n CAAATCCTACTGGCCGGACAAAAGAAGCGGCCAAACAACGTGCTCTTCACAAGACGATCACCACCAAAAACATTCACACATGCTCAACGAGACATTGCTTGCAGGATGGCAAGTGCAGGAAGCACTTTCCGGTGCATTAGTTTACACTGACTATGTAACCTATTGTTAATTCCCTGTAGAAACCGTTTGAGTACGACACTGTGTACTCTGAAAATGCCTACCCTCGCTACAAGCGCCGCCCACCTCCGCCTTCACTCCAAGAAGCCCAGCAGAGTCCGGAATTATACGGGCGCGAAATGCAATACAAGGACCAGCGTGGCAAACTAATTCGCAAGGACAACTCTCACGTCGTGGCTTTCAGTCCATTTCTGTCAAGCAAATATGTCGCTCAGTAAAATTAATACTTTTTGTGACAAAATTGCTAACTTTTTTGCAGCATTAACGTCGAGTTTGTCGCGGGAGAAGGATGTATAAAGTACTTATGCAAGTACATGATGAAAGGAGCGGACATGGCCTTTGTCCAAGTCACGGATGCCAACACGGGCCAAAGTGCGCTGAACTACGACGAACTGCAGCAAATTCG\n-+WTSI_1055_1g01.p1kpIBF bases 1 to 584\n++\n !333;>HCDHHIIIYIIINTTYYYYTTTTTTYYYYYYNIIIIIININNTONB81+++04HQYTTTTTTTNIIINNTTNTTTTTTTTYYYTTTTTYTTTTTTYYYYYYYYYTTTTTTYYYYYTIIIIIITTTTTTTTTNNNNNNTNNTTTNNNNNNNNNNNNNNNNTTTTTYYTNNJJJJLYYYYYYYYYTTTTTTYTNNNNNNTYTTTTTTTTYYYYYYYYYYYYYYYYYYYYYYYYYYTTTTTTYYYYYYYYYYYYTNNNNNNTTYYYTNNNNNTTTNNNNTTYYYYYYYYYYYYYYYYYYYYYYTNNNNNTYYYYYYYYYYYYYYYYYYYYTNNNNNTYYYYYTTTTTTYYYYYYYYYYYYYYYYYYYYYTTTTTTYYYYYYYYYYYTKKKTNNIIINTYYYYYYYYYYYYYYTTTTTTYYYYYYYYYYYYYYYYYTTTTTTOIICBBOQQQQQQC;<88:>>>CIFOYYYYYYQQQQQQQQQCCQQQQHCBAA:AAAAIIA>;A>AAAIC>>AAAACA>>>>III>::>AAACCCIIIA:;==<IIIIIQQAA<:::IA==::8::CQIIIIAA>>CI92\n @WTSI_1055_1g01.q1kpIBR bases 1 to 350\n TATGACTGATTACGCCAGCTATTTAGGTGAGACTATAGAATACTCACGCTAGCATGCCTGCAGGTCGACTCTAGAGGATCCCAGGATTGCTTTTTGGCTCGCATACTGCAGCCTGGGGAAGTAGTTGACGTTTTGAAGAATTGAGGGAAGTTGACGTGAAACGGCAACGCGGAGCAGGTCGGAAATCGCTTCGCTATCAGAGCCAAGCAACGAAATGGCGATTGCGCTTAAAAAACATTGGTTTGCTTAAAACATCAATGGTCTTCACCGGTAGAAGCAGTCGCCTAGACCAACGTTGTTGACGCAACGAATGGTGTTTTGCTGCTGGGCAGACGTGGGCGGAGTGCTA\n-+WTSI_1055_1g01.q1kpIBR bases 1 to 350\n++\n !..+---77CBI>7---77>>>DACCCHHHIDDDDCCIHHAA84)))%%%))+,32>>HHHHCCCCCCCCCHIIIIINN<B.,,,+++2.22OBNDHHHHHIIDDDDIIYTNNNNNTTTIIIIIITTTTKKYYYYYYYYYYQOB84-,,.<>FIIIIINNNIIIKKMSSSIIIIIIIIIIIILTOOIIIIIFLLLLLLYYSKKLKKKPMSSYSYSSMSS?KKKKFFFIIFKKKKKKKKSMMMSKKIDDDKKKFDDFFFBBDD=DDMMMKDDDDDDKKFFCCKKKKKFFFKKKKFMMMMMKKKKKKKK734:4B<??B@DC=<871<1314/--,,+++++.-5:97--,\n' |
b |
diff -r 528ba9c896e0 -r 09f9f0e29e47 test-data/sanger-pairs-mixed.fastq --- a/test-data/sanger-pairs-mixed.fastq Wed Sep 18 06:13:27 2013 -0400 +++ b/test-data/sanger-pairs-mixed.fastq Wed Aug 05 11:06:38 2015 -0400 |
b |
b"@@ -1,800 +1,800 @@\n @WTSI_1055_1a03.p1kpIBF bases 1 to 312\n TTGTTGAACAGCAAAAAGGTCAAGAATATGGATGTTCTCGCCATGATTTTTGTGCCATAGGCGCGCATTCACAAGGTCCATCAGTCGNTCAGCCTGCCGCAACACCACCACCAGCCGCAGCAACAACAACAGCACCAGCAGCAGCTGATCCAATCGCATGTGCCACAGAATAACACCCAAAATCAATTAGCGACGGCCGCCCTCCAGCCGGTTCAGCAGCAGAAACAGCACGAAAAATGGGATCCGATCAAAGAATTTGGGCTGCAAAAGGACGAAATGGCGTTGAAGTCACCGCCCAGCAATGTTTGTGT\n-+WTSI_1055_1a03.p1kpIBF bases 1 to 312\n++\n !96CBHOOTTTYYYQMK???OOTYTTTNNNYYYYNIIIFFIIIIIIIYOOOMAA62.((((*,9@MIIIIO?A3007OOOMMII::%%%::AEHIIIQYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYTOOKKKKKYMMYYYKIINNNTYYNIIIINYYYYTOLKKKOOKKKKOLTTYYYYSSSSYYYYSSSSSSMMSOOTLLLONIDDDNOTTYQQMMMMPBB9>BDOOTTQMMMMQMMMQQE:666QQYYPMMDDDADDM@B<FDBBDKKKKKKKKIGKINIFFFKDGGIDB?2/\n @WTSI_1055_1a04.p1kpIBF bases 1 to 186\n TTACCCGTCGGCGCCGAAAGAGCCGAAGGCTTTGTGACTGAGGCCGGACACTGTGCTGTTAAGCTGGACATTGCCCGACCTGTCGAGTGCGCCGCTCGCCGAAATTCGTTATCGCGTAAATTTATTTATTTATTTTTATTTTTTTAAATAAAAATGACGACTAATTTGTAAGGGCATAACAACAA\n-+WTSI_1055_1a04.p1kpIBF bases 1 to 186\n++\n !,,,./644,,,-0377<:Q777<BB<<60,+.,+,.4.,))))//15>>550007:66>>==7@71/--0:<CDBB;;49/***/***22,/+)))11===798:3.,,1488?133??BKKMODFB?BDB7447B?:8--.E:F?B77?BKKC<<322B:..<41,46>>B<<::::5116..\n @WTSI_1055_1a04.q1kpIBR bases 1 to 359\n TGATTACGCCAAGCTATTTAGGTGAGACTATAGAATACTCAAGCTTGCATGCCTGCAGGTCGACTCTAGAGGATCCCAGGGTACCCGACGTCCGATATCGCGAAAAATGATGTATCTAGATTTGTCAGGAAACGTCCCCGAGTCTGTTCGACAAACAAACGTTATTCCGAACTCCCAACAACAGTATTTGATTGTGTAAAAATCTCTTGGCCTGATTACTATACTTTAGACATTTTTAGTGCCTGTATTGGAGGTATTTTAGGAACTTTTGGAACGAGCTTTTATCGATTTAGGGAACTAAAAAACCGTTCCATATTCATTAGATGCTATTATTTAAAATCCGAGTCTGATTTGCGAT\n-+WTSI_1055_1a04.q1kpIBR bases 1 to 359\n++\n !41>;D>AA>;;=;;>>AA@@CDDAA>>>ADINIIHHDD>::79:>>FIICCCHHHHCCCCCCCCCHHHHIEA>9..''))**,,++''+)**.,,,-,00..0B+..33010701+++-1B1.,??KMOYYQQQQ<<61,))01<:CAIIIIIYYYYTYTTTTYYYYYTTTTNNKKKKYYYYYYYYYYYYPMMOKTTTTYTTTTTYNINNINTNTIIIIIIIIINNYYYYYYYTTOLKKKIIIINNNOKKKKKFFKKYYYYYYYYYYSSMMMQMYYYYYTTTTLLPIDDDDDDFFFFFFMMKKLNIDFFKQQMMMMMMMMHHFF>A>>:779=5<488>>7745/00::300+++0-\n @WTSI_1055_1a05.p1kpIBF bases 1 to 642\n CGTGCCAGTTCTAAACTGGTCGTTCAGCGCCAACCGAAGTGCATACCCTGACGAGCATACACGCAGCTGAAGCGCTCCACAAGCAGCTCTCACCACTAGTCCACGCACCACCCCGCAAGGAGACGGCACGCAGCCACGGGCAAAAGCCGCCTGTTTCACACAACAGCCCGGCTGACCCGACCTTTAGAGCCAATTCTTTTCCCGAAGTTACGAATCTAATTTGCCGACTTCCCTTACCTACATTATTCTATCGACTAGAGGCTGTTCACCTTGGAGACCTGCTGCGGATATCGGTACGATCAGGCAGGAGATTCATATCGCTTCCCTCGCATTTTCAAGGGCCGTGTGGAGCGCACGAGACACCACAGGAACCGCGGTGCTTTACGGGCGCAACATCCCTATCTCAGGCTGAGCCACTTCCAGGCACGCACGCCCTAAACCAGAAAAGAGAACTCTGGCTCGGACTCCACACGACGTCTGCGAGTTCATTTGCGTTACCGCGCGAAACAGTTCTTGCGAACCGTCATTTCCCTGGCCTGGCGTGGGAATGTTAACCCACTTCCCTTTCGGCAACCGGATGGACAAACTGCGCAAGCACAGCAAAGTCTTCATCCGTAGTGTGTGACGGCATTAGCCGGTGC\n-+WTSI_1055_1a05.p1kpIBF bases 1 to 642\n++\n !<>AIHHCCCCCCCCIIIINNNNNTTTYYYYYYYYYYTTTTIIIIHHNIIIFDKFDDINNNTTTNIIIIINTTTTTTTYYYYYYTNNNNNTTYNIIIIIINNYYYYYYYYYYYYYYYYYTNNNNNTTTTTTYYYYYYYYYYYYYYYYYTLLJJJNNTTTTYYYYYYYYYTNNJNJLLTYYYYTONJJJOOYYYYYYYYYYYYYTTTTLOJJJJOOYYYYYYYYYTTTTTTYYYTTTTTTYYYYYYYYYYYYYYYYLJJJJJTYYYTLLLTOTJJJJJKKOYYYYTJNJJJOOTOOIIIILKYYYYTINDDDEEOSYYYYYYYYYYYYYYYYYYYYYYTTLTTTTTTTINIIIOYTKB888>>KMYYIIFIIITKYYYYKKKTOTYYYYYYYYYYYYYYYYYYYKIDDDD>>444>BKLKIIGGDIOYYYYIYYYQIIII@@7507>43--/<<IAAIIII>559==A@IIB>>===KMQM??/33?BIIQQIIFCCFCCFIIICIHA?@F>:>:>>=3...08AIIIMIQQQQCCCCQC:>=:6:>:>>IICA>>>>IFCCC>:>AA>99>;>AACAA>>>::7;7AIII>>>:>>IAI>833688949>@C>:>A;98777=;>99::>4755057132+\n @WTSI_1055_1a05.q1kpIBR bases 1 to 219\n CTGTGTACAAAGGGCAGGGACGTATTCAGAGCGAGTTGATGACTCGCCCCTACAAGGAATTCCTCGTTCACGGACAATAATTGCAATGTCCGATCCCAATCACGGCAAATTTTCACCGGTTTACCAACCCCTTTCGGGGAAGGACAAGCACGCTGATTTTGCCAGTGTAGCGCGCGTGCAGCCCCGGACATCTAAGGGCATCACAGACCTGTTATTGC\n-+WTSI_1055_1a05.q1kpIBR bases 1 to 219\n++\n !>>>>>DDIFKOOTTTNDDDHHFTTOOKKKYYTTNNNIYYNNNNNNYTIIIIITIFNIDDKKKNNIIIFIITTTTNNNNNINIINGIKMYYYYYOTTTTTYKKLMMMYYYQOOAAAAIQ;7:<<<A>=AAQA>><<<>7::77::7>>IIIAAAA>:>A=>>5:88::=BIIIIIIIII>>7;9733999=8370---128999::14.,0,,0442+\n @WTSI_1055_1a07.p1kpIBF bases 1 to 574\n AACGACGGCCAGTGAATTGTAATACGACTCACTATAGGGCGATTTCGAGCTCGGTACCCGGGGATCCCACCGGTACG"..b'AAAACTGATCAGGCGAACTGAAAGGGTGTAAAAAAGATAAAAGAAATTGTAAACGCAGCACATTGTCAAGCAAAGCAACCCAAAAAAATCGATTTTGAGTATAGTCAAAAAGGGTTACCCGTCAATGATGATCTGTTGCTGTTTGTTTGATACTCCTCCTTTCAATTTGCGATTGTTGTTGTTGCAATTGGCACGCGAA\n-+WTSI_1055_1f24.q1kpIBR bases 86 to 670\n++\n !88BHIQQQYYYITTTTIIINNIIIIKKKYYYYIIIIFFYOMTTTYYIIIIAA99//.1<BKKOOTYYYYTTTTNNTTINNNTTYTTNNNIIITTYTTTTTTTTYYYYYIIIIIOYYYYYYYYYYYTTTTTTNNNNTTYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYTTOTLLYYYYYYYYYTTTTTTTTTTTTTTTTYYYYYYYYYYTTTTTTYYTNNNNNTYYYYYYTTTTTTYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYOKKKOOYYYYKK???KQMMMPPPPQMMKKKMPYYYKKKKKKKKKKMMYYYYYYYYYYYYYYYYYYYYYYYYYYYYYQQQQQI51)%%)4<QQQQQQYYYYTTKTTTTTTTYYYYYYYNNNNNNYYYKKKKGGNNNNYYYYYYYYYYYQMMMMQOKKGIIKKKKYQYYYYYYYYTOOLKKIIIIIOYQQQQQQBA>:;AABAACCCIIIOIIBBIIIII:77<><AAIIIOQQIE=>>>CA>AAABBIIIIIII:00882389667>BAAA?A>77:<844>A?;4++0966.+4492000--4922./..++\n @WTSI_1055_1g01.p1kpIBF bases 1 to 584\n CAAATCCTACTGGCCGGACAAAAGAAGCGGCCAAACAACGTGCTCTTCACAAGACGATCACCACCAAAAACATTCACACATGCTCAACGAGACATTGCTTGCAGGATGGCAAGTGCAGGAAGCACTTTCCGGTGCATTAGTTTACACTGACTATGTAACCTATTGTTAATTCCCTGTAGAAACCGTTTGAGTACGACACTGTGTACTCTGAAAATGCCTACCCTCGCTACAAGCGCCGCCCACCTCCGCCTTCACTCCAAGAAGCCCAGCAGAGTCCGGAATTATACGGGCGCGAAATGCAATACAAGGACCAGCGTGGCAAACTAATTCGCAAGGACAACTCTCACGTCGTGGCTTTCAGTCCATTTCTGTCAAGCAAATATGTCGCTCAGTAAAATTAATACTTTTTGTGACAAAATTGCTAACTTTTTTGCAGCATTAACGTCGAGTTTGTCGCGGGAGAAGGATGTATAAAGTACTTATGCAAGTACATGATGAAAGGAGCGGACATGGCCTTTGTCCAAGTCACGGATGCCAACACGGGCCAAAGTGCGCTGAACTACGACGAACTGCAGCAAATTCG\n-+WTSI_1055_1g01.p1kpIBF bases 1 to 584\n++\n !333;>HCDHHIIIYIIINTTYYYYTTTTTTYYYYYYNIIIIIININNTONB81+++04HQYTTTTTTTNIIINNTTNTTTTTTTTYYYTTTTTYTTTTTTYYYYYYYYYTTTTTTYYYYYTIIIIIITTTTTTTTTNNNNNNTNNTTTNNNNNNNNNNNNNNNNTTTTTYYTNNJJJJLYYYYYYYYYTTTTTTYTNNNNNNTYTTTTTTTTYYYYYYYYYYYYYYYYYYYYYYYYYYTTTTTTYYYYYYYYYYYYTNNNNNNTTYYYTNNNNNTTTNNNNTTYYYYYYYYYYYYYYYYYYYYYYTNNNNNTYYYYYYYYYYYYYYYYYYYYTNNNNNTYYYYYTTTTTTYYYYYYYYYYYYYYYYYYYYYTTTTTTYYYYYYYYYYYTKKKTNNIIINTYYYYYYYYYYYYYYTTTTTTYYYYYYYYYYYYYYYYYTTTTTTOIICBBOQQQQQQC;<88:>>>CIFOYYYYYYQQQQQQQQQCCQQQQHCBAA:AAAAIIA>;A>AAAIC>>AAAACA>>>>III>::>AAACCCIIIA:;==<IIIIIQQAA<:::IA==::8::CQIIIIAA>>CI92\n @WTSI_1055_1g01.q1kpIBR bases 1 to 350\n TATGACTGATTACGCCAGCTATTTAGGTGAGACTATAGAATACTCACGCTAGCATGCCTGCAGGTCGACTCTAGAGGATCCCAGGATTGCTTTTTGGCTCGCATACTGCAGCCTGGGGAAGTAGTTGACGTTTTGAAGAATTGAGGGAAGTTGACGTGAAACGGCAACGCGGAGCAGGTCGGAAATCGCTTCGCTATCAGAGCCAAGCAACGAAATGGCGATTGCGCTTAAAAAACATTGGTTTGCTTAAAACATCAATGGTCTTCACCGGTAGAAGCAGTCGCCTAGACCAACGTTGTTGACGCAACGAATGGTGTTTTGCTGCTGGGCAGACGTGGGCGGAGTGCTA\n-+WTSI_1055_1g01.q1kpIBR bases 1 to 350\n++\n !..+---77CBI>7---77>>>DACCCHHHIDDDDCCIHHAA84)))%%%))+,32>>HHHHCCCCCCCCCHIIIIINN<B.,,,+++2.22OBNDHHHHHIIDDDDIIYTNNNNNTTTIIIIIITTTTKKYYYYYYYYYYQOB84-,,.<>FIIIIINNNIIIKKMSSSIIIIIIIIIIIILTOOIIIIIFLLLLLLYYSKKLKKKPMSSYSYSSMSS?KKKKFFFIIFKKKKKKKKSMMMSKKIDDDKKKFDDFFFBBDD=DDMMMKDDDDDDKKFFCCKKKKKFFFKKKKFMMMMMKKKKKKKK734:4B<??B@DC=<871<1314/--,,+++++.-5:97--,\n @WTSI_1055_1g02.p1kpIBF bases 1 to 523\n AACGACGGCCAGTGAATTGTAATACGACTCACTATAGGGCGAATTCGAGCTCGGTACCCGGGGATCCCACGACAAATTCACGGAAGCGTCTCGCACTTTGTGCCGAGGACTGCTGCACAAGGAGCCCACTCTGAGGTTGGGCTGTCGCCGGGTCGGCCGGCCTGAGGACGGCGCGGAAGAGCTGAAGGCACACGCGTTCTTCACACAACCGGACCAGAAGACAGGCAGGGAGCCAATTCCGTGGAGGAAGATGGAGGCCGGCAAGGTGGACGACATTCCCTTCTGAACTGCTAGAGAGGACTTGTAGGAATTCCGTCCTTCAGCTGACACCTCCATTTTGTCCGGACCCCCATTCGGTGTATGCCAAAGATGTGCTGGACATCGAGCAGTTCAGCACTGTCAAGGGAGTTCGTCCGCTTCCACCAAACTTTTCCTACCTGCTGAACCATTAGGTTCGACTTGACGCGACTGACAACTCCTTCTACGACAAGTTCAACAGCGGGTCCGTGTCCATACCTTGGC\n-+WTSI_1055_1g02.p1kpIBF bases 1 to 523\n++\n !08<=AAA:28::87;<::>ACECEIIIIIIIIIIINIKBB>C>QQYNHHHHDDHDHIITIDCCCCOONNNNGDFDDINMINNNNNIHHHHHIINNIIINNNNTYTIIIIDDIIIIYYYTTTTTTYIIIDDDGGITYYSKKKIDNNNNTTNNNNNTYYYTLLLLLLLLLLLYYTYJJJJJNTTTTTTTTTTYYOLLLTTOOOTTTTTTTYNNNNNJJJLLLLLLYYYYYYYYYYSSYYONNNNNNLLTTTTTTTYYYYYYYYYYYYYYYYTMMKKKYYYYYYYYYYYYYTTTTTOOLIILLLLTTLNLLLLLLYYYYYYTTTLLLTTTTTTTYYYYYYTTTTTTTTTTTYYYYYYYYYYYYYYYYYNIIIIITYYTTTLTTNIIFFFMYYYYYYYOOLKKOOTIFIFIINTTTTYYYYYYYYYYYYYYYYYYYYYYTNNNNNNNNTYYYYYYYYYYTTTNNNNNNNNTNIIFFFKYYOOOOOIIIA<:77:<<>>>>IOOIHHHDDEIQMMII<924595/4\n' |
b |
diff -r 528ba9c896e0 -r 09f9f0e29e47 test-data/sanger-pairs-reverse.fastq --- a/test-data/sanger-pairs-reverse.fastq Wed Sep 18 06:13:27 2013 -0400 +++ b/test-data/sanger-pairs-reverse.fastq Wed Aug 05 11:06:38 2015 -0400 |
b |
b"@@ -1,288 +1,288 @@\n @WTSI_1055_1a04.q1kpIBR bases 1 to 359\n TGATTACGCCAAGCTATTTAGGTGAGACTATAGAATACTCAAGCTTGCATGCCTGCAGGTCGACTCTAGAGGATCCCAGGGTACCCGACGTCCGATATCGCGAAAAATGATGTATCTAGATTTGTCAGGAAACGTCCCCGAGTCTGTTCGACAAACAAACGTTATTCCGAACTCCCAACAACAGTATTTGATTGTGTAAAAATCTCTTGGCCTGATTACTATACTTTAGACATTTTTAGTGCCTGTATTGGAGGTATTTTAGGAACTTTTGGAACGAGCTTTTATCGATTTAGGGAACTAAAAAACCGTTCCATATTCATTAGATGCTATTATTTAAAATCCGAGTCTGATTTGCGAT\n-+WTSI_1055_1a04.q1kpIBR bases 1 to 359\n++\n !41>;D>AA>;;=;;>>AA@@CDDAA>>>ADINIIHHDD>::79:>>FIICCCHHHHCCCCCCCCCHHHHIEA>9..''))**,,++''+)**.,,,-,00..0B+..33010701+++-1B1.,??KMOYYQQQQ<<61,))01<:CAIIIIIYYYYTYTTTTYYYYYTTTTNNKKKKYYYYYYYYYYYYPMMOKTTTTYTTTTTYNINNINTNTIIIIIIIIINNYYYYYYYTTOLKKKIIIINNNOKKKKKFFKKYYYYYYYYYYSSMMMQMYYYYYTTTTLLPIDDDDDDFFFFFFMMKKLNIDFFKQQMMMMMMMMHHFF>A>>:779=5<488>>7745/00::300+++0-\n @WTSI_1055_1a05.q1kpIBR bases 1 to 219\n CTGTGTACAAAGGGCAGGGACGTATTCAGAGCGAGTTGATGACTCGCCCCTACAAGGAATTCCTCGTTCACGGACAATAATTGCAATGTCCGATCCCAATCACGGCAAATTTTCACCGGTTTACCAACCCCTTTCGGGGAAGGACAAGCACGCTGATTTTGCCAGTGTAGCGCGCGTGCAGCCCCGGACATCTAAGGGCATCACAGACCTGTTATTGC\n-+WTSI_1055_1a05.q1kpIBR bases 1 to 219\n++\n !>>>>>DDIFKOOTTTNDDDHHFTTOOKKKYYTTNNNIYYNNNNNNYTIIIIITIFNIDDKKKNNIIIFIITTTTNNNNNINIINGIKMYYYYYOTTTTTYKKLMMMYYYQOOAAAAIQ;7:<<<A>=AAQA>><<<>7::77::7>>IIIAAAA>:>A=>>5:88::=BIIIIIIIII>>7;9733999=8370---128999::14.,0,,0442+\n @WTSI_1055_1a09.q1kpIBR bases 1 to 558\n TGAGACTATAGAATACTCAAGCTTGCATGCCTGCAGGTCGACTCTAGAGGATCCCACCCAAAAAAAGTTTAAAAATTCGGAATGCGCTGTTTTCTTGGGTAAATATAAAGTAGGGTCCGGATTTATATTGTCTAAAACGCGAATTGACTTAAAAGATTGACCAAAAAAAGCCTAAAGTCCAAACTCTAATCAATAGAATAAAATGTTGGCAGAAATTTACGTCATGCAAAGGGTGTGCCAAATGGTTGATTTTGTGATTTTGATTTAATACAGAGGGTGCGAGATCAACTGAAATTTTGAGTAAATGCCGAGAGACTTTTTGTTTTTCAATTGTAATTTGAAGTTGGCCCTCTCTCCCCCCGACCGACAGTGGTACTCGGATAATCAGCCGAACAAACAAATATTCGTAGTGTTAAACAGAAGGGAAAGATGTAAGGTAACATTGGATTAGTTTGATGATGAGGCACTGAATTAAGGACAACTTGGTTATTATTATACATCCATGTGATTGTGAAGATTAAAGATGTTCTGGGACCAGGATGCCTTTGGAGAGGTTT\n-+WTSI_1055_1a09.q1kpIBR bases 1 to 558\n++\n !=>>>>>>>DIIIHHDHB99-//66@DIHHHHHHHHHDDCCCCCDHHIIDID@D>C=@KKYYYYKKTIIIIIIYNNIFFFIIMTIDDDDDHHHHDDKFFFIIDDHHHDDDHHHINNINIYYIIONNNINLNNNNNTYYYYYYYTNLLLLLLOOYYYYYYYYYYYYYYYYTTTTTTTTTTTTNNLLLLLLTTNNNJJJNNTTTYYYMMLOOKYYYYTTTTTTYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYTTTTTTYYTTTTTTYYYYLTMTTTTNNNNLLTTTTTTTTTTLLTTTNNNJLLTTTYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYTTTTTTTTTTTTTTTTYYTTTTTTYYYYYTTTTTTYYYYYYYYYYYYYYYYYYYYYYYTTNNNNNNTONIIINNNNNNNKYYYIOINIIQMOOTNNNNNNNNNTTYYITIIIINNNNNIKKTTTTKTYYYYYYYYYYYYYLF@@@FBC>>=697038<<IIM88+++89I@QAI>::44--344;<><0056699:<9\n @WTSI_1055_1a10.q1kpIBR bases 1 to 431\n AAGCTATTTAGGTGAGACTATAGAATACTCAAGCTTGCATGCCTGCAGGTCGACTCTAGAGGATCCCACGTAAAAATCGAAAACATAGAAAAAGAAGCAAAGACCGACCGAACCGGTGGGAGAAAGGCTGAATGGGGCATGATTGGGGGAGGGGGGGAAGGTGACGAACCGAACGAATAAATGACAGGACGAGTTTCTCTTTTCTTCTTGGGTTTACATGTGTTGCGTGACCTTCTGAAATGGGCATTCAATGGATGATTGGGAGGGGGGGGGGGGAAGAAGGCCGACCACAGGTTGAATTTCGACTTTCTTCTAATTTTGCCCAACTTTCCCGATGGGGAAGGGCCTATGACCATTCGGTTTTGCAATGAAATCTGCCAATTAAACATCGTCCTTTTTCGTATCTGTGATGGTATGTCGATGGGGTGCG\n-+WTSI_1055_1a10.q1kpIBR bases 1 to 431\n++\n !9;75;;>;>>ACCCC@CCAADNNNNNIIF>>4::>>FFFDDDHHHHHHHDHDDDHHHHINHIIDD>42-55DFIIIIILYYKIIFIIINNYYYYYYYYYLTINNITTYYYYLONIIIILYYYTIIFIFFIMMSSSYSKKLKKOOTTTYYYYYYYSSSYYYLJJJJJTYYYYYYYLTTTTLYYYTTTMOLYYYYYYLLLNLIJIIIILLLYYTTOLKJJKKKTYYYSGGLLLLNLLKKFMJSSSMPMSSMMMSSYYYYSSMKKKKJJMMPSSMB>,,+++>9DDKKKF@@888F=?DFSK==19/99OFB11,,.,,/,.<E99,,,/9:?FB:0//002613../--,,,,.,,,,,-/0910/+-,0..,++..4+;+++4-,,,4./,//66B?54-,,.,,,,48+++2++,,+,,:6=1859/.,\n @WTSI_1055_1a11.q1kpIBR bases 1 to 301\n CGAAGGAAAGGCGGCGGAGAAAGTTTCGTCGTTGGCGGAAAAGCCGATGAAACGCGGGGGACGAACGAAGTTTGTGTTTTTTTTAAAAATCTTTTCTCGACGGTTTCCAGGGAATTGGCCAAGTCCATGGACAAAACCAATGCCAACGGTCCTTCGTCCGCTGATTCATCGACTTCGTGTCCCGGGAGCGCGGAGTGCCGCGGCATCCGCCTCAACAGAAAGGGCGTCAGCCGTCGTCCAACCATCACAGCGCCGTTCCCAAAAGCCGTGCCCCCTCGCGCAGTCGTTCGCCTCCACGGT\n-+WTSI_1055_1a11.q1kpIBR bases 1 to 301\n++\n !DDDDEIOTNNNNNTFDDHHHITINNNNNNNNNNNNIITYTTNNIILOYYTTTTTYQKDFFFFKOLLFIIIINTTTTYYYYHHAADHSYYYYYYYYYYYYOTTTTNTTTNITTTTTTNN"..b'IHDAA==8??FFDHHIIFYYYYYYYYYYYYYNNIIIINNTTTYTTTYTOOLYYYIIIILLYYYYKKYYYYYYYONNNNNTYYYYYYYYYYYYYYYYYTTTTTTYYYYYYYYNTTTTLYYYYYYJLLJLLYYYYYYYTTTTNNTJNNTLLTTTTTJTTTTTTTTYYYYTTTTTTYTTTTTTYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYTTTTOOYKKLIIIIIIYLMKKKOOTTTTTYYYTNIIIIITTTYYYYYYYYYYYYYTTTTTTYYYYYYYYYTTTKKKNIIITTYYYYYIIGIGB@=@@FFNNIIKKKMHFFQIIFDDDDDKMKTIIIIOOKIIIIIOOMCBAAAAAQABEHIEIAA::0++1569>>>6///-\n @WTSI_1055_1f20.q1kpIBR bases 1 to 451\n AGCTATTTAGGTGAGACTATAGAATACTCAAGCTTGCATGCCTGCAGGTCGACTCTAGAGGATCCCACGAAATGTGTGTGATATTTTAATGAATAAACTTCTTTTTTAATATCATATTAATAATTATTGTATCGTTTTACAACTTTCTATTCATATACTTTTCATCATCATCCCATCCGGTATCACTGCTCCTCCTCCTGCGCCCACCGGCCATCAGTCACTTTCGTGTCATTCCGTCGACAGTGTGGTGGTGGTAGTCAAAATTTGTTGACGGAAAGCCTCCAAAAATTGTTGAAATTGGCCAGCCGTGAGGCCCATTGCCATCCGCGGGTGGCATTTGAACTGTCCGCCCCAGTTTGGTGCCATGGCGGACGCCGCATTCGTCGCGTTGCCAGCCGATCCTCAGCAAAGCCGCTTGGCCCACCGCCGGTGGGCATGTGCCGTTGTCGA\n-+WTSI_1055_1f20.q1kpIBR bases 1 to 451\n++\n !;>>>>>>>>>DDCC@CCDDDFFIINNNGEA=>@FFFFFHHHHHHHHHDDHDDDDDHHIIDFDDFDEDDKFIIIIINNIFFNNNIIIIIIYNTTTIINIIIIIOHHDDDDNIIIIIIIHHHHHHHHGDFIIFFINHLLLLLNNNNLNNNNNJNNNLLLLNLNNNNNTTTTTNNNNNNYLNNNNLNJJLNTTTYYYTTTMLOYYTTTTTLYYTTTNJNTTTYYYYTTTTTTYYYYYYYSSSONNNNNTYYYYYTTTTTTTTTTYYYYYYYYYYYYLTTOOLFFIOOOOOOOOYTTTTTTTKTTTTYYTNIIIIIITTYYYYYYYYYYYYYYYYYYYYYYYYYYYYYPPPPPQOIGGGNNIIIIT?<5..8A82,+-..140011199>AAAA;;:<<A>>>@BAADDFDIKIIOIBBIIEII>:338:<II@B77/6-20;;IOA@;;91,\n @WTSI_1055_1f21.q1kpIBR bases 1 to 336\n GATTACGCCAAGCTATTTAGGTGAGACTATAGAATACTCAAGCTTGCATGCCTGCAGGTCGACTCTAGAGGATCCCAACAAGGATGCGTCTGCTTGTATAACCGGTAATCAAAAATGTGCAAATAATAAAATTGAGTGCATTTACAGGGAAACCGATCGTTGCTGGCGGTATTCATGGACGTGTTTCGGCCACGGGCCGTGGAATTTGGAAAGGGTTGGCGGTCTTCGTCAACGACAAGAACTACATGAGCAAATTGGGACTGACGACTGGATTTAAGGGGAAAACGTTCATCGTCCAAGGATTCGGTTTGTTTAGGGGAAAGGCATTGAAGGGG\n-+WTSI_1055_1f21.q1kpIBR bases 1 to 336\n++\n !1>;CCCIFCCA>>>>A;>>ADDDDDDDDDDFIIINNNNNDDDDDDFFKIHHHHHHHHDDDDDDDDDDHFFINNKKPPPPOTNNNNIHHHDDDDDDHHHIIINIIIIITYYYYYYYYYYYTNNNNNTYYTTTTTTTTOLLIJJLLNTTYJNNNNNTTTTTNNNNNNYTTTTTNTLLKKYYOTTNNNNNNNTTYYSSPSSSSSSYYYOTOOOYYYYYYYYYTIIIIIITMOKIKNNNNIITNNOLKKMQKKOOTTYQQKKKKLKKKIINNHDFKOOOKKMQMMPPYYYTTTTTTYTTTTNNNNNNKFCCQQYYMMFF<<79?A8335:<:6-2+++\n @WTSI_1055_1f22.q1kpIBR bases 1 to 496\n CTATTTAGGTGAGACTATAGAATACTCAAGCTTGCATGCCTGCAGGTCGACTCTAGAGGATCCCGCATGAGGAATCGGAAGAGAATAATAACAAGAAAATGACAGATAAAAAGAGTGGAATTGAAGTAGAAGAGAAAAAGGGTAGAGTTGTAACAGAAGAGAAGAAAGTTTTAAATGAAGCGGAAGAAAAGAAGGACGAAGATCAGACGGAAGAGAAGAAAGAAAATGAAAAAGAAGTTAAAAGAAATAATGCGGAAGAGAAGAAGAAATTGGATGAAACTGAAGAGAAGCCGGATGAGGAAAGGGGAGAAAAGAAGAGCAGAGCTGAAGTGGAATTGGAAGAAACAACGAAGAAGAATAATGGACTTAAATATGTTTGGAAGCATCAAAATGAATCGGATGTAAAGAAGTACGAAAACATAATGGAAAGTATGGACGAAAAGAAAATGGAAGAGAAGGAGCTCGTGGACAATTACAGTAATATTTTGTTTGGAA\n-+WTSI_1055_1f22.q1kpIBR bases 1 to 496\n++\n !399>>>>CHHHHBDDDEIIINNTIIFDA>AAAADDDDDDDDDHHHDDHDIIIIIINNNOOBB+++89DFIKKFFINNTTYYYTTTLLLKKKOOTTOLYLLOLTTTTTTTYYYYYYYYYYYYYTIIIDDDFFKOTYYYYYYYYYYYYYTTTLLJTTTYYYYYYYYYYYYTTTNJJLTTLLTTTTYYYYYYYYYTNNNNNTLLMKNNNNNNTTTTTTYYYYYYYYYYYYYYYYYYYYYYYYYYYYYTLLKKKYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYTNNNNJJLNNNNNNNNNTTTTTTNNNNNTYTNNNLNNNTTTTTNNLLTTTTTTTTYYYYYYYYYTTNLLLLLLNNNTLYYYYYYYYYYYYYYYTTTTTTYYYYYYYTNNNNNTTTNNNILOOTINNNNNTTTTMYMMMYIIINFFIIIGINIIIIKLLTOKKKMGGDFFFGFFFFFFFFFNNNIN?CCMQ<<3<<D<<+,.66>>F=;>:5.\n @WTSI_1055_1g01.q1kpIBR bases 1 to 350\n TATGACTGATTACGCCAGCTATTTAGGTGAGACTATAGAATACTCACGCTAGCATGCCTGCAGGTCGACTCTAGAGGATCCCAGGATTGCTTTTTGGCTCGCATACTGCAGCCTGGGGAAGTAGTTGACGTTTTGAAGAATTGAGGGAAGTTGACGTGAAACGGCAACGCGGAGCAGGTCGGAAATCGCTTCGCTATCAGAGCCAAGCAACGAAATGGCGATTGCGCTTAAAAAACATTGGTTTGCTTAAAACATCAATGGTCTTCACCGGTAGAAGCAGTCGCCTAGACCAACGTTGTTGACGCAACGAATGGTGTTTTGCTGCTGGGCAGACGTGGGCGGAGTGCTA\n-+WTSI_1055_1g01.q1kpIBR bases 1 to 350\n++\n !..+---77CBI>7---77>>>DACCCHHHIDDDDCCIHHAA84)))%%%))+,32>>HHHHCCCCCCCCCHIIIIINN<B.,,,+++2.22OBNDHHHHHIIDDDDIIYTNNNNNTTTIIIIIITTTTKKYYYYYYYYYYQOB84-,,.<>FIIIIINNNIIIKKMSSSIIIIIIIIIIIILTOOIIIIIFLLLLLLYYSKKLKKKPMSSYSYSSMSS?KKKKFFFIIFKKKKKKKKSMMMSKKIDDDKKKFDDFFFBBDD=DDMMMKDDDDDDKKFFCCKKKKKFFFKKKKFMMMMMKKKKKKKK734:4B<??B@DC=<871<1314/--,,+++++.-5:97--,\n' |
b |
diff -r 528ba9c896e0 -r 09f9f0e29e47 test-data/sanger-pairs-singles.fastq --- a/test-data/sanger-pairs-singles.fastq Wed Sep 18 06:13:27 2013 -0400 +++ b/test-data/sanger-pairs-singles.fastq Wed Aug 05 11:06:38 2015 -0400 |
b |
b"@@ -1,224 +1,224 @@\n @WTSI_1055_1a03.p1kpIBF bases 1 to 312\n TTGTTGAACAGCAAAAAGGTCAAGAATATGGATGTTCTCGCCATGATTTTTGTGCCATAGGCGCGCATTCACAAGGTCCATCAGTCGNTCAGCCTGCCGCAACACCACCACCAGCCGCAGCAACAACAACAGCACCAGCAGCAGCTGATCCAATCGCATGTGCCACAGAATAACACCCAAAATCAATTAGCGACGGCCGCCCTCCAGCCGGTTCAGCAGCAGAAACAGCACGAAAAATGGGATCCGATCAAAGAATTTGGGCTGCAAAAGGACGAAATGGCGTTGAAGTCACCGCCCAGCAATGTTTGTGT\n-+WTSI_1055_1a03.p1kpIBF bases 1 to 312\n++\n !96CBHOOTTTYYYQMK???OOTYTTTNNNYYYYNIIIFFIIIIIIIYOOOMAA62.((((*,9@MIIIIO?A3007OOOMMII::%%%::AEHIIIQYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYTOOKKKKKYMMYYYKIINNNTYYNIIIINYYYYTOLKKKOOKKKKOLTTYYYYSSSSYYYYSSSSSSMMSOOTLLLONIDDDNOTTYQQMMMMPBB9>BDOOTTQMMMMQMMMQQE:666QQYYPMMDDDADDM@B<FDBBDKKKKKKKKIGKINIFFFKDGGIDB?2/\n @WTSI_1055_1a07.p1kpIBF bases 1 to 574\n AACGACGGCCAGTGAATTGTAATACGACTCACTATAGGGCGATTTCGAGCTCGGTACCCGGGGATCCCACCGGTACGGAGGGAAATTTGATCATCGCGGAAGTGCTCGTTTTGATTATCTTGGTGTATGGCGTCTGTGACCTTCTTTTTCGCTGGATGGGCATCGGGGCGTACGCCTGGGGTTCGCGCTCGAGCCCCAAAATCGCCCTCACTTTCGATGACGGGCCCAGCGAACACACCCGGTCCTTGCTCGAGCTGCTGCACCGCCATGGGGTAAAAGCTACCTTTTTTGTCACCGGCGTTCAGGCCGAGCGGCACCCCGACTTGCTAGAAGCCCTGCGGGCCGATGGCCATCAGATCGAATCGCACGGCTACTGGCACCGCCAAGCGTTCTTCCTGTGGCCTTGGCAAGAAGCGCGGCACATCCAACGGGTTCCGGGCAAACTATACCGCCCCCCCTATGGAGCCCACTCCCCCTTCACCCGGCTTCTTGCCCGGCTCCACGGCAAAGTGGTGGCGCTATGTGACCTCGAGTCCAAGGACTGGACCGACCGACCTGCCGAAGAACTGGCCG\n-+WTSI_1055_1a07.p1kpIBF bases 1 to 574\n++\n !>>>AAA:9.4441+35:88;;CHIIIIIIDDDCCCH>Q35-+*46?>CHHHHHHHHIIYOHHHHHTTYTHA72-35>:>DAKHHHQQTTNIIFIGNYNNNNIIIIIINTTYYFFFDDHIINTIIIIIITIIIIIIDDDDDDIIOTNTLIIIKLOYYYYYYYYTTTYYNNNNIIINNNNTIIINNLNIIINYYYYYYSSMMSYYTTMMKLLLNNTTTTTTTTLLKLLYTTJNLJLTYYYLLLLKLLTLLKKKLLTTTTTYYYYYYYTTTTTTTTOOKYLOTTTTYYYYYYTTTTTTYYYYYYYYYYTNNNNNTIFFFIFIIIIIOKKKYKKTOOKYYYYYYYTOOTIIOLKIINNNNNTYYYYYYYYYYYYYYYYYMTTTTTYTTTTIIOIIIQIIMIII:99>AAAIIBBIOOYYYYOKCCDAAFFFIOD@@>>>A<<926<QIQQQQMIIIIFDFFFDDFDDDAA===BGKKKKO943>>@B;BB?:?IMYYQB..+2,448:?88888<877:<>A810))*.12889600<<9411799>83,,,84337:<7227470..---.//+,\n @WTSI_1055_1a08.p1kpIBF bases 1 to 397\n TAAACGACGGCCAGTGAATTGTAATACGACTCACTATAGGGCGAATTCGAGCTCGGTACCCGGGGATCCCACCTCCGAGAGCACTCGTGACGAATTGATTCCCCTGCTAAGCATCGAATGCGTAAAGTTAGGGCGTGCTCGTCGGCTTTATGAGAAGGGATTTCGCACCGTCGGATCGATAGCGAAAGCGGAGCCTCGCCAACTCATCGAAGCGTTAGGGGGCAAATTGAGCTGTTGCCAGTGCAGGAGGATGATCAGCAGTGCAAAGGTCCCCGGGGGTTGAGTAAATGGTGCTTAAAGGCCCCGTTCCGGAGACGATAAATTTATTCACTTTCAATTAGAGGCTTCAGAAGCTCAAAATTGTTCGAGTTTTTGTTCAGGCGATTATCCGCGATC\n-+WTSI_1055_1a08.p1kpIBF bases 1 to 397\n++\n !.006<=AA83059:85;<::>CCECIIIIIIIIFIIINIBB1160BBKFDHHHHIIIIIIYOHHHHHTOID?:.-+,*,+.,/5.,*+06:IAA99,,,66??:,++002:0--,,170/442//.44<?33/74323/+****+28;=BBDDB<9...9<:32231644460.1.9/5055@@OB@9552B0492//../1@;99///BBFF11.9444///<BF@=666;@<@66140,,.03;;>>???M::2448HHKKMMMMMPYYOLKKKKYYYYYYYQQMHFKHMKLLKOOYYQMMKFKOOTYTDDDDDDQKKKKKKP?B<FFOIIDIOO?633:?AHII=:77:>IQQ?C?BOOO>=695BBNN1-,88553</..8888,,,425.\n @WTSI_1055_1a15.p1kpIBF bases 1 to 312\n GACGGCCAGTGAATTGTAATACGACTCACTATAGGGCGATTTCGAGCTCGGTACCCGGGGATCCCACGAAAATGTAATTTTTTTTCTTTTAATTTTGTCAACTTTTTTAGCAAAAGCATTGTATTTTAACTGTATATTGCGTTTTGGAGGCAGTCACTGGATTCAAGGGAGCAGACCAAGAAAAATTTTTACAAAGTTTCTAACCCTTTCAAGGTTTTGGACCAATTTCGTAACAAATTTCGCCAAAAAATGTGCATAATTTCTTTTACCACGCCTATCGGCATCAGTAAGTCGTCCCAGTAAAGCTAATA\n-+WTSI_1055_1a15.p1kpIBF bases 1 to 312\n++\n !:AA<4+1441+38::4..A<<BHHHCIIIICHI></4++*=:I>AHHFHDHDHIITIDDDDDOOOOMM@=30++,89QQQQOIIIIDDHHHHYTNNNNHHHIIOIIIIFFYYYYYYYNIIIIIIIIIIHHCC>81**'''(*6:IMMOQOIIIFFFIIILNNTTTTYYYYYYTNNNNIIKKKYTTTIIIMKTKTYTIDDDDDDTTNNIKKIIIIOOYFFFFFDIINNADDIIIKKKOOTLIOONHDKDDKKFFAD>AADMMMYOOOOLKKDIIIMKE966<<KB?>B70////2:B1../004.,,,..,\n @WTSI_1055_1a17.p1kpIBF bases 1 to 201\n AGAATGCGGAACAGCTGACGCAAATACATGTAGTCAGGCGCCTCGTCAAAGCGCGACCCGCGGCAGTAGTTCAAGTACATGNAGAACTCAAAGGGGAAGCCCTTGCACAGCATTTCCACCGGTGTCGACATTTTCTTAAAATGTTCACAAAAATGAACTTTTAATCGTAAAAAGGAGACCAATTTCGGGAACTTGTATGT\n-+WTSI_1055_1a17.p1kpIBF bases 1 to 201\n++\n !<CIIIIIIIITHHIHHHNNNTNNNNIIIIIIIIIIITYOIIIIIOMMQ=6+(%(((,.<<QQIFIIFFIIIIIIHEB::%%%45BB64****4IQQQQOOOOOOYYYYYYYYYYYYYYTTTNNNTMOYYYYOTNNNNTTYYTTTTTTYYYMYYYMMYYOOOK"..b'TCACAAGTCACCATGGTGAAAAGTTCCGTGGTACAAGCTCTAAGCCCGCAGAAAATAAAGGAAGGGCTATTGGAAGTGAGCGGCTTCCACAGCGAAATACCGGTGAAGCTGGACGCCCCACAATATAAACTACAAGTTGCCTTGGCAGACGGCCGTTCGGAGAACCTTGTAGCATATCGGGCCGATTGGATAGTCAGATCCATCCGCAGAGCTGAATGGAGCACCGGGAAAGTGGAAGCAGTTGACGATGAGCCGGATTTGCTCATTGGAATGCCAGAG\n-+WTSI_1055_1f17.p1kpIBF bases 1 to 436\n++\n !08<;=<:404::4.25:9<>>ECIIIIIIDDDDDHIINIMKKKNNNHDDDDDDDDDIIYNIDDDDTDCCCAA;97699;IIITTTTTTNNNNNIIIIIIIIIIITYYYYTTTNNNTTTYYYYYYYYYYYYTTNNNNOO@8@BEIIITTTYYYYNNNNNTNNNNNNNLLLLLLLLNTYTTTTTTTNNNNNTTTYNNNNNTYYYYTTTTTTYYYYYYYYYTNNNJNOYYYYYYYYYYYTTTTTTYYYYYYYYYYYYYYTTTTTTTTTTTTTTTTTTTTTTTTTTTTYTTOMKLYYYYTTTTTIINNNNTYYYYYYTNIFFIIIIYYYYYYYYYYYYYYOOOIINKKKQQYYTTTTTTYYYYYOIDDDDDFTKMKGGINKKINNYKKKKMMMKKKKKKMIHH>>==:?;BAAQ=963;<<<<::;33,4./,591,,\n @WTSI_1055_1f23.p1kpIBF bases 1 to 383\n AAACGACGGCCAGTGAATTGTAATACGACTCACTATAGGGCGAATTCGAGCTCGGTACCCGGGGATCCCACCCCCTATCCCCGCAGAGGTCCATCCAGGAGTCCCAAGAGCACATGGAGAGCACTTTCAAGGCGTTGCGTCGTCAGCTGCCGGTGACGCGCTCCAAGCTGAACTGGCTGAACTTCCATTCCTTCCGCATCACTCAGCAGGAGATGAAGCAGCCGCCCTCGGCCGGCCAGCAACAACAGTCCCAGTGATGGAGCAGTCCAAGAAGAGGAAGCGAGCGAATTTGGAGCATCGCCCATTCATTTCAATTAATACCTTTCCGATTTGTGTACTTTCCCCGACATTTTCGCCATCCAATTATGGCAAGTGAAAGTTT\n-+WTSI_1055_1f23.p1kpIBF bases 1 to 383\n++\n !34:<<<<<;289:87;<::>AACCEDIIIFDDHHHINNTYYYKKNNNIIIIHDDDDDIIYNDDDDDTTYYYFDDAAADFKYMIFFDDDDHDDFIFFIIDDHHHITTTYINNIIIKKKOMIHHDHHIYYYYLYINNNNNOKFFFDENNNNNHGGLLLNLNNNNNYNNNLNJTTTNNNJLINNNNTYYYYYYYYYYYYYYNNNNNNYYYTTTTTYTTTTTTYYYYNLIIIIIIIIIYYYYYTTTTTTYYYYYLIIIIIIILTYYYYTTOOKLYTTTTTTYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYOOIFFIYYYYYYYYYYYYYYYYYYYYYYYYYYYYKKIIIITOYYYQQOIEEAACC>>@=;>5>AAAAAAIB94\n @WTSI_1055_1f24.q1kpIBR bases 86 to 670\n TTGGCACGCAAAAGACGCAATTCTTCAGACGGATTTAAATTGGCAAGAATATCGAGCTAAATGGCAAATGTTTAAAATGGTAATCCCGGAGGAAGAAGACCACGGATTTTTTAACAAAAATGTAAATTTATTTCATGAATTTGTTGCAAAAACCAAAAGGTGCCAAAATATTGATTTACGAAAAGCGCTAACTTCTTCAGCCAAATGCCCTCTTCAAACCCACTTGATCAATCGTTGCACTCAGTGCTTTTTGATCGCCATTTTCTCCACGTCAGATTTAACCAGTCAATTTTGTCATTGGCTTCCTTTCAATGCGGTTGCTGCTTCAAAATCATCTCTTCCATTAAATTCGGGTAACGAGCCCAATGTTCTTGATGCTTCAACGAAAACTGATCAGGCGAACTGAAAGGGTGTAAAAAAGATAAAAGAAATTGTAAACGCAGCACATTGTCAAGCAAAGCAACCCAAAAAAATCGATTTTGAGTATAGTCAAAAAGGGTTACCCGTCAATGATGATCTGTTGCTGTTTGTTTGATACTCCTCCTTTCAATTTGCGATTGTTGTTGTTGCAATTGGCACGCGAA\n-+WTSI_1055_1f24.q1kpIBR bases 86 to 670\n++\n !88BHIQQQYYYITTTTIIINNIIIIKKKYYYYIIIIFFYOMTTTYYIIIIAA99//.1<BKKOOTYYYYTTTTNNTTINNNTTYTTNNNIIITTYTTTTTTTTYYYYYIIIIIOYYYYYYYYYYYTTTTTTNNNNTTYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYTTOTLLYYYYYYYYYTTTTTTTTTTTTTTTTYYYYYYYYYYTTTTTTYYTNNNNNTYYYYYYTTTTTTYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYOKKKOOYYYYKK???KQMMMPPPPQMMKKKMPYYYKKKKKKKKKKMMYYYYYYYYYYYYYYYYYYYYYYYYYYYYYQQQQQI51)%%)4<QQQQQQYYYYTTKTTTTTTTYYYYYYYNNNNNNYYYKKKKGGNNNNYYYYYYYYYYYQMMMMQOKKGIIKKKKYQYYYYYYYYTOOLKKIIIIIOYQQQQQQBA>:;AABAACCCIIIOIIBBIIIII:77<><AAIIIOQQIE=>>>CA>AAABBIIIIIII:00882389667>BAAA?A>77:<844>A?;4++0966.+4492000--4922./..++\n @WTSI_1055_1g02.p1kpIBF bases 1 to 523\n AACGACGGCCAGTGAATTGTAATACGACTCACTATAGGGCGAATTCGAGCTCGGTACCCGGGGATCCCACGACAAATTCACGGAAGCGTCTCGCACTTTGTGCCGAGGACTGCTGCACAAGGAGCCCACTCTGAGGTTGGGCTGTCGCCGGGTCGGCCGGCCTGAGGACGGCGCGGAAGAGCTGAAGGCACACGCGTTCTTCACACAACCGGACCAGAAGACAGGCAGGGAGCCAATTCCGTGGAGGAAGATGGAGGCCGGCAAGGTGGACGACATTCCCTTCTGAACTGCTAGAGAGGACTTGTAGGAATTCCGTCCTTCAGCTGACACCTCCATTTTGTCCGGACCCCCATTCGGTGTATGCCAAAGATGTGCTGGACATCGAGCAGTTCAGCACTGTCAAGGGAGTTCGTCCGCTTCCACCAAACTTTTCCTACCTGCTGAACCATTAGGTTCGACTTGACGCGACTGACAACTCCTTCTACGACAAGTTCAACAGCGGGTCCGTGTCCATACCTTGGC\n-+WTSI_1055_1g02.p1kpIBF bases 1 to 523\n++\n !08<=AAA:28::87;<::>ACECEIIIIIIIIIIINIKBB>C>QQYNHHHHDDHDHIITIDCCCCOONNNNGDFDDINMINNNNNIHHHHHIINNIIINNNNTYTIIIIDDIIIIYYYTTTTTTYIIIDDDGGITYYSKKKIDNNNNTTNNNNNTYYYTLLLLLLLLLLLYYTYJJJJJNTTTTTTTTTTYYOLLLTTOOOTTTTTTTYNNNNNJJJLLLLLLYYYYYYYYYYSSYYONNNNNNLLTTTTTTTYYYYYYYYYYYYYYYYTMMKKKYYYYYYYYYYYYYTTTTTOOLIILLLLTTLNLLLLLLYYYYYYTTTLLLTTTTTTTYYYYYYTTTTTTTTTTTYYYYYYYYYYYYYYYYYNIIIIITYYTTTLTTNIIFFFMYYYYYYYOOLKKOOTIFIFIINTTTTYYYYYYYYYYYYYYYYYYYYYYTNNNNNNNNTYYYYYYYYYYTTTNNNNNNNNTNIIFFFKYYOOOOOIIIA<:77:<<>>>>IOOIHHHDDEIQMMII<924595/4\n' |
b |
diff -r 528ba9c896e0 -r 09f9f0e29e47 tools/fastq/fastq_paired_unpaired.py --- a/tools/fastq/fastq_paired_unpaired.py Wed Sep 18 06:13:27 2013 -0400 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
[ |
b'@@ -1,241 +0,0 @@\n-#!/usr/bin/env python\n-"""Divides a FASTQ into paired and single (orphan reads) as separate files.\n-\n-The input file should be a valid FASTQ file which has been sorted so that\n-any partner forward+reverse reads are consecutive. The output files all\n-preserve this sort order. Pairing are recognised based on standard name\n-suffices. See below or run the tool with no arguments for more details.\n-\n-Note that the FASTQ variant is unimportant (Sanger, Solexa, Illumina, or even\n-Color Space should all work equally well).\n-\n-This script is copyright 2010-2013 by Peter Cock, The James Hutton Institute\n-(formerly SCRI), Scotland, UK. All rights reserved.\n-\n-See accompanying text file for licence details (MIT license).\n-"""\n-import os\n-import sys\n-import re\n-from galaxy_utils.sequence.fastq import fastqReader, fastqWriter\n-\n-if "-v" in sys.argv or "--version" in sys.argv:\n- print "Version 0.0.8"\n- sys.exit(0)\n-\n-def stop_err(msg, err=1):\n- sys.stderr.write(msg.rstrip() + "\\n")\n- sys.exit(err)\n-\n-msg = """Expect either 3 or 4 arguments, all FASTQ filenames.\n-\n-If you want two output files, use four arguments:\n- - FASTQ variant (e.g. sanger, solexa, illumina or cssanger)\n- - Sorted input FASTQ filename,\n- - Output paired FASTQ filename (forward then reverse interleaved),\n- - Output singles FASTQ filename (orphan reads)\n-\n-If you want three output files, use five arguments:\n- - FASTQ variant (e.g. sanger, solexa, illumina or cssanger)\n- - Sorted input FASTQ filename,\n- - Output forward paired FASTQ filename,\n- - Output reverse paired FASTQ filename,\n- - Output singles FASTQ filename (orphan reads)\n-\n-The input file should be a valid FASTQ file which has been sorted so that\n-any partner forward+reverse reads are consecutive. The output files all\n-preserve this sort order.\n-\n-Any reads where the forward/reverse naming suffix used is not recognised\n-are treated as orphan reads. The tool supports the /1 and /2 convention\n-originally used by Illumina, the .f and .r convention, and the Sanger\n-convention (see http://staden.sourceforge.net/manual/pregap4_unix_50.html\n-for details), and the new Illumina convention where the reads have the\n-same identifier with the fragment at the start of the description, e.g.\n-\n-@HWI-ST916:79:D04M5ACXX:1:1101:10000:100326 1:N:0:TGNCCA\n-@HWI-ST916:79:D04M5ACXX:1:1101:10000:100326 2:N:0:TGNCCA \n-\n-Note that this does support multiple forward and reverse reads per template\n-(which is quite common with Sanger sequencing), e.g. this which is sorted\n-alphabetically:\n-\n-WTSI_1055_4p17.p1kapIBF\n-WTSI_1055_4p17.p1kpIBF\n-WTSI_1055_4p17.q1kapIBR\n-WTSI_1055_4p17.q1kpIBR\n-\n-or this where the reads already come in pairs:\n-\n-WTSI_1055_4p17.p1kapIBF\n-WTSI_1055_4p17.q1kapIBR\n-WTSI_1055_4p17.p1kpIBF\n-WTSI_1055_4p17.q1kpIBR\n-\n-both become:\n-\n-WTSI_1055_4p17.p1kapIBF paired with WTSI_1055_4p17.q1kapIBR\n-WTSI_1055_4p17.p1kpIBF paired with WTSI_1055_4p17.q1kpIBR\n-"""\n-\n-if len(sys.argv) == 5:\n- format, input_fastq, pairs_fastq, singles_fastq = sys.argv[1:]\n-elif len(sys.argv) == 6:\n- pairs_fastq = None\n- format, input_fastq, pairs_f_fastq, pairs_r_fastq, singles_fastq = sys.argv[1:]\n-else:\n- stop_err(msg)\n-\n-format = format.replace("fastq", "").lower()\n-if not format:\n- format="sanger" #safe default\n-elif format not in ["sanger","solexa","illumina","cssanger"]:\n- stop_err("Unrecognised format %s" % format)\n-\n-def f_match(name):\n- if name.endswith("/1") or name.endswith(".f"):\n- return True\n-\n-#Cope with three widely used suffix naming convensions,\n-#Illumina: /1 or /2\n-#Forward/revered: .f or .r\n-#Sanger, e.g. .p1k and .q1k\n-#See http://staden.sourceforge.net/manual/pregap4_unix_50.html\n-re_f = re.compile(r"(/1|\\.f|\\.[sfp]\\d\\w*)$")\n-re_r = re.compile(r"(/2|\\.r|\\.[rq]\\d\\w*)$")\n-\n-#assert re_f.match("demo/1")\n-assert re_f.search("demo.f")\n-assert re_f.search("demo.s1")\n-assert re_f.search("demo.f1k")\n-assert re_f.search("demo.p1")\n-assert re_f.search("demo.p1k")\n-assert re_f.search("'..b'les = 0, 0, 0, 0, 0, 0\n-in_handle = open(input_fastq)\n-if pairs_fastq:\n- pairs_f_writer = fastqWriter(open(pairs_fastq, "w"), format)\n- pairs_r_writer = pairs_f_writer\n-else:\n- pairs_f_writer = fastqWriter(open(pairs_f_fastq, "w"), format)\n- pairs_r_writer = fastqWriter(open(pairs_r_fastq, "w"), format)\n-singles_writer = fastqWriter(open(singles_fastq, "w"), format)\n-last_template, buffered_reads = None, []\n-\n-for record in fastqReader(in_handle, format):\n- count += 1\n- name = record.identifier.split(None,1)[0]\n- assert name[0]=="@", record.identifier #Quirk of the Galaxy parser\n- is_forward = False\n- suffix = re_f.search(name)\n- if suffix:\n- #============\n- #Forward read\n- #============\n- template = name[:suffix.start()]\n- is_forward = True\n- elif re_illumina_f.match(record.identifier):\n- template = name #No suffix\n- is_forward = True\n- if is_forward:\n- #print name, "forward", template\n- forward += 1\n- if last_template == template:\n- buffered_reads.append(record)\n- else:\n- #Any old buffered reads are orphans\n- for old in buffered_reads:\n- singles_writer.write(old)\n- singles += 1\n- #Save this read in buffer\n- buffered_reads = [record]\n- last_template = template\n- else:\n- is_reverse = False\n- suffix = re_r.search(name)\n- if suffix:\n- #============\n- #Reverse read\n- #============\n- template = name[:suffix.start()]\n- is_reverse = True\n- elif re_illumina_r.match(record.identifier):\n- template = name #No suffix\n- is_reverse = True\n- if is_reverse:\n- #print name, "reverse", template\n- reverse += 1\n- if last_template == template and buffered_reads:\n- #We have a pair!\n- #If there are multiple buffered forward reads, want to pick\n- #the first one (although we could try and do something more\n- #clever looking at the suffix to match them up...)\n- old = buffered_reads.pop(0)\n- pairs_f_writer.write(old)\n- pairs_r_writer.write(record)\n- pairs += 2\n- else:\n- #As this is a reverse read, this and any buffered read(s) are\n- #all orphans\n- for old in buffered_reads:\n- singles_writer.write(old)\n- singles += 1\n- buffered_reads = []\n- singles_writer.write(record)\n- singles += 1\n- last_template = None\n- else:\n- #===========================\n- #Neither forward nor reverse\n- #===========================\n- singles_writer.write(record)\n- singles += 1\n- neither += 1\n- for old in buffered_reads:\n- singles_writer.write(old)\n- singles += 1\n- buffered_reads = []\n- last_template = None\n-if last_template:\n- #Left over singles...\n- for old in buffered_reads:\n- singles_writer.write(old)\n- singles += 1\n-in_handle.close\n-singles_writer.close()\n-if pairs_fastq:\n- pairs_f_writer.close()\n- assert pairs_r_writer.file.closed\n-else:\n- pairs_f_writer.close()\n- pairs_r_writer.close()\n-\n-if neither:\n- print "%i reads (%i forward, %i reverse, %i neither), %i in pairs, %i as singles" \\\n- % (count, forward, reverse, neither, pairs, singles)\n-else:\n- print "%i reads (%i forward, %i reverse), %i in pairs, %i as singles" \\\n- % (count, forward, reverse, pairs, singles)\n-\n-assert count == pairs + singles == forward + reverse + neither, \\\n- "%i vs %i+%i=%i vs %i+%i+%i=%i" \\\n- % (count,pairs,singles,pairs+singles,forward,reverse,neither,forward+reverse+neither)\n' |
b |
diff -r 528ba9c896e0 -r 09f9f0e29e47 tools/fastq/fastq_paired_unpaired.rst --- a/tools/fastq/fastq_paired_unpaired.rst Wed Sep 18 06:13:27 2013 -0400 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
b |
@@ -1,113 +0,0 @@ -Galaxy tool to divide FASTQ files into paired and unpaired reads -================================================================ - -This tool is copyright 2010-2013 by Peter Cock, The James Hutton Institute -(formerly SCRI, Scottish Crop Research Institute), UK. All rights reserved. -See the licence text below (MIT licence). - -This tool is a short Python script which divides a FASTQ file into paired -reads, and single or orphan reads. You can have separate files for the -forward/reverse reads, or have them interleaved in a single file. - -Note that the FASTQ variant is unimportant (Sanger, Solexa, Illumina, or even -Color Space should all work equally well). - -This tool is available from the Galaxy Tool Shed at: -http://toolshed.g2.bx.psu.edu/view/peterjc/fastq_paired_unpaired - - -Automated Installation -====================== - -This should be straightforward, Galaxy should automatically download and install -the tool from the Galaxy Tool Shed, and run the unit tests - - -Manual Installation -=================== - -There are just two files to install: - -* fastq_paired_unpaired.py (the Python script) -* fastq_paired_unpaired.xml (the Galaxy tool definition) - -The suggested location is in the Galaxy folder tools/fastq next to other FASTQ -tools provided with Galaxy. - -You will also need to modify the tools_conf.xml file to tell Galaxy to offer -the tool. One suggested location is next to the fastq_filter.xml entry. Simply -add the line:: - - <tool file="fastq/fastq_paired_unpaired.xml" /> - -That's it. - - -History -======= - -======= ====================================================================== -Version Changes -------- ---------------------------------------------------------------------- -v0.0.1 - Initial version, using Biopython -v0.0.2 - Help text; cope with multiple pairs per template -v0.0.3 - Galaxy XML wrappers added -v0.0.4 - Use Galaxy library to handle FASTQ files (avoid Biopython dependency) -v0.0.5 - Handle Illumina 1.8 style pair names -v0.0.6 - Record script version when run from Galaxy - - Added unit test (FASTQ file using Sanger naming) -v0.0.7 - Link to Tool Shed added to help text and this documentation. -v0.0.8 - Use reStructuredText for this README file. - - Adopt standard MIT License. - - Updated citation information (Cock et al. 2013). -======= ====================================================================== - - -Developers -========== - -This script and other tools for filtering FASTA, FASTQ and SFF files were -initially developed on the following hg branch: -http://bitbucket.org/peterjc/galaxy-central/src/fasta_filter - -Development has now moved to a dedicated GitHub repository: -https://github.com/peterjc/pico_galaxy/tree/master/tools/ - -For making the "Galaxy Tool Shed" http://toolshed.g2.bx.psu.edu/ tarball use -the following command from the Galaxy root folder:: - - $ tar -czf fastq_paired_unpaired.tar.gz tools/fastq/fastq_paired_unpaired.* test-data/sanger-pairs-*.fastq - -Check this worked:: - - $ tar -tzf fastq_paired_unpaired.tar.gz - tools/fastq/fastq_paired_unpaired.py - tools/fastq/fastq_paired_unpaired.rst - tools/fastq/fastq_paired_unpaired.xml - test-data/sanger-pairs-forward.fastq - test-data/sanger-pairs-interleaved.fastq - test-data/sanger-pairs-mixed.fastq - test-data/sanger-pairs-reverse.fastq - test-data/sanger-pairs-singles.fastq - - -Licence (MIT) -============= - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. |
b |
diff -r 528ba9c896e0 -r 09f9f0e29e47 tools/fastq/fastq_paired_unpaired.xml --- a/tools/fastq/fastq_paired_unpaired.xml Wed Sep 18 06:13:27 2013 -0400 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 |
[ |
@@ -1,113 +0,0 @@ -<tool id="fastq_paired_unpaired" name="Divide FASTQ file into paired and unpaired reads" version="0.0.7"> - <description>using the read name suffices</description> - <version_command interpreter="python">fastq_paired_unpaired.py --version</version_command> - <command interpreter="python"> -fastq_paired_unpaired.py $input_fastq.extension $input_fastq -#if $output_choice_cond.output_choice=="separate" - $output_forward $output_reverse -#elif $output_choice_cond.output_choice=="interleaved" - $output_paired -#end if -$output_singles - </command> - <stdio> - <!-- Anything other than zero is an error --> - <exit_code range="1:" /> - <exit_code range=":-1" /> - </stdio> - <inputs> - <param name="input_fastq" type="data" format="fastq" label="FASTQ file to divide into paired and unpaired reads"/> - <conditional name="output_choice_cond"> - <param name="output_choice" type="select" label="How to output paired reads?"> - <option value="separate">Separate (two FASTQ files, for the forward and reverse reads, in matching order).</option> - <option value="interleaved">Interleaved (one FASTQ file, alternating forward read then partner reverse read).</option> - </param> - <!-- Seems need these dummy entries here, compare this to indels/indel_sam2interval.xml --> - <when value="separate" /> - <when value="interleaved" /> - </conditional> - </inputs> - <outputs> - <data name="output_singles" format="input" label="Orphan or single reads"/> - <data name="output_forward" format="input" label="Forward paired reads"> - <filter>output_choice_cond["output_choice"] == "separate"</filter> - </data> - <data name="output_reverse" format="input" label="Reverse paired reads"> - <filter>output_choice_cond["output_choice"] == "separate"</filter> - </data> - <data name="output_paired" format="input" label="Interleaved paired reads"> - <filter>output_choice_cond["output_choice"] == "interleaved"</filter> - </data> - </outputs> - <tests> - <test> - <param name="input_fastq" value="sanger-pairs-mixed.fastq" ftype="fastq"/> - <param name="output_choice" value="separate"/> - <output name="output_singles" file="sanger-pairs-singles.fastq" ftype="fastq"/> - <output name="output_forward" file="sanger-pairs-forward.fastq" ftype="fastq"/> - <output name="output_reverse" file="sanger-pairs-reverse.fastq" ftype="fastq"/> - </test> - <test> - <param name="input_fastq" value="sanger-pairs-mixed.fastq" ftype="fastq"/> - <param name="output_choice" value="interleaved"/> - <output name="output_singles" file="sanger-pairs-singles.fastq" ftype="fastq"/> - <output name="output_paired" file="sanger-pairs-interleaved.fastq" ftype="fastq"/> - </test> - </tests> - <help> - -**What it does** - -Using the common read name suffix conventions, it divides a FASTQ file into -paired reads, and orphan or single reads. - -The input file should be a valid FASTQ file which has been sorted so that -any partner forward+reverse reads are consecutive. The output files all -preserve this sort order. Pairing are recognised based on standard name -suffices. See below or run the tool with no arguments for more details. - -Any reads where the forward/reverse naming suffix used is not recognised -are treated as orphan reads. The tool supports the /1 and /2 convention -originally used by Illumina, .f and .r convention, the Sanger convention -(see http://staden.sourceforge.net/manual/pregap4_unix_50.html for details), -and the current Illumina convention where the reads get the same identifier -with the fragment number in the description, for example: - - * @HWI-ST916:79:D04M5ACXX:1:1101:10000:100326 1:N:0:TGNCCA - * @HWI-ST916:79:D04M5ACXX:1:1101:10000:100326 2:N:0:TGNCCA - -Note that this does support multiple forward and reverse reads per template -(which is quite common with Sanger sequencing), e.g. this which is sorted -alphabetically: - - * WTSI_1055_4p17.p1kapIBF - * WTSI_1055_4p17.p1kpIBF - * WTSI_1055_4p17.q1kapIBR - * WTSI_1055_4p17.q1kpIBR - -or this where the reads already come in pairs: - - * WTSI_1055_4p17.p1kapIBF - * WTSI_1055_4p17.q1kapIBR - * WTSI_1055_4p17.p1kpIBF - * WTSI_1055_4p17.q1kpIBR - -both become: - - * WTSI_1055_4p17.p1kapIBF paired with WTSI_1055_4p17.q1kapIBR - * WTSI_1055_4p17.p1kpIBF paired with WTSI_1055_4p17.q1kpIBR - -**References** - -If you use this Galaxy tool in work leading to a scientific publication please -cite the following paper: - -Peter J.A. Cock, Björn A. Grüning, Konrad Paszkiewicz and Leighton Pritchard (2013). -Galaxy tools and workflows for sequence analysis with applications -in molecular plant pathology. PeerJ 1:e167 -http://dx.doi.org/10.7717/peerj.167 - -This tool is available to install into other Galaxy Instances via the Galaxy -Tool Shed at http://toolshed.g2.bx.psu.edu/view/peterjc/fastq_paired_unpaired - </help> -</tool> |
b |
diff -r 528ba9c896e0 -r 09f9f0e29e47 tools/fastq_paired_unpaired/README.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tools/fastq_paired_unpaired/README.rst Wed Aug 05 11:06:38 2015 -0400 |
b |
@@ -0,0 +1,131 @@ +Galaxy tool to divide FASTQ files into paired and unpaired reads +================================================================ + +This tool is copyright 2010-2015 by Peter Cock, The James Hutton Institute +(formerly SCRI, Scottish Crop Research Institute), UK. All rights reserved. +See the licence text below (MIT licence). + +This tool is a short Python script which divides a FASTQ file into paired +reads, and single or orphan reads. You can have separate files for the +forward/reverse reads, or have them interleaved in a single file. + +Note that the FASTQ variant is unimportant (Sanger, Solexa, Illumina, or even +Color Space should all work equally well). + +This tool is available from the Galaxy Tool Shed at: +http://toolshed.g2.bx.psu.edu/view/peterjc/fastq_paired_unpaired + + +Automated Installation +====================== + +This should be straightforward, Galaxy should automatically download and install +the tool from the Galaxy Tool Shed, and run the unit tests + + +Manual Installation +=================== + +There are just two files to install: + +* ``fastq_paired_unpaired.py`` (the Python script) +* ``fastq_paired_unpaired.xml`` (the Galaxy tool definition) + +The suggested location is in the Galaxy folder tools/fastq next to other FASTQ +tools provided with Galaxy. + +You will also need to modify the ``tools_conf.xml`` file to tell Galaxy to offer +the tool. One suggested location is next to the ``fastq_filter.xml`` entry, or use +a dedicated folder like ``tools/fastq_paired_unpaired``. Then simply add the line:: + + <tool file="fastq_paired_unpaired/fastq_paired_unpaired.xml" /> + +That's it. + + +History +======= + +======= ====================================================================== +Version Changes +------- ---------------------------------------------------------------------- +v0.0.1 - Initial version, using Biopython +v0.0.2 - Help text; cope with multiple pairs per template +v0.0.3 - Galaxy XML wrappers added +v0.0.4 - Use Galaxy library to handle FASTQ files (avoid Biopython dependency) +v0.0.5 - Handle Illumina 1.8 style pair names +v0.0.6 - Record script version when run from Galaxy + - Added unit test (FASTQ file using Sanger naming) +v0.0.7 - Link to Tool Shed added to help text and this documentation. +v0.0.8 - Use reStructuredText for this README file. + - Adopt standard MIT License. + - Updated citation information (Cock et al. 2013). + - Development moved to GitHub. +v0.0.9 - Renamed folder and adopted README.rst naming. + - Removed some unused code in the Python script. +v0.1.0 - Switch to using Biopython (easier to use script outside of Galaxy). + - Leaves FASTQ plus lines blank (smaller output files). + - Tool definition now embeds citation information. +v0.1.1 - Reorder XML elements (internal change only). + - Use ``format_source=...`` tag. + - Planemo for Tool Shed upload (``.shed.yml``, internal change only). +======= ====================================================================== + + +Developers +========== + +This script and other tools for filtering FASTA, FASTQ and SFF files were +initially developed on the following hg branch: +http://bitbucket.org/peterjc/galaxy-central/src/fasta_filter + +Development has now moved to a dedicated GitHub repository: +https://github.com/peterjc/pico_galaxy/tree/master/tools/fastq_paired_unpaired + +For pushing a release to the test or main "Galaxy Tool Shed", use the following +Planemo commands (which requires you have set your Tool Shed access details in +``~/.planemo.yml`` and that you have access rights on the Tool Shed):: + + $ planemo shed_update --shed_target testtoolshed --check_diff ~/repositories/pico_galaxy/tools/fastq_paired_unpaired/ + ... + +or:: + + $ planemo shed_update --shed_target toolshed --check_diff ~/repositories/pico_galaxy/tools/fastq_paired_unpaired/ + ... + +To just build and check the tar ball, use:: + + $ planemo shed_upload --tar_only ~/repositories/pico_galaxy/tools/fastq_paired_unpaired/ + ... + $ tar -tzf shed_upload.tar.gz + test-data/sanger-pairs-forward.fastq + test-data/sanger-pairs-interleaved.fastq + test-data/sanger-pairs-mixed.fastq + test-data/sanger-pairs-reverse.fastq + test-data/sanger-pairs-singles.fastq + tools/fastq_paired_unpaired/README.rst + tools/fastq_paired_unpaired/fastq_paired_unpaired.py + tools/fastq_paired_unpaired/fastq_paired_unpaired.xml + + +Licence (MIT) +============= + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. |
b |
diff -r 528ba9c896e0 -r 09f9f0e29e47 tools/fastq_paired_unpaired/fastq_paired_unpaired.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tools/fastq_paired_unpaired/fastq_paired_unpaired.py Wed Aug 05 11:06:38 2015 -0400 |
[ |
b'@@ -0,0 +1,241 @@\n+#!/usr/bin/env python\n+"""Divides a FASTQ into paired and single (orphan reads) as separate files.\n+\n+The input file should be a valid FASTQ file which has been sorted so that\n+any partner forward+reverse reads are consecutive. The output files all\n+preserve this sort order. Pairing are recognised based on standard name\n+suffices. See below or run the tool with no arguments for more details.\n+\n+Note that the FASTQ variant is unimportant (Sanger, Solexa, Illumina, or even\n+Color Space should all work equally well).\n+\n+This script is copyright 2010-2013 by Peter Cock, The James Hutton Institute\n+(formerly SCRI), Scotland, UK. All rights reserved.\n+\n+See accompanying text file for licence details (MIT license).\n+"""\n+import os\n+import sys\n+import re\n+\n+if "-v" in sys.argv or "--version" in sys.argv:\n+ print("Version 0.1.0")\n+ sys.exit(0)\n+\n+def sys_exit(msg, err=1):\n+ sys.stderr.write(msg.rstrip() + "\\n")\n+ sys.exit(err)\n+\n+try:\n+ from Bio.SeqIO.QualityIO import FastqGeneralIterator\n+except ImportError:\n+ sys_exit("Biopython missing")\n+\n+msg = """Expect either 3 or 4 arguments, all FASTQ filenames.\n+\n+If you want two output files, use four arguments:\n+ - FASTQ variant (e.g. sanger, solexa, illumina or cssanger)\n+ - Sorted input FASTQ filename,\n+ - Output paired FASTQ filename (forward then reverse interleaved),\n+ - Output singles FASTQ filename (orphan reads)\n+\n+If you want three output files, use five arguments:\n+ - FASTQ variant (e.g. sanger, solexa, illumina or cssanger)\n+ - Sorted input FASTQ filename,\n+ - Output forward paired FASTQ filename,\n+ - Output reverse paired FASTQ filename,\n+ - Output singles FASTQ filename (orphan reads)\n+\n+The input file should be a valid FASTQ file which has been sorted so that\n+any partner forward+reverse reads are consecutive. The output files all\n+preserve this sort order.\n+\n+Any reads where the forward/reverse naming suffix used is not recognised\n+are treated as orphan reads. The tool supports the /1 and /2 convention\n+originally used by Illumina, the .f and .r convention, and the Sanger\n+convention (see http://staden.sourceforge.net/manual/pregap4_unix_50.html\n+for details), and the new Illumina convention where the reads have the\n+same identifier with the fragment at the start of the description, e.g.\n+\n+@HWI-ST916:79:D04M5ACXX:1:1101:10000:100326 1:N:0:TGNCCA\n+@HWI-ST916:79:D04M5ACXX:1:1101:10000:100326 2:N:0:TGNCCA \n+\n+Note that this does support multiple forward and reverse reads per template\n+(which is quite common with Sanger sequencing), e.g. this which is sorted\n+alphabetically:\n+\n+WTSI_1055_4p17.p1kapIBF\n+WTSI_1055_4p17.p1kpIBF\n+WTSI_1055_4p17.q1kapIBR\n+WTSI_1055_4p17.q1kpIBR\n+\n+or this where the reads already come in pairs:\n+\n+WTSI_1055_4p17.p1kapIBF\n+WTSI_1055_4p17.q1kapIBR\n+WTSI_1055_4p17.p1kpIBF\n+WTSI_1055_4p17.q1kpIBR\n+\n+both become:\n+\n+WTSI_1055_4p17.p1kapIBF paired with WTSI_1055_4p17.q1kapIBR\n+WTSI_1055_4p17.p1kpIBF paired with WTSI_1055_4p17.q1kpIBR\n+"""\n+\n+if len(sys.argv) == 5:\n+ format, input_fastq, pairs_fastq, singles_fastq = sys.argv[1:]\n+elif len(sys.argv) == 6:\n+ pairs_fastq = None\n+ format, input_fastq, pairs_f_fastq, pairs_r_fastq, singles_fastq = sys.argv[1:]\n+else:\n+ sys_exit(msg)\n+\n+format = format.replace("fastq", "").lower()\n+if not format:\n+ format="sanger" #safe default\n+elif format not in ["sanger","solexa","illumina","cssanger"]:\n+ sys_exit("Unrecognised format %s" % format)\n+\n+#Cope with three widely used suffix naming convensions,\n+#Illumina: /1 or /2\n+#Forward/revered: .f or .r\n+#Sanger, e.g. .p1k and .q1k\n+#See http://staden.sourceforge.net/manual/pregap4_unix_50.html\n+re_f = re.compile(r"(/1|\\.f|\\.[sfp]\\d\\w*)$")\n+re_r = re.compile(r"(/2|\\.r|\\.[rq]\\d\\w*)$")\n+\n+#assert re_f.match("demo/1")\n+assert re_f.search("demo.f")\n+assert re_f.search("demo.s1")\n+assert re_f.search("demo.f1k")\n+assert re_f.search("demo.p1")\n+assert re_f.search("demo.p1k")\n+assert re_f.search("demo.p1lk")\n+assert re_r.search("de'..b'_handle = open(input_fastq)\n+if pairs_fastq:\n+ pairs_f_handle = open(pairs_fastq, "w")\n+ pairs_r_handle = pairs_f_handle\n+else:\n+ pairs_f_handle = open(pairs_f_fastq, "w")\n+ pairs_r_handle = open(pairs_r_fastq, "w")\n+singles_handle = open(singles_fastq, "w")\n+last_template, buffered_reads = None, []\n+\n+for title, seq, qual in FastqGeneralIterator(in_handle):\n+ count += 1\n+ name = title.split(None,1)[0]\n+ is_forward = False\n+ suffix = re_f.search(name)\n+ if suffix:\n+ # ============\n+ # Forward read\n+ # ============\n+ template = name[:suffix.start()]\n+ is_forward = True\n+ elif re_illumina_f.match(title):\n+ template = name # No suffix\n+ is_forward = True\n+ if is_forward:\n+ # print(name, "forward", template)\n+ forward += 1\n+ if last_template == template:\n+ buffered_reads.append((title, seq, qual))\n+ else:\n+ # Any old buffered reads are orphans\n+ for old in buffered_reads:\n+ singles_handle.write(FASTQ_TEMPLATE % old)\n+ singles += 1\n+ # Save this read in buffer\n+ buffered_reads = [(title, seq, qual)]\n+ last_template = template\n+ else:\n+ is_reverse = False\n+ suffix = re_r.search(name)\n+ if suffix:\n+ # ============\n+ # Reverse read\n+ # ============\n+ template = name[:suffix.start()]\n+ is_reverse = True\n+ elif re_illumina_r.match(title):\n+ template = name # No suffix\n+ is_reverse = True\n+ if is_reverse:\n+ # print(name, "reverse", template)\n+ reverse += 1\n+ if last_template == template and buffered_reads:\n+ # We have a pair!\n+ # If there are multiple buffered forward reads, want to pick\n+ # the first one (although we could try and do something more\n+ # clever looking at the suffix to match them up...)\n+ old = buffered_reads.pop(0)\n+ pairs_f_handle.write(FASTQ_TEMPLATE % old)\n+ pairs_r_handle.write(FASTQ_TEMPLATE % (title, seq, qual))\n+ pairs += 2\n+ else:\n+ # As this is a reverse read, this and any buffered read(s) are\n+ # all orphans\n+ for old in buffered_reads:\n+ singles_handle.write(FASTQ_TEMPLATE % old)\n+ singles += 1\n+ buffered_reads = []\n+ singles_handle.write(FASTQ_TEMPLATE % (title, seq, qual))\n+ singles += 1\n+ last_template = None\n+ else:\n+ # ===========================\n+ # Neither forward nor reverse\n+ # ===========================\n+ singles_handle.write(FASTQ_TEMPLATE % (title, seq, qual))\n+ singles += 1\n+ neither += 1\n+ for old in buffered_reads:\n+ singles_handle.write(FASTQ_TEMPLATE % old)\n+ singles += 1\n+ buffered_reads = []\n+ last_template = None\n+if last_template:\n+ # Left over singles...\n+ for old in buffered_reads:\n+ singles_handle.write(FASTQ_TEMPLATE % old)\n+ singles += 1\n+in_handle.close\n+singles_handle.close()\n+if pairs_fastq:\n+ pairs_f_handle.close()\n+ assert pairs_r_handle.closed\n+else:\n+ pairs_f_handle.close()\n+ pairs_r_handle.close()\n+\n+if neither:\n+ print("%i reads (%i forward, %i reverse, %i neither), %i in pairs, %i as singles"\n+ % (count, forward, reverse, neither, pairs, singles))\n+else:\n+ print("%i reads (%i forward, %i reverse), %i in pairs, %i as singles"\n+ % (count, forward, reverse, pairs, singles))\n+\n+assert count == pairs + singles == forward + reverse + neither, \\\n+ "%i vs %i+%i=%i vs %i+%i+%i=%i" \\\n+ % (count,pairs,singles,pairs+singles,forward,reverse,neither,forward+reverse+neither)\n' |
b |
diff -r 528ba9c896e0 -r 09f9f0e29e47 tools/fastq_paired_unpaired/fastq_paired_unpaired.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tools/fastq_paired_unpaired/fastq_paired_unpaired.xml Wed Aug 05 11:06:38 2015 -0400 |
[ |
@@ -0,0 +1,120 @@ +<tool id="fastq_paired_unpaired" name="Divide FASTQ file into paired and unpaired reads" version="0.1.1"> + <description>using the read name suffices</description> + <requirements> + <requirement type="package" version="1.64">biopython</requirement> + <requirement type="python-module">Bio</requirement> + </requirements> + <stdio> + <!-- Anything other than zero is an error --> + <exit_code range="1:" /> + <exit_code range=":-1" /> + </stdio> + <version_command interpreter="python">fastq_paired_unpaired.py --version</version_command> + <command interpreter="python"> +fastq_paired_unpaired.py $input_fastq.extension $input_fastq +#if $output_choice_cond.output_choice=="separate" + $output_forward $output_reverse +#elif $output_choice_cond.output_choice=="interleaved" + $output_paired +#end if +$output_singles + </command> + <inputs> + <param name="input_fastq" type="data" format="fastq" label="FASTQ file to divide into paired and unpaired reads"/> + <conditional name="output_choice_cond"> + <param name="output_choice" type="select" label="How to output paired reads?"> + <option value="separate">Separate (two FASTQ files, for the forward and reverse reads, in matching order).</option> + <option value="interleaved">Interleaved (one FASTQ file, alternating forward read then partner reverse read).</option> + </param> + <!-- Seems need these dummy entries here, compare this to indels/indel_sam2interval.xml --> + <when value="separate" /> + <when value="interleaved" /> + </conditional> + </inputs> + <outputs> + <data name="output_singles" format_source="input_fastq" label="Orphan or single reads"/> + <data name="output_forward" format_source="input_fastq" label="Forward paired reads"> + <filter>output_choice_cond["output_choice"] == "separate"</filter> + </data> + <data name="output_reverse" format_source="input_fastq" label="Reverse paired reads"> + <filter>output_choice_cond["output_choice"] == "separate"</filter> + </data> + <data name="output_paired" format_source="input_fastq" label="Interleaved paired reads"> + <filter>output_choice_cond["output_choice"] == "interleaved"</filter> + </data> + </outputs> + <tests> + <test> + <param name="input_fastq" value="sanger-pairs-mixed.fastq" ftype="fastq"/> + <param name="output_choice" value="separate"/> + <output name="output_singles" file="sanger-pairs-singles.fastq" ftype="fastq"/> + <output name="output_forward" file="sanger-pairs-forward.fastq" ftype="fastq"/> + <output name="output_reverse" file="sanger-pairs-reverse.fastq" ftype="fastq"/> + </test> + <test> + <param name="input_fastq" value="sanger-pairs-mixed.fastq" ftype="fastq"/> + <param name="output_choice" value="interleaved"/> + <output name="output_singles" file="sanger-pairs-singles.fastq" ftype="fastq"/> + <output name="output_paired" file="sanger-pairs-interleaved.fastq" ftype="fastq"/> + </test> + </tests> + <help> + +**What it does** + +Using the common read name suffix conventions, it divides a FASTQ file into +paired reads, and orphan or single reads. + +The input file should be a valid FASTQ file which has been sorted so that +any partner forward+reverse reads are consecutive. The output files all +preserve this sort order. Pairing are recognised based on standard name +suffices. See below or run the tool with no arguments for more details. + +Any reads where the forward/reverse naming suffix used is not recognised +are treated as orphan reads. The tool supports the /1 and /2 convention +originally used by Illumina, .f and .r convention, the Sanger convention +(see http://staden.sourceforge.net/manual/pregap4_unix_50.html for details), +and the current Illumina convention where the reads get the same identifier +with the fragment number in the description, for example: + + * @HWI-ST916:79:D04M5ACXX:1:1101:10000:100326 1:N:0:TGNCCA + * @HWI-ST916:79:D04M5ACXX:1:1101:10000:100326 2:N:0:TGNCCA + +Note that this does support multiple forward and reverse reads per template +(which is quite common with Sanger sequencing), e.g. this which is sorted +alphabetically: + + * WTSI_1055_4p17.p1kapIBF + * WTSI_1055_4p17.p1kpIBF + * WTSI_1055_4p17.q1kapIBR + * WTSI_1055_4p17.q1kpIBR + +or this where the reads already come in pairs: + + * WTSI_1055_4p17.p1kapIBF + * WTSI_1055_4p17.q1kapIBR + * WTSI_1055_4p17.p1kpIBF + * WTSI_1055_4p17.q1kpIBR + +both become: + + * WTSI_1055_4p17.p1kapIBF paired with WTSI_1055_4p17.q1kapIBR + * WTSI_1055_4p17.p1kpIBF paired with WTSI_1055_4p17.q1kpIBR + +**References** + +If you use this Galaxy tool in work leading to a scientific publication please +cite the following paper: + +Peter J.A. Cock, Björn A. Grüning, Konrad Paszkiewicz and Leighton Pritchard (2013). +Galaxy tools and workflows for sequence analysis with applications +in molecular plant pathology. PeerJ 1:e167 +http://dx.doi.org/10.7717/peerj.167 + +This tool is available to install into other Galaxy Instances via the Galaxy +Tool Shed at http://toolshed.g2.bx.psu.edu/view/peterjc/fastq_paired_unpaired + </help> + <citations> + <citation type="doi">10.7717/peerj.167</citation> + </citations> +</tool> |