大概是長期的不鍛煉使得今天的爬山運(yùn)動過量了士骤,接著悲劇就是無法入眠。也幸虧明天是周日根蟹,干脆就起床碼字了脓杉。
總結(jié)下自己前面用snp構(gòu)建系統(tǒng)進(jìn)化樹的方法吧。
1.構(gòu)建進(jìn)化樹的算法
構(gòu)建系統(tǒng)進(jìn)化樹的方法主要有以下幾類:
基于距離矩陣的方法:NJ(鄰接法)
MP(最大簡約法)
ML(最大似然法)
以及貝葉斯法简逮。
一般情況下球散,若有合適的模型,ML的效果較好散庶;
近緣序列的話蕉堰,一般使用MP;
遠(yuǎn)源序列悲龟,一般使用NJ或者M(jìn)L屋讶。
在分析變異過濾得到SNP時(shí),一般都會用PHYLIP構(gòu)建NJ進(jìn)化樹须教。
PHYLIP軟件官網(wǎng)http://evolution.genetics.washington.edu/phylip.html
那么具體如何操作呢皿渗?
軟件安裝
軟件安裝較為簡單
wget http://evolution.gs.washington.edu/phylip/download/phylip-3.69.tar.gz ./ #下載軟件
tar zxvf phylip-3.69.tar.gz #解壓
cd phylip-3.69/src
make install
#以上幾步即安裝完軟件,文件夾中的exe目錄里為可執(zhí)行程序
2.輸入文件的格式轉(zhuǎn)換
查看Phylip軟件的說明没卸,發(fā)現(xiàn)其輸入文件的格式為下圖,并不為vcf格式(http://evolution.genetics.washington.edu/phylip/doc/main.html#inputfiles),因此需要對其進(jìn)行格式的轉(zhuǎn)換秒旋。
其中第一行為構(gòu)建進(jìn)化樹的樣品數(shù)以及每個(gè)樣品使用的snp數(shù)目约计。
第二行及以下為每個(gè)樣品的名稱及snp的具體內(nèi)容。需要注意的是樣品的名稱必須為10個(gè)字母迁筛,如果未達(dá)到10個(gè)字母煤蚌,可用tab鍵或者空格鍵代替。第11個(gè)字母后即為snp的內(nèi)容细卧,同時(shí)在這些序列中尉桩,一般每10個(gè)位點(diǎn)會有1個(gè)空格使其方便閱讀。每個(gè)樣品的用于構(gòu)建snp的個(gè)數(shù)必須相同贪庙。
根據(jù)以上的規(guī)定蜘犁,可以寫腳本將vcf格式轉(zhuǎn)化為可用于phylip的phy格式。
3.軟件使用
phylip中有許多程序止邮,大部分的程序運(yùn)行方法相同这橙,把infile作為默認(rèn)的輸入文件,輸出結(jié)果寫在outfile中导披。因此屈扎,在進(jìn)行下一步分析前,需要重命名想要保存的文件撩匕。
seqboot: 生成隨機(jī)樣本鹰晨,用bootstrap和jack-knife方法。需要設(shè)置選項(xiàng)M
dnadist:DNA距離矩陣計(jì)算器。
neighbor:NJ法的使用
consense:用多重樹構(gòu)建一致樹模蜡。
每個(gè)程序都需要設(shè)定參數(shù)漠趁,因此還需要新建par文件。
#cat seqboot.par
all.merge.snp.phy #設(shè)定輸入文件的名稱哩牍,否則輸入默認(rèn)的名為infile的文件
r #選擇bootstrap
1000 #設(shè)置bootstrap的值棚潦,即重復(fù)的replicate的數(shù)目,通常使用1000或者100膝昆,注意此處設(shè)定好后丸边,后續(xù)兩步的M值也為1000或者100
y #yes確認(rèn)以上設(shè)定的參數(shù)
9 #設(shè)定隨機(jī)參數(shù),輸入奇數(shù)值荚孵。
#cat dnadist.par
seqboot.out #本程序的輸入文件
t #選擇設(shè)定Transition/transversion的比值
2.3628 #比值大小
m #修改M值
d #修改M值
1000 #設(shè)定M值大小
2 #將軟件運(yùn)行情況顯示出來
y #確認(rèn)以上設(shè)定的參數(shù)
#cat neighbor.par
dnadist.out #本程序的輸入文件
m
1000 #設(shè)定M值大小
9 #設(shè)定隨機(jī)數(shù)妹窖,輸入奇數(shù)值
y #確認(rèn)以上設(shè)定的參數(shù)
# cat consense.par
nei.tree #本程序的輸入文件
y #確認(rèn)以上設(shè)定的參數(shù)
再運(yùn)行以下命令行即可
seqboot<seqboot.par &&mv outfile seqboot.out &&dnadist<dnadist.par && mv outfile dnadist.out && neighbor<neighbor.par && mv outfile nei.out && mv outtree nei.tree && consense<consense.par && mv outfile cons.out && mv outtree constree
最后將會得到constree文件,可將該文件gaiwei*.tre文件收叶,雙擊后在treeview中直接查看進(jìn)化樹的內(nèi)容骄呼。
若要進(jìn)行進(jìn)一步的編輯,可使用iTOL在線的網(wǎng)站(http://itol.embl.de/)進(jìn)行編輯判没,以下即為我得到的一個(gè)進(jìn)化樹蜓萄。