IQ-TREE是一款用于系統(tǒng)發(fā)育推斷的高效軟件(Efficient software for phylogenomic inference)贞言,其主要具有以下特點(diǎn):
1.高效的樹重建
一種通過最大似然推斷系統(tǒng)發(fā)育樹的快速有效的隨機(jī)算法忧勿。IQ-TREE在計(jì)算時(shí)間相似的可能性方面優(yōu)于RAxML和PhyML(Nguyen等人,2015)香罐。
2.ModelFinder - 快速準(zhǔn)確的模型選擇
ModelFinder(Kalyaanamoorthy等人牛欢,2017)支持自由速率變化模型逸绎,并且比jModelTest和ProtTest快10到100倍惹恃。它還可以找到最合適的分區(qū)方案,如PartitionFinder桶良。
3.UFBoot - 超快引導(dǎo)近似
UFBoot提供近似無偏的分支支持值座舍,運(yùn)行速度比非參數(shù)引導(dǎo)程序快100倍,比RAxML快速引導(dǎo)程序快10到40倍(Minh等人陨帆,2013)曲秉。
4.支持大數(shù)據(jù)分析
通過檢查點(diǎn)、安全數(shù)值和低內(nèi)存模式支持具有數(shù)千個(gè)序列或數(shù)百萬個(gè)比對位點(diǎn)的龐大數(shù)據(jù)集疲牵。多核CPU和并行MPI系統(tǒng)用于加速分析承二。
準(zhǔn)備工作
wget -c https://github.com/iqtree/iqtree2/releases/download/v2.1.3/iqtree-2.1.3-Linux.tar.gz
tar -zxvf iqtree-2.1.3-Linux.tar.gz
echo 'export PATH="~/iqtree-2.1.3-Linux/bin:$PATH"'>>~/.bashrc
source .bashrc
cd iqtree-2.1.3-Linux #該文件夾下有一個(gè)PHYLIP格式的示例比對文件example.phy
示例:
1. 根據(jù)ModelFinder自動選擇的最適合模型,從序列比對(example.phy)中推斷出最大似然樹:
iqtree2 -s example.phy #s指定 IQ-TREE 需要的比對文件的名稱
iqtree2 -s example.phy -m MFP
(# change -m MFP to -m TEST to resemble jModelTest/ProtTest)
-m是指定要在分析期間使用的模型名稱的選項(xiàng)纲爸。特殊MFP關(guān)鍵字代表ModelFinder Plus亥鸠,它告訴IQ-TREE使用所選模型執(zhí)行ModelFinder和剩余分析。ModelFinder計(jì)算許多不同模型和Akaike信息準(zhǔn)則(AIC)识啦、校正Akaike信息準(zhǔn)則(AICc)和貝葉斯信息準(zhǔn)則(BIC)的初始簡約樹的對數(shù)似然负蚊。然后ModelFinder選擇最小化BIC分?jǐn)?shù)的模型(您也可以通過添加選項(xiàng)-AIC或-AICc分別更改為AIC或AICc)。當(dāng)使用了ModelFinder模型時(shí)颓哮,IQ-TREE將寫入一個(gè)附加文件:example.phy.model
:所有測試模型的對數(shù)似然家妆。它用作檢查點(diǎn)文件以恢復(fù)中斷的模型選擇。如果您現(xiàn)在查看冕茅,example.phy.iqtree您將看到IQ-TREE被選TIM2+I+G4為此示例數(shù)據(jù)的最佳擬合模型伤极。
正常情況下,在運(yùn)行結(jié)束時(shí)IQ-TREE將寫入幾個(gè)輸出文件姨伤,包括:
example.phy.iqtree
:自讀的主要報(bào)告文件哨坪。您可以查看此文件以查看計(jì)算結(jié)果。它還包含最終樹的文本表示(見下文)乍楚。
example.phy.treefile
:NEWICK格式的ML樹当编,可以通過任何支持的樹查看器程序(如FigTree或iTOL)進(jìn)行可視化。
example.phy.log
:整個(gè)運(yùn)行的日志文件(也打印在屏幕上)徒溪。要報(bào)告錯(cuò)誤凌箕,請將此日志文件和原始比對文件發(fā)送給作者拧篮。
對于此示例數(shù)據(jù),生成的最大似然樹可能如下所示(從.iqtree文件中提惹2铡):
NOTE: Tree is UNROOTED although outgroup taxon 'LngfishAu' is drawn at root.
注意:樹是無根的,盡管外群分類單元'LngfishAu'在圖中以根部出現(xiàn)缺虐。
+--------------LngfishAu
|
| +--------------LngfishSA
+--------|
| +--------------LngfishAf
|
| +-------------------Frog
+------|
| +-----------------Turtle
| +-----|
| | | +-----------------------Sphenodon
| | | +--|
| | | | +--------------------------Lizard
| | +---|
| | | +---------------------Crocodile
| | +------|
| | +------------------Bird
+---------|
| +----------------Human
| +--|
| | | +--------Seal
| | +--|
| | | +-------Cow
| | +---|
| | +---------Whale
| +----|
| | | +------Mouse
| | +---------|
| | +--------Rat
+----------|
| +----------------Platypus
+---|
+-------------Opossum
這很容易理解芜壁,哺乳動物(Human to Opossum)形成一個(gè)進(jìn)化枝,而爬行動物(Turtle to Crocodile)和Bird形成一個(gè)單獨(dú)的姐妹進(jìn)化枝高氮。這里的樹畫的是Lngfish的外群慧妄,在這個(gè)例子中它比其他物種更古老。然而剪芍,請注意IQ-TREE總是產(chǎn)生一棵無根的樹塞淹,因?yàn)樗鼘@個(gè)生物學(xué)背景一無所知;IQ-TREE簡單地以這種方式繪制樹罪裹,因?yàn)長ngfishAu僅僅只是比對中出現(xiàn)的第一個(gè)序列而已饱普。
其他示例:
2. 重新運(yùn)行并且覆蓋先前的輸出
iqtree -s example.phy -redo
(Use `-redo` option if you really want to redo the analysis and overwrite all output files.)
3.更改輸出前綴:
iqtree -s example.phy --prefix myprefix
輸出文件的默認(rèn)前綴是比對文件名,自定義前綴可以防止在同一文件夾內(nèi)對同一路線執(zhí)行多個(gè)分析時(shí)覆蓋原先的輸出文件状共。
4. 執(zhí)行ModelFinder而不進(jìn)行后續(xù)的樹推理:
iqtree2 -s example.phy -m MF
(use '-m TEST' to resemble jModelTest/ProtTest)
5. 使用GTR+I+G模型推斷最大似然樹:
iqtree2 -s example.phy -m GTR+I+G
6. 使用 4 個(gè) CPU 內(nèi)核來加速計(jì)算:
iqtree2 -s example.phy -T 4
7. 確定在GTR+R4模型下使用的最佳內(nèi)核數(shù):
iqtree2 -s example.phy -m GTR+R4 -T AUTO
8. 根據(jù)計(jì)算系統(tǒng)套耕,可能需要設(shè)置可以自動分配的CPU內(nèi)核的上限。使用該-ntmax選項(xiàng)執(zhí)行此操作:
iqtree2 -s example.phy -m TIM2+I+G -T AUTO -ntmax 8
9. 使用超快引導(dǎo)程序近似評估分支支持(UFBoot):
iqtree2 -s example.phy -m TIM2+I+G -B 1000
(-B指定引導(dǎo)復(fù)制的數(shù)量峡继,其中1000是推薦的最小數(shù)量冯袍。)
10. 使用 UFBoot 減少模型嚴(yán)重違規(guī)的影響:
iqtree2 -s example.phy -m TIM2+I+G -B 1000 -bnni
-bnni降低由于嚴(yán)重模型違規(guī)而高估 UFBoot 分支支持的風(fēng)險(xiǎn)。
使用此選項(xiàng)碾牌,UFBoot 將直接基于相應(yīng)的引導(dǎo)程序比對使用爬山最近鄰交換 (NNI) 搜索進(jìn)一步優(yōu)化每個(gè)引導(dǎo)程序樹
11.使用單分支測試評估分支支持(SH-aLRT ):
iqtree2 -s example.phy -m TIM2+I+G -alrt 1000
-alrt指定SH-aLRT的引導(dǎo)復(fù)制次數(shù)康愤,其中1000是推薦的最小數(shù)量。
12. 使用標(biāo)準(zhǔn)非參數(shù)引導(dǎo)程序評估分支支持:
iqtree2 -s example.phy -m TIM2+I+G -b 100
-b指定引導(dǎo)復(fù)制的數(shù)量舶吗,其中100是推薦的最小數(shù)量征冷。輸出文件類似于UFBoot程序生成的文件。
13. 在一次運(yùn)行中結(jié)合ModelFinder裤翩,樹搜索资盅,超快bootstrap和SH-aLRT測試:
iqtree2 -s example.phy --alrt 1000 -B 1000
#執(zhí)行邊連接的比例劃分模型(example.nex):
iqtree2 -s example.phy -p example.nex
(replace '-p' by '-Q' for edge-unlinked model)
#通過合并分區(qū)找到最佳的分區(qū)方案:
iqtree2 -s example.phy -p example.nex -m MF+MERGE
(use '-m TESTMERGEONLY' to resemble PartitionFinder)
#找到最優(yōu)分區(qū)方案,然后進(jìn)行樹推理和bootstrap:
iqtree2 -s example.phy -p example.nex -m MFP+MERGE -B 1000
暫時(shí)先更到這里踊赠。呵扛。。