SolexaQA 2 は次世代シーケンサから得られた生の配列データから,質の悪い配列を (大量のコピー配列も含めて) 取り除くプログラムです.どの解析もそれほど時間はかかりません.
以前 perl スクリプトに分割されていた機能が現在は SolexaQA++ というプログラムにまとめられています.詳しくはこちらをご覧ください.
FASTQ 形式のファイルを読み込みます.
まず配布されている Example を解析してみると良いでしょう.一連の解析ではたくさんのアウトファイルができるので,解析ごとに不要なものは異なるディレクトリに移動した方が良いです.
ソフトウェア: こちらから src をクリックし,SolexaQA++_v3.1.7.1.zip など最新のファイルをダウンロードしてください.解凍して得られたディレクトリ内部に,SolexaQA.pl , DynamicTrim.pl, LengthSort.pl が入っています.
examples: 上と同じサイトから examples ディレクトリに移動すればダウンロードできます.GAIIx と MiSeq について,それぞれ良い例と悪い例がダウンロードできます.
SolexaQA
データの質をグラフにします.TOMBO (OIST のクラスタ)ではうまく動かなかったので,自分の Mac でやりました (おそらくグラフ化する際に R を自動的に動かしているためです).パラメータはデフォルトです.Example の good と bad データも解析して比較すると良いです.
普段はこの解析はやっていません.
SolexaQA.pl input_files [-p|probcutoff 0.05] [-h|phredcutoff 13] [-v|variance] [-m|minmax] [-s|sample 10000] [-b|bwa] [-d|directory path] [-sanger -solexa -illumina]
現在は SolexaQA++ というプログラムに以前 perl スクリプトに分割されていた機能がまとめられています.詳しくはこちらをご覧ください.
DynamicTrim
クオリティーの悪いリードを削ります.解析は forward, reverse の片方ずつ行います.FAQ の「How does DynamicTrim deal with paired-end data?」によると,あるリードがすべて削除されることはないので,順番がずれることはないようです.
アウトファイルでは,.trimmed という拡張子のファイルに選定されたリードが保存されています.SRR5760179_1.fastq (ペアードエンド,24G) の解析で,1 時間ぐらいで終わりました.
SolexaQA++ dynamictrim good_MiSeq_dataset.fq -h 20
(以前は,
perl DynamicTrim.pl good_MiSeq_dataset.fq -h 20
でした)
DynamicTrim.pl input_files [-p|probcutoff 0.05] [-h|phredcutoff 13] [-b|bwa] [-d|directory path] [-sanger -solexa -illumina] [-454]
-p|probcutoff
probability value (between 0 and 1) at which base-calling error is considered too high (default; p = 0.05) *or*
-h|phredcutoff
Phred score (between 0 and 40) at which base-calling error is considered too high
20% (-h 20) だと,1% のエラー確率で,ただ悪いのを削る,30% だと 0.1% クオリティーなので良いのを残す,というイメージです.
-b|bwa
use BWA trimming algorithm
-d|directory
path to directory where output files are saved
-sanger
Sanger format (bypasses automatic format detection)
-solexa
Solexa format (bypasses automatic format detection)
-illumina
Illumina format (bypasses automatic format detection)
-454
set flag if trimming Roche 454 data (experimental feature)
アウトファイル
good_MiSeq_dataset.fq.trimmed
実際に得られた結果です.選定された質の高いリードが保存されています.以後の解析に用いるファイルです.
good_MiSeq_dataset.fq.trimmed_segments
クオリティを示す数字が出力されているようです.以降は使わないファイルです.
good_MiSeq_dataset.fq.trimmed_segments.hist.pdf
上のファイルをグラフ化したファイルです.R を使って作成されます.以降は使わないファイルです.
temp.R
R のバッチファイルです.R が使えない環境だと,このファイルがが残されたままになります.以降は使わないファイルです.
LengthSort
短いリードを削ります.
####
1. Paired end ファイルの解析.
Forward と Revers (以下では leads.left.fq と leads.right.fq) がある場合は以下のコマンドです.例題として,Trinity で配布されている reads.left.fq と reads.right.fq を用いています (trinityrnaseq_r2013-02-25/sample_data/test_Trinity_Assembly).解析はすぐに終わります.
SolexaQA++ lengthsort reads.left.fq reads.right.fq -l 50
(以前は,
perl LengthSort.pl reads.left.fq reads.right.fq -length 50
でした)
LengthSort.pl one single-end or two paired-end FASTQ files [-l|length 25] [-d|directory path]
-l|length
length cutoff [defaults to 25 nucleotides]
私は通常 50bp (-length 50) で解析を行っています.
-d|directory
path to directory where output files are saved
アウトファイル
reads.left.fq.paired1
実際の結果です.length cut off と同じかこれより長い Forward (reads.left.fq) リードが保存されています.
reads.left.fq.paired2
実際の結果です.length cut off と同じかこれより長い Reverse (reads.right.fq) リードが保存されています.ファイル名は reads.left.fq.paired2 となっていますが,実際には reads.right.fq の解析結果が保存されています.
reads.left.fq.discard
length cutoff よりも短いため取り除かれたリードです.
reads.left.fq.single
単一 fq ファイルを指定した場合のアウトファイルです.Paired end (reverse と forward の対になったファイル) でを解析したら空になりました.
reads.left.fq.summary.txt
解析結果の要約です.
その他
2 つのファイルがペアになっていない (数が合わない) と,エラーメッセージが出ます.
[i2:examples]$ perl LengthSort.pl reads.left1.fq reads.right.fq -length 50
error: files reads.left1.fq and reads.right.fq do not seem to be paired
####
2. Single ファイルの解析.
データが片方だけ (Forward と Revers ではない) の場合です.
perl LengthSort.pl good_MiSeq_dataset.fq.trimmed -length 50
アウトファイル
アウトファイルでは,.paired1 と .paired2 という拡張子のファイルに選定されたリードが保存されています.
good_MiSeq_dataset.fq.trimmed.single
実際の結果です.length cut off と同じかこれより長いリードが保存されています.
good_MiSeq_dataset.fq.trimmed.discard
length cutoff よりも短いため取り除かれたリードです.以降は使わないファイルです.
good_MiSeq_dataset.fq.trimmed.summary.txt
上二つのファイルに含まれていたリードの数です.実際の数はあってないようなので,何か他の処理も行っているようです.以降は使わないファイルです.
|