SeqPrep - overlap除去、アダプター配列の除去

SeqPrep

github.com

SeqPrepはPandaSeqとは違うアルゴリズムのoverlapをマージするツール。 https://github.com/jstjohn/SeqPrep

TechSupport@illumina.comからイルミナにアダプター配列のリストをもらえたりするらしい。 アダプター配列は自分でリード見て探すのも手だけど、

GitHub - OpenGene/fastp: An ultra-fast all-in-one FASTQ preprocessor (QC/adapters/trimming/filtering/splitting...)

かければアダプター配列をauto-detectしてくれる。この探し方が正しいのかはわからない。

とりあえずどうにかしてアダプター配列を得る。

SeqPrepではアダプター配列をインプットとして渡す必要がある。

実行

$ ./SeqPrep -f ../ERR562367_1.fastq.gz -r ../ERR562367_2.fastq.gz -1 ERR562367_1_out.fastq.gz -2 ERR562367_2_out.fastq.gz -E readable_alignment.txt.gz -A AGGTTTCCGTAGA -B AGGTTTCCGTAGA -s merged.fastq.gz

必須オプション
-f : forward fastq
-r : reverse fastq
-1 : forward output
-2 : reverse output

Optional なオプション
-A : forwardのアダプター配列
-B : reverseのアダプター配列
-E : txtにアライメント構造の模式図を出力

overlapのmerge

readable_alignment.txt.gz内を見ると、

Read Alignment Score:-67, Suboptimal Score:-98
ID:ERR562367.15 AZOTE_0000:2:1:3050:1151/1
READ1: TCTGCAGGTTCACCTACGGAAACCTTGTTACGACTTTTACTTCCTCTAAACGCTACAGTTTGGTCGTCTTCCN
GCCAGGCAGTCAGAGTGATCNNNNTACCAAACAGTCCGAGGANNNNNCTAAAACGTTCACTCGGNNNNNGCGACGGTC--
---------
                                ||||||||||||| |||||||||||||||||||||||||||||||||
||||||||||||||||||||    ||||||||||||||||||     |||||||||||| ||||     ||||||| |

READ2: -------------------------TGTTACGACTTTTCCTTCCTCTAAACGCTACAGTTTGGTCGTCTTCCC
GCCAGGCAGTCAGAGTGATCCGACTACCAAACAGTCCGAGGACCTCACTAAAACGTTCAATCGGTAGTAGCGACGGGCGG
TGTGTACAA
MERGD:
.
.
.

overlapしてた部分がわかりやすくテキストに出力されている。

そしてアウトプットのファイル内では、、

ERR562367_1.fastq.gz

@ERR562367.15 AZOTE_0000:2:1:3050:1151/1
TCTGCAGGTTCACCTACGGAAACCTTGTTACGACTTTTACTTCCTCTAAACGCTACAGTTTGGTCGTCTTCCNGCCAGGCAGTCAGAGTGATCNNNNTACCAAACAGTCCGAGGANNNNNCTAAAACGTTCACTCGGNNNNNGCGACGGTC
+
GGGGGBGB84=9@A?FFB:>CBFFFG4GG8@GGGGHH@DHGGGGGGG>@GGGGGGGBGGGGHHHHGHHEDAB#>B>A==?>D8EGE>C<@868####4)6<9:8:D<@DDAAAA#####################################


ERR562367_1_out.fastq.gz

@ERR562367.15 AZOTE_0000:2:1:3050:1151/1
TGTTACGACTTTTACTTCCTCTAAACGCTACAGTTTGGTCGTCTTCCNGCCAGGCAGTCAGAGTGATCNNNNTACCAAACAGTCCGAGGANNNNNCTAAAACGTTCACTCGGNNNNNGCGACGGTC
+
G4GG8@GGGGHH@DHGGGGGGG>@GGGGGGGBGGGGHHHHGHHEDAB#>B>A==?>D8EGE>C<@868####4)6<9:8:D<@DDAAAA#####################################

ERR562367_2.fastq.gz

@ERR562367.15 AZOTE_0000:2:1:3050:1151/2
TTGTACACACCGCCCGTCGCTACTACCGATTGAACGTTTTAGTGAGGTCCTCGGACTGTTTGGTAGTCGGATCACTCTGA
CTGCCTGGCGGGAAGACGACCAAACTGTAGCGTTTAGAGGAAGGAAAAGTCGTAACAAGGTTTCCGTAGGG
+
GGGGBG:GGGBIIIIDGG?GGDGGGIIGGEIBDIGGBGGGGC>E<BD@DBBCCDEB@GEGGE<8EB<BD:C@FD+FCEEEIEHBDEG3EGGA08D2*@:-ACC>CBIB<F>>6<=>A8A??=<)3==*988=,?8-8?::B=BB#######


