最尤法による系統樹探索ソフトRAxML-NGの使い方を簡単に説明します。
RAxMLと比較してRAxML-NGはコマンドがシンプルになって非常に使いやすくなっています。
また、選択できるモデルの種類も増えています。
本ページは初心者向けの内容です。
詳しいオプションやモデルについては公式のマニュアルを参考にしてください。
※MacOSの場合で説明します。
※モデル推定は省略していますが、ModelTest-NGがRAxML-NGと互換性があって使いやすいです。
環境
macOS 12.3.1
raxml-ng 0.9.0
RAxML-NGのインストール
Mac用のパッケージマネージャであるHomebrewでRAxML-NGをインストールします。
Homebrewのインストールは公式サイトを参考にしてください(スクリプトをターミナルにコピペして実行するだけ)。
- まだHomebrewのリストに
brewsci/bio
(バイオインフォマティクス系のパッケージ)を追加していない場合は、ターミナルからbrew tap brewsci/bio
を実行する。 -
brew install raxml-ng
でRAxML-NGをインストールします。
なぜかModelTest-NGはHomebrewからインストールできません。なんでぇ・・・。
RAxML-NGを使ってみよう
とりあえず起動してみる。
Homebrewからインストールした場合は既にパスが通っているので、いちいちRAxML-NGのフルパスを打ち込む必要はありません。
RAxML-NGのバージョン確認
$ raxml-ng -v
RAxML-NG v. 0.9.0git released on 24.05.2019 by The Exelixis Lab.
Developed by: Alexey M. Kozlov and Alexandros Stamatakis.
Contributors: Diego Darriba, Tomas Flouri, Benoit Morel, Sarah Lutteropp, Ben Bettisworth.
Latest version: https://github.com/amkozlov/raxml-ng
Questions/problems/suggestions? Please visit: https://groups.google.com/forum/#!forum/raxml
塩基配列データの解析
$ raxml-ng --msa inputfile.fasta --all --model GTR+G+I --bs-trees 100 --threads 8
# --msa アライメントされたインプットファイルを指定
# --all 樹形探索とブートストラップ解析を行う
# --model モデルを指定
# --bs-trees ブートストラップ数を指定
# --threads 解析に使うスレッド数を指定。塩基配列長が短いときは少なめにする。
基本的にはこれ。適宜オプションを見ながら変更してください。
置換モデルの一覧はこちら。
Outfileはカレントディレクトリに出力されます。
SNPデータの解析
$ raxml-ng --msa inputfile.phylip --all --model GTR+G+ASC_LEWIS --bs-trees 100 --threads 8
SNPベースの系統解析を行う際は、Acquisition Bias (Ascertainment Bias) 補正をしたモデルを選択します。
以下のサイトが詳しいです。
複数遺伝子座を用いた系統解析
複数遺伝子座で領域ごとに別のモデルを用いる場合、パーティションを組んで一気に解析します。
事前にモデル名, 遺伝子名, 領域の位置
を指定するパーティションファイルを作成します。
下はパーティションファイルの一例です。
TIM2+I+G4, 12S = 1-972
TIM2+I+G4, 16S = 973-2728
TrN+I+G4, ND1 = 2729-3703
TrN+I+G4, ND2 = 3704-4749
TPM2uf+I+G4, COI = 4750-6300
HKY+I+G4, COII = 6301-6991
HKY+I+G4, ATPase8 = 6992-7159
TIM1+I+G4, ATPase6 = 7160-7842
HKY+I+G4, COIII = 7843-8627
TPM3uf+I+G4, ND3 = 8628-8976
TrN+I+G4, ND4L = 8977-9273
TIM1+I+G4, ND4 = 9274-10655
TrN+I+G4, ND5 = 10656-12500
TIM3+I+G4, ND6 = 12501-13022
HKY+I+G4, Cytb = 13023-14163
あとは--model
でパーティションファイルを指定してRunするだけです。
$ raxml-ng --msa ./mtDNAseq.fasta --model ./mtDNA_partition.txt --all --bs-trees 100 --threads 16
これで終わりです。
結果の可視化
Figtreeを使います。
RAxML-NGのRunが終わると、Output fileが8つほど出力されます。
$ ls
inputfile.phylip #シーケンス配列
inputfile.phylip.raxml.bestModel
inputfile.phylip.raxml.bestTree
inputfile.phylip.raxml.bootstraps
inputfile.phylip.raxml.log #解析のログ
inputfile.phylip.raxml.mlTrees
inputfile.phylip.raxml.rba
inputfile.phylip.raxml.startTree
inputfile.phylip.raxml.support #これをFigtreeから読み込む
.raxml.support
ファイルをFigtreeで開きます。
ブートストラップ値は「Node Labels」にチェックを入れて、「label」を表示すればOK。
トラブル
- うまく起動しない時は必要なパッケージが足りていない場合がある。Homebrewからインストール
brew install bison flex gmp
- Abort trap: 6が出てエラーになるときは
--force model_lh_impr
を付けると回る(無理やり) - スレッド数あたりのアライメント数は200–1000 bpが良いらしい。配列長に対してスレッド数が多いと警告がでる。
その他
GUIバージョンも提供されています
コマンドラインに慣れていない方はこちらがおすすめ。
WebサーバーでもRAxML-NGが使えます
PCのスペックが低い方や環境構築が手間な方におすすめ。
文献
RAxML-NG
- Alexey M. Kozlov, Diego Darriba, Tomáš Flouri, Benoit Morel & Alexandros Stamatakis. 2019. RAxML-NG: A fast, scalable, and user-friendly tool for maximum likelihood phylogenetic inference. Bioinformatics, btz305. doi:10.1093/bioinformatics/btz305
SNPベースの系統解析の際のモデル選択
- Adam D. Leaché, Barbara L. Banbury, Joseph Felsenstein, Adrián nieto-Montes de Oca & Alexandros Stamatakis. 2015. Short Tree, Long Tree, Right Tree, Wrong Tree: New Acquisition Bias Corrections for Inferring SNP Phylogenies. Systematic Biology, 64(6): 1032–1047. doi: 10.1093/sysbio/syv053