pandaseq の使い方

前の記事で紹介したtoolの1つ。pandaseq を使ってみる。

github.com

インストールは簡単。 まず

git clone https://github.com/neufeld/pandaseq.git

中に入って

sudo apt-get install build-essential libtool automake zlib1g-dev libbz2-dev pkg-config
./autogen.sh && ./configure && make && sudo make install

あとは./.bashrc./.bash_profile あたりをいじってPATHを通す。

$ pandaseq
You must supply both forward and reverse reads.
Too confused to continue.
Try -h for help.

こんな感じなメッセージがでればOK。

基本的な使い方は、forward、reverseの配列のfastqファイルを指定してやるだけ。

pandaseq -f forward.fastq -r reverse.fastq > merged.fasta

出力

.
.
.
0x5558a9fa2030:2        STAT    OVERLAPS        0
0x5558a9fa2030:1        INFO    BESTOLP ERR562367:::3:0:0:0:    137
0x5558a9fa2030:1        INFO    BESTOLP ERR562367:::2:0:0:0:    139
0x5558a9fa2030:1        INFO    BESTOLP ERR562367:::1:0:0:0:    135
0x5558a9fa2030:1        STAT    TIME    Wed Feb 21 18:13:43 2018
0x5558a9fa2030:1        STAT    ELAPSED 0
0x5558a9fa2030:1        STAT    READS   3
0x5558a9fa2030:1        STAT    NOALGN  0
0x5558a9fa2030:1        STAT    LOWQ    0
0x5558a9fa2030:1        STAT    BADR    0
0x5558a9fa2030:1        STAT    SLOW    0
0x5558a9fa2030:1        STAT    OK      3
0x5558a9fa2030:1        STAT    OVERLAPS        0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1

出力結果の見方は http://neufeldserver.uwaterloo.ca/~apmasell/pandaseq_man1.htmlのLOGGING MESSAGESを参考に。

エラーを修復しながらリードを配列にアセンブルしている。

SAM/BAMファイルもインプットとして使えるらしい。 オーバーラップ中でミスマッチが存在した場合、クオリティーの高い方が優先される。 詳細なアルゴリズムは以下。

Algorithm

  1. forward、reverse primerが閾値を超えマッチするポジションを探し、Primerを含む配列の末端は捨てる。
  2. 1つのDNAに由来するとして、forward、reverse readsの確率が最大化するように選び、重ね合わせる。
  3. リードの末端領域のクオリティースコアをB or #として、この領域の確率を正規化する。
  4. アセンブルされた配列をprimer間で構築し、クオリティーを計算する。
  5. quality, length, uncalled bases, user-supplied modules の点でおかしいものがないかチェックする

参考

https://github.com/neufeld/pandaseq

http://neufeldserver.uwaterloo.ca/~apmasell/pandaseq_man1.html