ERR562367_2_out.fastq.gz

@ERR562367.15 AZOTE_0000:2:1:3050:1151/2
GCCCGTCGCTACTACCGATTGAACGTTTTAGTGAGGTCCTCGGACTGTTTGGTAGTCGGATCACTCTGACTGCCTGGCGGGAAGACGACCAAACTGTAGCGTTTAGAGGAAGGAAAAGTCGTAACA
+
IIIIDGG?GGDGGGIIGGEIBDIGGBGGGGC>E<BD@DBBCCDEB@GEGGE<8EB<BD:C@FD+FCEEEIEHBDEG3EGGA08D2*@:-
ACC>CBIB<F>>6<=>A8A??=<)3==*988=,?8-8

overlapしなかった部分が削られてoverlap部分だけになっている。

アダプター配列の確認

$ zcat ./ERR562367_1_out.fastq.gz | gr
ep 'AGGTTTCCGTAGA' | wc -l
0
$ zcat ./ERR562367_2_out.fastq.gz | gr
ep 'AGGTTTCCGTAGA' | wc -l
0

指定したアダプター配列は結果ファイルからトリムされている。

merge の実行

$ ./SeqPrep -f ../ERR562367_1.fastq.gz -r ../ERR562367_2.fastq.gz -1 ERR562367_1_out.fastq.gz -2 ERR562367_2_out.fastq.gz -E readable_alignment.txt.gz -A AGGTTTCCGTAGA -B AGGTTTCCGTAGA 

Pairs Processed:        0
Pairs Merged:   0
Pairs With Adapters:    686680
Pairs Discarded:        131553
CPU Time Used (Minutes):        7.635019
$ ./SeqPrep -f ../ERR562367_1.fastq.gz -r ../ERR562367_2.fastq.gz -1 ERR562367_1_out.fastq.gz -2 ERR562367_2_out.fastq.gz -E readable_alignment.txt.gz -A AGGTTTCCGTAGA -B AGGTTTCCGTAGA -s merged.fastq.gz

Pairs Processed:        0
Pairs Merged:   1906610
Pairs With Adapters:    686680
Pairs Discarded:        131553
CPU Time Used (Minutes):        7.739830

merge はオプションで-s で出力先のファイルを指定してやらないと実行されない。

-s merged.fastq.gz を指定した場合、 readable_alignment.txt.gzの中身は

Read Alignment Score:-67, Suboptimal Score:-98
ID:ERR562367.15 AZOTE_0000:2:1:3050:1151/1
READ1: TCTGCAGGTTCACCTACGGAAACCTTGTTACGACTTTTACTTCCTCTAAACGCTACAGTTTGGTCGTCTTCCN
GCCAGGCAGTCAGAGTGATCNNNNTACCAAACAGTCCGAGGANNNNNCTAAAACGTTCACTCGGNNNNNGCGACGGTC--
---------
                                ||||||||||||| |||||||||||||||||||||||||||||||||
||||||||||||||||||||    ||||||||||||||||||     |||||||||||| ||||     ||||||| |

READ2: -------------------------TGTTACGACTTTTCCTTCCTCTAAACGCTACAGTTTGGTCGTCTTCCC
GCCAGGCAGTCAGAGTGATCCGACTACCAAACAGTCCGAGGACCTCACTAAAACGTTCAATCGGTAGTAGCGACGGGCGG
TGTGTACAA
MERGD: TGTTACGACTTTTACTTCCTCTAAACGCTACAGTTTGGTCGTCTTCCCGCCAGGCAGTCAGAGTGATCCGACT
ACCAAACAGTCCGAGGACCTCACTAAAACGTTCAATCGGTAGTAGCGACGGGC

merged.fastq.gz

@ERR562367.15 AZOTE_0000:2:1:3050:1151/1
TGTTACGACTTTTACTTCCTCTAAACGCTACAGTTTGGTCGTCTTCCCGCCAGGCAGTCAGAGTGATCCGACTACCAAACAGTCCGAGGACCTCACTAAAACGTTCAATCGGTAGTAGCGACGGGC
+
]@]]C\]]]P]]R<]]]]]]]]Z[\]]]]]]]]]]]]T]]PY]\S]]E]T]]]]]]]\]]]]M]]WXQB@:@X@Q]]]\]]]]]]]]]]BB@:C<EIIIIDIIKFDKCIIKKEEEBEIAIIFKKGK

こんな感じにmerge済みのfastqとなっている。