PAUP
2009 年 10 月 30 日 改訂
井上 潤
PAUP (パウプ) は最も広く用いられている系統解析ソフトウェアです.ベイズ法とアミノ酸配列を用いた最尤法をのぞけば,ほぼすべての解析が可能です.MacClade で sequence や tree の処理を行い,PAUP で解析を行う系統解析の手順が,スタンダードな解析方法の一つだと思います.
 テストバージョンはこちらです (2015 年 2 月).
Portable version

  • おそらく 2005 年からだと思いますが,PAUP でもコマンドラインで操作する Portable version が出ました.Unix や Linux に対応しているようです.値段は Mac や Windows version に比べると $ 150 とやや高めです.

  • これまで Mac version などを使いこなしている人にとっては,Portable version に慣れると便利なことがあります.一ヶ月ほど使ってみた感想としては,最尤法の解析を行う場合に,バッチファイルかあるいはデータファイルの下に PAUP Block としてすべての設定 (パラメーターや tree など) を書き込んでおけるのが良いと思いました.Unix バージョンを使いこなすためには FSU のサイトと PAUP のQuick Start Tutorial (まず最初にこれ.10 分ほどで終わる),Command Ref. Doc.,FAQ,が役に立つと思います.私はこれらを眺めているうちに,なんとか Unix バージョンを少しは使うことが出来るようになりました.ちなみに私は使ったことはありませんが Windows version も同様な便利さがあるようです.

  • Portable versionに慣れた方が良いもう一つの大きな理由が,それぞれ Paup と MrBayes の作者が block にあるコマンドを統一しようと試みている点です.実際に現在でもかなり同じコマンドが共有されています.

  • もちろん Unix バージョンを使う最大の利点は,Supercomputer を利用できる点にあります.

  • OS 9 バージョンとはちがって,目盛りを割り当てる必要がないそうです.このため,巨大なデータセットを扱う人には便利です.

  • バッチファイルの作成法はこちらのサイトを参照して下さい.


P distance を計算する

paup の unix version がインストールされている場合は,PaupPdistance_fol.tar.gz をダウンロード・解凍しフォルダに入り,

paup paupBatch.txt

と入力してください.

paupBatch.txt は以下の内容です.

#nexus

begin paup;
log file=PaupPdist.log;
execute PaupPdist.nex;
DSET DISTANCE = P;
SHOWDIST;
SAVEDIST FILE = Out_paupPdist.txt;
q;

END;

アウトプットは以下です.

E002 Dolphin E001 Human 0.06802721
E004 Megabat E001 Human 0.07900394
E004 Megabat E002 Dolphin 0.06131519

ログ最終行 にも以下が保存されます.

1 2 3
1 E001 Human -
2 E002 Dolphin 0.06803 -
3 E004 Megabat 0.07900 0.06132 -


系統樹を固定して各種パラメーターを推定する

PAUP block としてパラメーター (rate matrix や gamma shape など) を推定する設定を行うことで,ワンタッチで計算がスタートします.ただし,どうも loadconstr (系統樹を tree ファイルから読み込む) と Lscores (パラメーターの最尤推定) の組み合わせは良くないようで,Lscores を行うときだけは,tree block を sequence file の下にあらかじめ書いておくと,作動しました.

コントロールファイルの内容.
[inoue@phoenix 12tr_b40Noto_fol2]$ cat Parms_estimate [この行は不要です]

#nexus

begin paup;
log file=paup_log;
execute paup_12tr_40Noto.nex;
set crit=likelihood;
lscores 1/nst=6 rmatrix=est basefreq=estimate rates=gamma ncat=8 pinvar=estimate;
end;


*「paup_12tr_40Noto.nex」というファイルに sequence と tree が入っています.「lscores 1/..」により一番上に書いてある tree を constraint として用いています.

sequence file の下に付ける tree block

BEGIN TREES;

TRANSLATE
1 ScyScyCan,
2 CoeLaChTa,
3 CoeLatMen,
・・・・・・・・・・・・・・・・・・・
38 NotChiLop,
39 NotChiBla,
40 NotChiOrn
;
TREE Bayes = [&U] (1,((2,3),((4,(5,6)),((.....,(38,(39,40))))))))))))));
END;

*[&U] でも [&R] でもどちらでも作動するようです.
*系統樹は OTU を番号に変換しない形式でも作動すると思います.


Nexus 形式からデータパーティションを書き出す

MrBayes などでパーティションを設定した Nexus file から,各パーティションを別の .phylip 形式などに書き換えることがワンタッチでできます.以下の PAUP block を Sequence block の下にを設定し,PAUP を execute するだけです.「PHYLIP」を「NEXUS」に変更すれば,nexus 形式でも出力できます.

BEGIN PAUP;

charset 1st_pos = 1-3716;
charset 2nd_pos = 3717-7432;
charset tRNA = 7433-8865;
charset rRNA = 8866-11681;

Include 1st_pos/only;
Export Format=PHYLIP FILE=testseq.1st;

Include 2nd_pos/only;
Export Format=PHYLIP FILE=testseq.2nd;

Include tRNA/only;
Export Format=PHYLIP FILE=testseq.T;

Include rRNA/only;
Export Format=PHYLIP FILE=testseq.R;

END;


タンパク質転写遺伝子の塩基配列をコドン別に分けます.

BEGIN PAUP;

CHARSET 1st_codon = 1-10974\3;
CHARSET 2nd_codon = 2-10974\3;
CHARSET 3rd_codon = 3-10974\3;

Include 1st_codon/only;
Export Format=PHYLIP FILE=testseq.1st;

Include 2nd_codon/only;
Export Format=PHYLIP FILE=testseq.2nd;

Include 3rd_codon/only;
Export Format=PHYLIP FILE=testseq.3rd;

END;




3rd codon だけを外したい場合は,Exclude で 3rd_codon を指定します.


BEGIN PAUP;

CHARSET 1st_codon = 1-10974\3;
CHARSET 2nd_codon = 2-10974\3;
CHARSET 3rd_codon = 3-10974\3;

Exclude 3rd_codon/only;
Export Format=PHYLIP FILE=12GenesEx3rd.phylip;

END;