- Home
- FASTX-Toolkit, 解析ツール
- fastx_toolkit 使い方 FastqからFastaへ変換
fastx_toolkit 使い方 FastqからFastaへ変換
バイオインフォ道場、くまぞうです。
Fastq・Fastaファイルともに、バイオインフォマティクスで良く使うファイル形式です。FastqからFastaへ変換についてまとめます。
目次
FastqからFasta形式への変換
よく使われる形式なだけに、変換ツールや変換の方法は様々です。自分でスクリプトを書いて対応する人もいるでしょう。環境や好みに応じて、代表的なツールをいくつか使いこなせるようになっておくと良いと思います。
FASTX_Toolkit
次世代シーケンサのFASTA・FASTQの前処理に関連するツールを集めたものです。トリミングやクリッピング、クオリティ処理に関するツールが提供されています。このツール群に、FASTQ_to_FASTA converter というツールがあります。このツールを利用することで、FastqからFastaへ変換を行うことができます。
$ fastq_to_fasta -i input.fastq -o output.fasta
quality scoreに関するエラーが出る場合があります。これは、quality score の encoding がうまくいってないことに原因があります。「-Q33」のオプション(Illumina encoded quality scoresを使う)を与えるなどして対応しましょう。
$ fastq_to_fasta -i input.fastq -o output.fasta fastq_to_fasta: Invalid quality score value ... <- error! $ fastq_to_fasta -i input.fastq -o output.fasta -Q33
詳細
awkを使う
Fastq形式は、1行目がID・2行目が配列と決まっているので、これらの行だけを抽出します。awkのNRは現在の行番号を表すので、「NR % 4 == 1」は4行ずつ数えたときの1行目・「NR % 4 == 1」は同2行目になります。その行だけ行全体を出力します。
cat input.fastq | awk 'NR % 4 == 1 {print ">" $0 } NR % 4 == 2 {print $0}' > output.fasta