2018年5月31日 星期四

PHYML

(20200516更新)
PHYML的好處是可以執行比較快的分支支持度分析,例如SH-like等,對數據初步分析很好用,可以取代掉已經差不多被淘汰的neighbor-joining法,所以不須要再安裝Windows版或是Linux版的MEGA。

而SH-like support的數據其實蠻接近bootstrap法的,只是大家還是習慣bootstrap,沒用的話審稿不安全。

A.安裝
※Ubuntu 14.04: 1.由軟體中心安裝即可。
但是Ubuntu14.04是phyml 2:20120412-2,也沒辦法直接以下指令執行更新 
~$ sudo apt-get update
~$ sudo apt-get install phyml

2.由 https://pkgs.org/ 下載所需debian版本,雙擊安裝。目前給Ubuntu 18.04的版本是    phyml_3.3.20170530+dfsg-2_amd64.deb
但是again, Ubuntu14.04不能安裝3.0以上的版本。

※Ubuntu 18.04:
軟體中心沒有phyml,我是使用Synaptics安裝,版本是3:3.3.20170530+dfsg-2,看起來安裝的是mpi版本。

B.執行
※Ubuntu 14.04: 在終端機中任何目錄打phyml即可執行,建議在fasta檔所在的目錄執行較方便。

※Ubuntu 18.04:
不會自動出現以前的類似PHYLIP界面的選單,不需要bash執行 ./phyml,只能在Terminal用comman line執行,手冊原本建議如下:
手冊p.7: A typical MPI command-line which uses 4 CPUs is given below:
mpirun -n 4 ./phyml-mpi -i myseq -b 100

初步嘗試:
mpirun -n 6 ./phyml-mpi -i myseq.phy -q  -b 1000 (或 0-1-2 -4 -5) -m HKY85 -f m -t e -v e -a gamma值  ==> 命令列不可以run,改成
mpirun -np 6 phyml-mpi -i ITS2.phy -q -b 100  ==> 可以run, 但是 bootstrap設100次不是6的倍數,會自動改成102。
phyml-mpi -i ITS2.phy -q -d nt  ==> 可以run

※結論
1. 我會用到的命令列: mpirun -np 6 phyml-mpi -i myseq.phy -q  (指換成sequential) -b 1000 (或 0-1-2 -4 -5,指bootstrap次數,cpu的倍數) -m HKY85 (指model) -f m  (指frequency: e/m/) -t e  (指ts/tv ratio:) -v e  (指pinv) -a  e (指gamma, e or gamma值)

-m: HKY85 (default) | JC69 | K80 | F81 |F84 | TN93 | GTR | custom
-f: p.14, e: empirical, m: maximum likelihood estimate, 或是輸入frequency: fA,fC,fG,fT。當-m已經設定好英文的model時,-f不必設定。如果-m 使用6位數字時要一起設定-f 值 (Table 1, p.16)
-v: pinv 預設 0
-b: -4: SH-like branch
    -5: 預設 approximate Bayes branch supports
    數字: bootstrap次數,cpu數目的倍數,例如6核心 設定1002
-n, -np: 指定cpu數目,要>2
e: 不知道參數該設多少的,全部用e (empirical)

2. 分析檔名為 ITS2.phy的實際範例(複製貼上用):
a. K80+G:  mpirun -np 5 phyml-mpi -i ITS2.phy -q -b 1000 -m k80  -t e -a e

b. GTR+I+G: mpirun -np 5 phyml-mpi -i ITS2.phy -q -b 1000 -m GTR  -t e -v e -a e


註1:PHYML 支援relaxed PHYLIP格式(在加上RAxML支援Fasta格式,PHYLIP格式的10字元限制魔咒從此拋棄),
註2:建議轉成sequential format,數據比較不會亂掉。
註3:曾經用過PGDSpider轉檔只支援10字元的序列名稱。
註4:BioEdit或是某些轉檔網站或是程式另存的PHYLP檔,記得把第一列最後的參數 i 或 s去掉,PHYML讀不懂。
註5:建議使用 Aliview轉檔成phylip或是nexus格式,Java版本直接執行即可,不需要做安裝(也可以安裝)。字體稍嫌陽春,功能與界面不及Bioedit習慣。
註6:善用ctrl-shift-C和 ctrl-shift-V在terminal裡做最愛的複製貼上,尤其是檔案所在的目錄。
註7:建議np少設一個,留一個處理器上網或是處理其他的事情,以及預防當機時可以處理。
註8:sequence names that display a ‘*’ character will be automatically considered as belonging to the outgroup:

範例: *Fhtw11288aNKTS_H69_3   AGGTTGA....
註9: nexus格式不動!尚未解決

沒有留言:

張貼留言

注意:只有此網誌的成員可以留言。