アダプター配列の除去

cutadapt

cutadapt は、Python によって書かれているリードからアダプター配列を取り除くプログラムである。5' 末端と 3' 末端の両方からアダプター配列を除去することができる。

以下に簡単な使い方の例をいくつ取り上げる。

3' 末端からアダプター配列を除去する。

cutadapt -a ATCTCTCTCTTTTCCTC SRR610713.fastq > SRR610713.noadapt.fastq

5' 末端からアダプター配列を除去する。

cutadapt -g ATCTCTCTCTTTTCCTC SRR610713.fastq > SRR610713.noadapt.fastq

3' 末端と 5' 末端からアダプター配列を除去する。

cutadapt -b ATCTCTCTCTTTTCCTC SRR610713.fastq > SRR610713.noadapt.fastq

リードとアダプター配列のオーバーラップを指定する。デフォルトではオーバーラップが 3 以下ならば、アダプターと見做さない。オーバーラップを変更したい場合は -O オプションを利用する。

cutadapt -O 5 -b ATCTCTCTCTTTTCCTC SRR610713.fastq > SRR610713.noadapt.fastq

リードとアダプター配列のアラインメントにおいて、ミスマッチ、塩基挿入、塩基欠損などが含まれている場合、閾値(error rate)を指定することで、アダプター配列として削除するかどうかを指定することができる。例えば、アダプター配列が 10 bp の場合、リードとアダプター配列のアラインメントにおいてミスマッチを 2 個(20%)まで許容するとき、以下のように -e 0.2 と指定する。挿入と欠損は 1 ミスマッチとして数える。

cutadapt -e 0.2 -a ATCTCTCTCT SRR610713.fastq > SRR610713.noadapt.fastq

※上の例では、アラインメントの長さがちょうど 10 bp ならばミスマッチを 10 × 0.2 = 2 個まで許容する。アラインメントの長さが、5-9 bp ならばミスマッチを 1 個まで許容する。また、アラインメントが 4 bp 以下ならば 4 × 0.2 = 0.8 < 1 であるからミスマッチが許容されない。

インストール

cutadapt は Python のモジュールとして配布されている(PyPI)。

pypi コマンドがインストールされていれば、以下の 1 行を実行するだけで cutadapt をインストールできる。

pip install cutadapt

管理者権限がない場合は --user オプションをつける。

pip install cutadapt --user