Trimmomatic

2019年04月16日 更新

Trimmomaticとは

次世代シークエンサーのショートリードデータをトリミングするツール.Trinityなどでも用いられている.

インストール

biocondaにあります.
% conda install -c bioconda trimmomatic

使い方

ペアエンドの場合
% trimmomatic PE -threads 2 -phred33 INPUT_R1.fastq INPUT_R2.fastq OUTPUT_paired_R1.fastq OUTPUT_unpaired_R1.fastq OUTPUT_paired_R2.fastq OUTPUT_unpaired_R2.fastq ILLUMINACLIP:Adapter.fasta:2:30:10 SLIDINGWINDOW:4:15 MINLEN:36
fastaはinputもoutputもfastq.gzでも可.outputはペアがともに残っているリードと,除去されて片側しかないリードが分けて出力される.
- ILLUMINACLIP:アダプター配列ファイル:許容ミスマッチ数:palindrome clip threshold:simple clip threshold
- SLIDINGWINDOW:ウィンドウサイズ:平均クオリティ
- LEADING:先頭からトリムするクオリティの閾値
- TAILING:末尾からトリムするクオリティの閾値
- CROP:残す塩基数
- HEADCROP:先頭から除去する塩基数
- MINLEN:許容する最小塩基数

palindromeとsimpleについて
アダプター配列を見つけたら削るのがsimple mode.
ライブラリのインサートサイズが短い場合,Illuminaのシークエンサーでは末端のアダプター配列まで読んでしまうことがある.これを探すのがpalindrome mode.見つかったら,forwardはアダプター部分を削って,reverseのリードは捨てる.
Palindrome modeを用いる場合,ペアとなるアダプター配列の名前はPrefixで始まり,/1と/2で終わる必要がある.それ以外の名前はすべてsimple modeとして出力される.

アダプター配列の逆相補鎖はtrimしてくれない
入力のアダプター配列に逆相補鎖の配列を加えると、trimされるリードが増えた。
そのため、おそらくSimple modeのアダプター配列は入力した配列のみアラインメントされ、逆相補鎖は考慮されない。考慮したい場合は入力のfastaファイルに逆相補鎖も追記しておく必要がある。

ILLUMINACLIPでのトリムは、入力のアダプター配列の全長を用いてクオリティやミスマッチからアダプターを除去しているようです。つまり、9割の延期で完全一致していても除いてはくれない。入力の配列を短くしておくと、部分一致でも実質取り除いてくれる。


処理が実行される順番は左からのようです.150bpのペアエンドに対して,CROP:80 MINLEN:100では出力がなくなり,MINLEN:100 CROP:80 では,80bpのリードが出力されました.

参考文献

本家サイト
https://bi.biopapyrus.jp/rnaseq/qc/trimmomatic.html