FASTQファイルから配列を抜き出して、CSVファイルに出力する

スポンサーリンク
python
スポンサーリンク

以前の記事でFASTAファイルの情報をCSVファイルに出力する方法に関する記事を書きました。今回は、FASTQファイルの中身をCSVファイルに書き出す方法をご紹介します。

スポンサーリンク

FASTQファイルとは

FASTQファイルはイルミナ社の次世代シーケンサーなどから出力される配列の記述フォーマットです。FASTAファイルとの大きな違いは、配列のIDと配列情報に加え、シーケンサーのクオリティバリュー(シーケンサーがどれだけ正確に読めたか)が記載されている点です。FASTQファイルは以下のような4行構成になっています。

出典:Wikipedia[fastq」

FASTQファイルの配列をCSVファイルに出力する

ここでは、FASTQファイルの配列情報をCSVファイルに出力する方法を二つご紹介します。(あまり大きな違いはありませんが、方法2の方がおすすめです。)

方法1

1.fastqというFASTQファイルの配列情報のみを2.csvというCSVファイルに書き出します。まず、FASTQファイルの中身をすべてlinesという配列に格納します。FASTQファイルは4行でひとまとまりとなっており、2行目が配列情報です。そのため、「i%4(i:linesの要素のインデックス)」つまり、4で割ったときのあまりが1になるインデックスの要素が配列情報となります。

方法2

こちらの方が少しスマートに書くことができます。FASTQファイルの要素を辞書型で保存し、キーが’sequence’のものだけを抜き出しています。

record.get(‘sequence’)は辞書型のrecordが’sequence’というキーを持つ場合に、そのバリューを返す関数です。

タイトルとURLをコピーしました