【ファイル形式】FASTAとFASTQ

FASTAとFASTQは、どちらも配列を扱うときに使われる代表的なファイル形式です。

本記事では、FASTAとFASTQの2つのファイル形式の内容について解説します。

FASTA形式とは

FASTAは塩基配列やアミノ酸配列を記述するときに使われるデータ形式で、「ファスタ」もしくは「ファストエー」と読みます。配列類似性検索プログラムであるFASTAで用いられていたファイル形式なので、このように呼ばれます。

内部はテキストファイルなので、メモ帳などで開いて中身を確認することができます。

拡張子は「.fa」, 「.fasta」などが用いられます。中身が塩基配列かアミノ酸配列か拡張子でわかりやすいように「.fna」, 「.faa」が用いられていることもあります。

塩基配列の例

FASTA形式の例として、がん抑制遺伝子であるTP53の遺伝子配列の例を見てみましょう!

>NG_017013.2 Homo sapiens tumor protein p53 (TP53), RefSeqGene (LRG_321) on chromosome 17
CTCCTTGGTTCAAGTAATTCTCCTGCCTCAGACTCCAGAGTAGCTGGGATTACAGGCGCCCGCCACCACG
CCCAGCTAATTTTTTGTATTTTTAATAGAGATGGGGTTTCATCATGTTGGCCAGGCTGGTCTCGAACTCC
(中略...)
CTGCACTCCAGCCTGGGTAAGGAAATGAGACTCTGTCTCCAAAAAAAAAAAAAAGATACTACAAAGTCAA
GAGACAAACAAT

遺伝子の配列が非常に長いので、途中省略していますが、FASTA形式のファイルは上記の例に示したように、その中身は以下のような形式になっています。

  • 1行目に “>” で始まる1行のヘッダ行
  • 2行目以降に実際の配列文字列

1行目のヘッダ行は何を書いても問題ありませんが、実際にはアクセッション番号など、2行目以降に示される配列に関する情報が記載されていることが多いです。2行目以降の遺伝子配列の部分は途中で改行されることもあります。

アミノ酸配列の例

また、FASTA形式はアミノ酸配列の記述にも使用されます。p53タンパク質のアミノ酸配列の例を見てみましょう。

>NP_000537.3 cellular tumor antigen p53 isoform a [Homo sapiens]
MEEPQSDPSVEPPLSQETFSDLWKLLPENNVLSPLPSQAMDDLMLSPDDIEQWFTEDPGPDEAPRMPEAA
PPVAPAPAAPTPAAPAPAPSWPLSSSVPSQKTYQGSYGFRLGFLHSGTAKSVTCTYSPALNKMFCQLAKT
CPVQLWVDSTPPPGTRVRAMAIYKQSQHMTEVVRRCPHHERCSDSDGLAPPQHLIRVEGNLRVEYLDDRN
TFRHSVVVPYEPPEVGSDCTTIHYNYMCNSSCMGGMNRRPILTIITLEDSSGNLLGRNSFEVRVCACPGR
DRRTEEENLRKKGEPHHELPPGSTKRALPNNTSSSPQPKKKPLDGEYFTLQIRGRERFEMFRELNEALEL
KDAQAGKEPGGSRAHSSHLKSKKGQSTSRHKKLMFKTEGPDSD

2行目以降の配列が、ATGCの塩基配列ではなく、アミノ酸の1文字表記になっていますが、ファイルのフォーマットは塩基配列と同様のFASTA形式で記載されています。

multi-FASTA形式

1つのファイルに複数の配列を記載することもできます。multi-FASTA形式と呼ぶこともありますが、単にFASTA形式と呼ぶこともあります。

multi-FASTAであることを明示的に示す場合、拡張子が「.mfa」となっていることもありますが、「.fa」や「.fasta」の場合もあるので中身を確認しなければ分かりません。

>gi|7656983|ref|NP_055292.1| TP53-target gene 5 protein [Homo sapiens] MSPSAKKRPKNSRVSKMQDEKLRDETEQPVSKVIERNRLRTVLKNLSLLKLLKSSNRRIQELHKLAKRCW
HSLLSVPKILRISSGENSACNKTKQNNEEFQEIGCSEKELKSKKLESTGDPKKKEYKEWKSQVQSGMRNK
EKTSLAAMPRKEKHIEPEVPRTSRDDSLNPGVQGRQPLTEGPRVIFIKPYRNRTPMGHMKQLDVADQWIW
FEGLPTRIHLPAPRVMCRSSTLRWVKRRCTRFCSASLEMPMWHPYKVDVTWTRARGASRGWRSRHQLKGR
NGWRNSRVYK
>gi|409168273|ref|NP_001258504.1| TP53-target gene 5 protein [Mus musculus] MSPSTKKRPRDKVPSKMQDEKLQDKITQHVSKVIERNRLKMVLKNLSLLKLFKSSNSRIQELHKLARRCW
NSMLRVPKILQISSRDKDKVKQNNIKFQEIRVLEMRPNSKKAESVKEPKQKTSKKWKPKQGSKGSPAAVT
WRKKQETFKISKVIKSGGLQARAQKRKTYVKKPRVVFLKTYHHSTTMGKMKALDITDQLVWFEGLPTRIH
IPGRRIMCRSSTYRCLKRSCTRFCCASL

