single-end read, paired-end readsのおはなし

きっかけ

paired-endのサンプルのoverlapを取り除く方法を検討してたらいろいろ整理されてる記事に巡り合えたので和訳しつつ理解を深める

single-end, paired-end

fastqファイルには、シーケンシングのされ方で2種類ある。UCSCなんかからfastqをダウンロードする際にも2種類ある。

  • single-end
  • paired-end

の2つだ。

片側からのみ配列が読まれた場合、それはsingle‐end readとなる。一方、両側から配列を読むことのできる技術も存在する。 そうした技術を用いて読まれると、2つの末端から読まれたpairのreadができる。こうしたものをpaired-end readsという。 GAIIx, HiSeq and MiSeqといったillumina社の機器では、paired-endが標準的なpracticeとなっている。

single-endの場合、length (L) がfragment length (F)より短いか確認する必要がある。そのような場合、その配列はDNAを使い果たしていることになる。標準的なilluminaのフラグメントライブラリーはF ~ 450bpを用いているが、これは一定の値ではなく、フラグメントごとに異なる。

paired-endの場合、Fが二つのリード長を合わせた値より十分に大きくなければならない。リードに挟まれた部分の大きさは多少の幅がある。

今年に入っての変化

しかし今年は、illuminaの体系は少し変わった。 まず、リードの長さはHiSeqで>150bp (GAIIxでも同様) MiSeqでは>250bpへと変わった。 これは、標準のライブラリサイズであるF~450がとても小さいものとなり、paired end readsがoverlapするようになることを意味する。 2つ目に、酵素を用いたNextera のライブラリ調整システムによって、以前のTruSeqシステムに比べ、広い範囲のFサイズのライブラリが作れるようになった。Nexteraを用いると、同じライブラリ中で100bp~900bpのF値を作ることができる。ゆえに、overlapするリード、overlapしないリードが同じライブラリ中で存在しうる。

paired-end readsで肝心なことは、実際には不可能な長さのシーケンスが可能にならないとしても、longer readの恩恵を受けることができる点だ。長さFのフラグメントから得られたpaired-end read(長さLの2本のリード)は一連の中間の配列がわからず、中間の長さも大まかにしかわからないことを除けば、長さFのsingle-end readのようなものだ。

しかし、多くのソフトウェアツールはoverlapするpairを与えると、誤った結果を出してしまう。そのため、overlapしうる場合は、長いsingle-end readに変えれば、多くのツールはより良い結果をより早く出すことができる。

Tools

PEAR (Paired-End Read Merger)

COPE (Connecting Overlapping Paired End reads)

SeqPrep

FLASH (Fast Length Adjustment of Short Reads to Improve Genome Assemblies)

fastq-join (part of ea-utils)

PANDAseq

stitch (now defunct, merged into PANDAseq)

mergePairs.py