FASTQ
概要
- 配列のID,配列,各塩基に対応するquality valueの情報からなる次世代では最もオーソドックスな配列フォーマット。
- GA ver1.3以前は、qualityの表現に方言があったようですが、現在はGAもオリジナルのsangerのquality valueの計算式に合わせているようです。FASTQ定義論文
書式
- 1行目:'@'に続き配列ID。
- コメント:スペースを含んで一意になる場合、FASTAの文化を引き継いで、IDにスペースを挟んで付加情報を記載する場合の両方があり、経験上注意が必要です。
- 2行目:配列の文字列
- 3行目:'+'に対づいて、配列IDか、改行
- 4行目:asciiコードで表現したquality value
- 93を上限としたquality valueに33を足して対応するascii codeで表現します。
-
$ perl -e 'for(my $i=33;$i<=(93+33);$i++){print $i.":".chr($i);if(($i
-31)%8==1){print "\n"}else{print "\t"}}'
33:! 34:" 35:# 36:$ 37:% 38:& 39:' 40:(
41:) 42:* 43:+ 44:, 45:- 46:. 47:/ 48:0
49:1 50:2 51:3 52:4 53:5 54:6 55:7 56:8
57:9 58:: 59:; 60:< 61:= 62:> 63:? 64:@
65:A 66:B 67:C 68:D 69:E 70:F 71:G 72:H
73:I 74:J 75:K 76:L 77:M 78:N 79:O 80:P
81:Q 82:R 83:S 84:T 85:U 86:V 87:W 88:X
89:Y 90:Z 91:[ 92:\ 93:] 94:^ 95:_ 96:`
97:a 98:b 99:c 100:d 101:e 102:f 103:g 104:h
105:i 106:j 107:k 108:l 109:m 110:n 111:o 112:p
113:q 114:r 115:s 116:t 117:u 118:v 119:w 120:x
121:y 122:z 123:{ 124:| 125:} 126:~
- 注意点、4行目のquality valueの先頭は'@'や'+'になることもあるので、自前でパーサを作る場合は注意が必要です。fastaフォーマットのパースは先頭'>'を目印にしますが、fastqは行番号の4で割った余りによって処理を分けるのが経験的にうまくいきます。
Phred quality score(Q)とFASTQ characterの変換式
1. Sanger FASTQ
2. Illumina FASTQ (GA ver1.8より前)
Solexa/Illuminaのquality valueの取扱い上の注意
|
# | Illumina CASAVAのバージョン | qualityの算出式 | ASCIIコードの基準 | 一般的な呼称
|
(1) | CASAVA 1.3より前solexa時代 | solexa | 64 | solexa quality,Illumna quality(あいまい。2にも使われる)
|
(2) | CASAVA 1.3~1.8以前 | phred | 64 | solexa 1.3quality, phred64 quality,Illumna quality(あいまい。1にも使われる)
|
(3) | CASAVA 1.8以降 | phred | 33 | sanger quality, phred quality
|
- 注意点1
- (1)の初期のIlluminaパイプラインCASAVA1.3以前では、異なる計算式でquality valueを算出していたので、(2)や(3)に単純な基準値の変換(33<->64)だけでは変換できません。
- solexaのquality算出式
- sanger/phredの算出式
- (1)から(3)への変換はmaq付属の"fq_all2std.pl sol2std"が使用可能です。
- リードアーカイブのSRAのルールではphred qualityを利用することが規定されているため、本来(1)のデータは頻繁に出回らないはずです。このため、ご自身、あるいは共同研究者等が古いバージョンのCASAVAを利用してデータをだしたのでなければ、(1)や(2)について考慮する必要性はないはずです。
- しかしSRAのチェックが甘いため、(1)や(2)のデータが実際には多々含まれています。
- (1)と(2)を区別する手段は殆どなく、ASCIIコード59~63";<=>?"が出現するか否かで判別できる場合もあり得ます。
ファイル名
ペアエンド
- DRA/SRA/ERA
- 凡例:(DRR/SRR/ERR番号)_(ペア1/2).fastq
- 例1(ペア1本目):SRR039649_1.fastq
- 例1(ペア2本目):SRR039649_2.fastq
- 例1(ペア外):SRR039649.fastq
- IlluminaGA
- 凡例:s_(レーン番号)_(ペア1/2)_sequence.txt
- 例1(ペア1本目):s_3_1_sequence.txt
- 例1(ペア2本目):s_3_2_sequence.txt
- Illumina GA/HiSeqで使用するCASAVA1.8.2でデマルチプレックス後
- 凡例:(サンプル名)_(バーコード配列)_L(レーン番号3桁数字)_R(ペア1/2)_(セット番号3桁数字).fastq.gz
- 例1(ペア1本目):SAMPLE1_ATCACG_L002_R1_001.fastq
- 例1(ペア2本目):SAMPLE1_ATCACG_L002_R2_001.fastq
- セット番号は400万配列ごとに、001,002と増え、gz圧縮されるそうです。
- イルミナ社鈴木様より情報提供いただきました。
- MiSeq
- 凡例:s_(参照ゲノム番頭)_(レーン番号)_(リード番号R1/R2/I1/I2)_(タイルグループ番号).fastq.gz
- 例1(ペア1本目):s_G1_L001_R1_002.fastq
- 例1(ペア2本目):s_G1_L001_R2_002.fastq
- イルミナ社鈴木様より情報提供いただきました。
例
例1
例2
参考