上記の例では、2つのアミノ酸配列の情報がmulti-FASTA形式で示されています。

“>” で始まるヘッダー行とそれに続いてアミノ酸配列が記述されていて、それを繰り返すことで、複数の配列を記載することができます。

FASTQ形式とは

FASTQ形式は、次世代シーケンサー(NGS)で読み取られた配列データを記述するのに使用される形式です。FASTQ(ファストキュー)とはFASTA + Qualityのことであり、FASTA形式のデータにシーケンス品質の情報が足された形式となっています。

拡張子は「.fastq」や「.fq」などが用いられます。

FASTQファイルの具体例

具体例を見てみましょう!

FASTQファイルがあれば、現在のフォルダにFASTQファイルがある状態にして(SRR24883790.fastqがある場合)、ターミナル上で以下のコマンドを実行してください。

FASTQファイルは、通常大容量のファイルであり、メモ帳などのテキストエディターで開こうとするとフリーズする可能性があるので迂闊にダブルクリックしないようにしましょう。
cat SRR24883790.fastq | head -n 8

catはファイルの中身を出力するコマンドで、head -n 8を |(パイプ)で繋げることでファイルの中身の先頭8行を表示しています。実行すると以下のように出力されます。

@SRR24883790.1 VH00770:59:AACTYJFM5:1:1101:55951:1000 length=75

GTGCATAACCATGGACTTGACAATACAGATCATGGTTGCTTTGTAGGTTACCTGTAAAACCCCATTGTTGAACAT

+SRR24883790.1 VH00770:59:AACTYJFM5:1:1101:55951:1000 length=75

CCCC;C-CCCCCCCCC;CCC;CCCCCCCCCCCCCCCCC;CCCCCCCCCCC;CCCCCCCCC;C;CCCC-CCCCCCC

@SRR24883790.2 VH00770:59:AACTYJFM5:1:1101:43586:1019 length=76

GTCCAGAATAGGACCAATCTTTATAGGAACCAACAAGTGAGATGGTTTCAATAAAATGTTCTTCAGGTGTTTTAGA

+SRR24883790.2 VH00770:59:AACTYJFM5:1:1101:43586:1019 length=76

CCC;CCCCCCCCCCCCCCC-CCCCCCCCCCCCCCC;C;CCCCCCCCC;CCC;-CCCCCCC;CCCCCC;CCCCCCC;

FASTQ形式のデータは4行1単位となっています。

  • 1行目に”@”で始まる1行のヘッダー行
  • 2行目に実際の塩基配列
  • 3行目に”+”
  • 4行目に2行目に記述した塩基配列のクオリティスコア

FASTQ形式のデータでは、4行1単位で構成されているため、2行目の塩基配列や4行目のクオリティスコアは長くなっても改行はされません。

クオリティスコアの見方

FASTQファイルのクオリティスコアを表す4行目には、謎の英数字や記号が並んでいると思います。

これらの英数字や記号をクオリティスコアの数値に変換するには、その英数字や記号のASCIIコード(アスキーコード)を調べ、そのASCIIコードから33を引く計算をします。

Q = ASCIIコード – 33

例えば、先に示したSRR24883790.fastqの1番目のリードの最初の塩基はGで、そのクオリティスコア(4行目)は”C”となっていました。

“C”のASCIIコードを調べると(ASCIIコード表)、67であることがわかるため、クオリティスコアを数値で表すと、67 – 33 = 34となります。

つまり、最初の塩基Gのクオリティスコアは34ということです。

シーケンシングエラー率とクオリティスコアの関係

塩基配列の読み取りが正しく行われない確率(シーケンシングエラー率、Eとする)とクオリティスコア(Qとする)の関係は以下の式により表されます。

Q = -10log10(E)
すなわち、Eが低いほど、Qが高いことを意味します。クオリティスコアの値とシーケンシングエラー率の対応関係については以下の表に示す値を大まかに把握しておくとよいでしょう。
クオリティスコア(Q) シーケンシングエラー率(E) 推定精度
10 0.1 90%
20 0.01 99%
30 0.001 99.9%
40 0.0001 99.99%

 

まとめ

FASTAとFASTQはどちらもテキスト形式のファイルで、配列データを記載するのに用いられるファイル形式です。

FASTA形式は塩基配列とアミノ酸配列が記述されるのに対し、FASTQは塩基配列とその品質の情報が記載されます。

それぞれのファイル形式を理解することで、バイオインフォマティクスの解析に役立てていきましょう!