生信學(xué)習(xí)筆記:使用SNP data做基因滲入分析 (4)

繼續(xù)上一周的內(nèi)容融柬,上次講到了如何使用--tree Dsuite的功能鸽素。要使用--treeDsuite的功能隆判,我們顯然需要一個樹文件薛躬。一般樹文件可以通過SNP數(shù)據(jù)畫取進(jìn)化樹來獲得俯渤,這里就不詳細(xì)講解這方面內(nèi)容,留著以后再回顧型宝。

直接給出樹文件snapp.as_newick.tre現(xiàn)在應(yīng)該具有以下內(nèi)容八匠,其中分支長度由冒號后面的數(shù)字編碼:

 ((altfas:2.594278046475669,((((((neobri:0.4315861683285048,(neooli:0.3619356529967183,neopul:0.3619356529967182):0.06965051533178657):0.12487340944557368,(neogra:0.5002021127811682,neohel:0.5002021127811681):0.05625746499291029):0.046536377715870936,(neocra:0.3843764668581544,neomar:0.3843764668581544):0.21861948863179498):0.13696107245777023,neosav:0.7399570279477196):0.3048349276159825,telvit:1.044791955563702):0.06307730474269935,(neochi:0.1368491602607037,neowal:0.1368491602607037):0.9710201000456977):1.4864087861692676):3.570689300019641,astbur:6.16496734649531);

由于這里給出的樹不包括Neolamprologus cancellatus絮爷,我們需要手動將此物種添加到樹中。要將Neolamprologus cancellatus(“neocan”)添加到樹中梨树,我們需要決定放置它的位置坑夯。也許最好的方法是進(jìn)行單獨(dú)的系統(tǒng)發(fā)育分析,但正如我們后面將要看到的抡四,無論如何柜蜈,Neolamprologus cancellatus(“neocan”)在物種樹中沒有單一的真實(shí)位置。因此指巡,現(xiàn)在使用來自文件的共享派生位點(diǎn)的計(jì)數(shù)samples__BBAA.txt作為最佳放置物種的指標(biāo)就足夠了淑履。因此,我們需要找到neocan與任何其他物種共享的最大衍生位點(diǎn)的數(shù)量藻雪。為此秘噪,我們可以使用以下命令:

cat samples__combine.txt | grep neocan | sort -n -k 4 -r | head -n 1
  cat samples__combine.txt | grep neocan | sort -n -k 5 -r | head -n 1
  cat samples__combine.txt | grep neocan | sort -n -k 6 -r | head -n 1

這應(yīng)該產(chǎn)生以下幾行:

altfas  neocan  neooli  14834.4 1408.33 4274.5
  altfas    neobri  neocan  1378.2  13479.6 4066.95
  neocan    neochi  neowal  801.883 754.94  12863.7

所有這些行中最大的數(shù)字是14834.4。由于這個數(shù)字在第四列中找到勉耀,這代表著BBAA位點(diǎn)的數(shù)量(C-BBAA)指煎,因此指定了該行中前兩個物種共享的派生位點(diǎn)數(shù)量,“altfas”和“neocan”便斥。這意味著“neocan”似乎與“altfas”的關(guān)系比與數(shù)據(jù)集中的其他物種關(guān)系更密切至壤。

要將“neocan”插入樹文件作為“altfas”的姐妹物種,將“altfas”替換為“(altfas:1.0椭住,neocan:1.0)”崇渗,包括括號。這可以使用文本編輯器完成京郑,或者在命令行上使用以下命令完成宅广,將修改后的樹字符串保存在名為的新文件中snapp.complete.tre:

cat snapp.as_newick.tre | sed "s/altfas/(altfas:1.0,neocan:1.0)/g" > snapp.complete.tre

現(xiàn)在樹文件應(yīng)該包含以下信息:

(((altfas:1.0,neocan:1.0):2.594278046475669,((((((neobri:0.4315861683285048,(neooli:0.3619356529967183,neopul:0.3619356529967182):0.06965051533178657):0.12487340944557368,(neogra:0.5002021127811682,neohel:0.5002021127811681):0.05625746499291029):0.046536377715870936,(neocra:0.3843764668581544,neomar:0.3843764668581544):0.21861948863179498):0.13696107245777023,neosav:0.7399570279477196):0.3048349276159825,telvit:1.044791955563702):0.06307730474269935,(neochi:0.1368491602607037,neowal:0.1368491602607037):0.9710201000456977):1.4864087861692676):3.570689300019641,astbur:6.16496734649531);

再次運(yùn)行Dsuite,這次添加-t(或--tree)選項(xiàng)以指定新準(zhǔn)備的樹文件snapp.complete.tre:

Dsuite Dtrios -t snapp.complete.tre NC_031969.f5.sub1.vcf.gz samples.txt

Dsuite應(yīng)該在幾分鐘內(nèi)再次完成分析些举。輸出應(yīng)該與先前寫入的輸出相同跟狱,除了多了一個名為samples__tree.txt的文件。

為了進(jìn)一步探索基于給定三個物種不同排列的規(guī)則的輸出文件之間的差異户魏,找到每個文件中報(bào)告的最高D-統(tǒng)計(jì)數(shù)據(jù)samples__Dmin.txt)驶臊,samples__BBAA.txt)和samples__tree.txt )。一種方法是執(zhí)行以下三個命令:

cat samples__Dmin.txt | tail -n +2 | sort -n -k 4 -r | cut -f 4 | head -n 1
  cat samples__BBAA.txt | tail -n +2 | sort -n -k 4 -r | cut -f 4 | head -n 1
  cat samples__tree.txt | tail -n +2 | sort -n -k 4 -r | cut -f 4 | head -n 1

文件中報(bào)告的最高D -statistic samples__Dmin.txt(0.504355)小于其他兩個文件中的D -statistic (在兩種情況下均為0.778765)叼丑。這并不奇怪关翎,因?yàn)槿缟纤觯珼 min值是給定三個物種中漸滲的保守度量鸠信。

使用以下命令找到這些極端D-statistics 的所對應(yīng)給出的三個物種:

 cat samples__Dmin.txt | tail -n +2 | sort -n -k 4 -r | head -n 1
  cat samples__BBAA.txt | tail -n +2 | sort -n -k 4 -r | head -n 1
  cat samples__tree.txt | tail -n +2 | sort -n -k 4 -r | head -n 1

你會看到最高D -statistic為0.778765纵寝,其中對應(yīng)的P1 =“altfas”,P2 =“neocan”星立,P3 =“telvit”爽茴。

使用以下命令從文件中查找此給定三個物種的共享站點(diǎn)的計(jì)數(shù):

cat samples__combine.txt | grep altfas | grep neocan | grep telvit

你應(yīng)該看到C-BBAA = 12909.6(在第四列中)葬凳,C-BABA = 893.302(在第五列中),并且C-ABBA = 7182.28(在第六列中)室奏。因此火焰,“altfas”和“neocan”共享12909.6派生位點(diǎn),“neocan”和“telvit”共享7182.28派生位點(diǎn)胧沫,但“altfas”和“telvit”僅分享893.302派生位點(diǎn)昌简。

因此,D -statistic =(7182.28 - 893.302)/(7182.28 + 893.302)= 0.778765 琳袄,和上面計(jì)算的一樣江场。

為了更好地概述D -statistics 支持的漸滲模式,我們將以熱圖的形式繪制這些模型窖逗,其中位置P2和P3中的物種在水平軸和垂直軸上排序址否,以及相應(yīng)熱圖的顏色細(xì)胞表示在這兩個物種中發(fā)現(xiàn)的最顯著的D-統(tǒng)計(jì)學(xué),在P1中的所有可能的物種中碎紊。然而佑附,為了準(zhǔn)備這個圖,我們首先需要準(zhǔn)備一個文件仗考,列出沿?zé)釄D軸列出P2和P3物種的順序音同。根據(jù)我們使用的樹文件(snapp.complete.tre),對物種進(jìn)行排序是有意義的秃嗜。因此权均,將以下列表寫入名為的新文件species_order.txt:

  altfas
  neocan
  neochi
  neowal
  telvit
  neosav
  neocra
  neomar
  neogra
  neohel
  neobri
  neooli
  neopul

請注意,即使outgroup“astbur”包含在樹文件中锅锨,我們也會將其排除在外叽赊,因?yàn)樗贒suite分析中從未放置在P2或P3的位置。

要繪制熱圖必搞,請使用Ruby腳本plot_d.rb必指,指定Dsuite的輸出文件之一,文件species_order.txt恕洲,繪制的最大D值以及輸出文件的名稱作為命令行選項(xiàng)塔橡。以samples__Dmin.txt文件作為輸入啟動腳本,最大D為0.7霜第,并將輸出命名為samples__Dmin.svg:

ruby plot_d.rb samples__Dmin.txt species_order.txt 0.7 samples__Dmin.svg

文件中的熱圖繪制samples__Dmin.svg是可縮放矢量圖形(SVG)格式葛家。使用能夠以SVG格式讀取文件的程序打開此文件,例如使用Firefox或Adobe Illustrator等瀏覽器泌类。熱圖圖如下圖所示:

正如你可以從右下角的顏色圖例中看到的那樣癞谒,這個熱圖的顏色同時顯示了兩個東西,D -statistic以及它的p值。因此扯俱,紅色表示較高的D統(tǒng)計(jì),通常更飽和的顏色表示更重要喇澡。因此迅栅,用于漸滲的最強(qiáng)信號用飽和紅色顯示,如顏色圖例的右下角晴玖。雖然該圖中沒有一個細(xì)胞實(shí)際上具有該顏色读存,但“neocan”的行或列中的幾乎所有細(xì)胞都具有紅色 - 紫色,對應(yīng)于0.3左右的高度顯著的D-統(tǒng)計(jì)呕屎。

在進(jìn)一步解釋熱圖中顯示的漸滲模式之前让簿,我們還將為其他兩個Dsuite的輸出文件生成熱圖,samples__BBAA.txt并且samples__tree.txt:

ruby plot_d.rb samples__BBAA.txt species_order.txt 0.7 samples__BBAA.svg
  ruby plot_d.rb samples__tree.txt species_order.txt 0.7 samples__tree.svg

兩個熱圖應(yīng)如下所示(samples__BBAA.svg頂部秀睛,samples__tree.svg下方):

正如您所看到的尔当,上述兩個熱圖總體上比基于D min的第一個熱圖更飽和,與D min作為漸滲的保守估計(jì)的解釋一致蹂安。然而椭迎,最顯著的差異在于Telmatochromis vittatus(“telvit”)所示的模式。后兩個圖中最飽和的紅色是連接“neocan”和“telvit”的細(xì)胞的顏色田盈,相比之下畜号,基于D min的第一個圖中只有淺藍(lán)色。因此允瞧,這些圖支持了Neolamprologus cancellatus(“neocan”)和Telmatochromis vittatus之間發(fā)生漸滲的假設(shè)简软。( “telvit”)。然而述暂,“neocan”和“telvit”的行和列中的其他紅紫色單元可能只是這種漸滲的副作用痹升。samples__tree.svg例如,在文件的最后一個熱圖中贸典,紅紫色細(xì)胞可能是由Neolamprologus cancellatus(“neocan”)與其他物種共享的位點(diǎn)引起的视卢,因?yàn)檫@些其他物種與Telmatochromis vittatus(“telvit”)密切相關(guān),是推斷的基因滲入捐贈物種廊驼。

到目前為止据过,我們只計(jì)算d -statistics整個5號染色體(包括在VCF唯一的染色體),但我們還沒有測試過是否d t-統(tǒng)計(jì)是均勻或可變的整個染色體妒挎。這些信息對于確定最近的漸滲是如何發(fā)生有價(jià)值的绳锅,因?yàn)轭A(yù)期年齡漸滲事件會產(chǎn)生比舊的漸滲事件更大規(guī)模的D-統(tǒng)計(jì)變異。該信息還可以幫助識別個體獨(dú)特的滲入的基因座酝掩。

為了量化基因組中滑動窗口的D-統(tǒng)計(jì)量鳞芙,可以使用Dsuite的Dinvestigate命令,我們將它應(yīng)用于具有最強(qiáng)信號漸滲信號的三個組合,由三種物種Altolamprologus fasciatus(“altfas”)原朝,Neolamprologus cancellatus組成驯嘱。(“neocan”)和Telmatochromis vittatus(“telvit”)。只需輸入以下內(nèi)容喳坠,即可查看此命令的可用選項(xiàng):

 Dsuite Dinvestigate

需要的輸入文件有除了VCF輸入文件NC_031969.f5.sub1.vcf.gz和樣本表之外samples.txt鞠评,還需要兩條信息。一個是僅包含來自一個或多個三元組的物種名稱的文件壕鹉,另一個是應(yīng)該用于滑動窗口分析的窗口大刑昊稀(加上窗口遞增的步長)。

準(zhǔn)備一個指定三物種“altfas”晾浴,“neocan”和“telvit”的文件负乡,并命名該文件test_trios.txt。這可以使用以下命令在命令行上完成:

 echo -e "altfas\tneocan\ttelvit" > test_trios.txt

我們將使用2,500個SNP的窗口大小脊凰,每次迭代增加500個SNP抖棘。要使用這些設(shè)置啟動滑動窗口分析,請執(zhí)行以下命令:

Dsuite Dinvestigate -w 2500,500 NC_031969.f5.sub1.vcf.gz samples.txt test_trios.txt 

這分析應(yīng)該只需要幾分鐘狸涌。然后Dsuite應(yīng)該輸出一個名為的文件altfas_neocan_telvit_localFstats__2500_500.txt钉答。

看看該文件:

  less altfas_neocan_telvit_localFstats__2500_500.txt

該文件中的行對應(yīng)于各個染色體窗口,文件中包含的六列包含有關(guān)染色體ID以及每個窗口的起始和結(jié)束位置的信息杈抢。接下來是每行上的三個數(shù)字数尿,它們代表第四列中窗口的D-統(tǒng)計(jì)量,以及另外兩個統(tǒng)計(jì)數(shù)據(jù)(Fd惶楼,F(xiàn)dm)右蹦,旨在量化受漸滲影響的窗口比例。

使用以下命令查找染色體5被劃分的窗口數(shù):

cat altfas_neocan_telvit_localFstats__2500_500.txt | tail -n +2 | wc -l

這應(yīng)該表明在Dsuite的Dinvestigate分析中使用了509個窗口歼捐,另外該窗口的數(shù)量可以通過指定更大或更小的窗口大小來調(diào)整信息密度-w

為了可視化5號染色體上D和f d統(tǒng)計(jì)數(shù)據(jù)的變化何陆,使用R作圖:

  table <- read.table("altfas_neocan_telvit_localFstats__2500_500.txt", header=T)
  windowCenter=(table$windowStart+table$windowEnd)/2
  pdf("altfas_neocan_telvit_localFstats__2500_500.pdf", height=7, width=7)
  plot(windowCenter, table$D, type="l", xlab="Position", ylab="D (gray) / fD (black)", ylim=c(0,1), main="Chromosome 5 (altfas, neocan, telvit)", col="gray")
  lines(windowCenter, table$f_d)
  dev.off()

作圖會生成名為altfas_neocan_telvit_localFstats__2500_500.pdf的文件。

D -statistic(灰色)幾乎在所有窗口中顯著高于f d -statistic(黑色)豹储,并且f d -statistic针饥,其估計(jì)混合比例大多接近0.5:并在大約%Mbp的地方有下降的信號蜕劝,這是否是由參考基因組中缺失的數(shù)據(jù)或錯誤組裝導(dǎo)致的假陽性結(jié)果掉伏,或者它是否顯示出減少漸滲的生物信號适滓,如果沒有進(jìn)一步的分析,很難說清楚钠怯。

重復(fù)這個分析佳魔,但是現(xiàn)在使用不同的三個物種的組合,“neooli”),N. pulcher(“neopul)晦炊,和N. brichardi(” neobri“):

 echo -e "neooli\tneopul\tneobri" > test_trios.txt
  Dsuite Dinvestigate -w 2500,500 NC_031969.f5.sub1.vcf.gz samples.txt test_trios.txt

再次進(jìn)行畫圖:

  table <- read.table("neooli_neopul_neobri_localFstats__2500_500.txt", header=T)
  windowCenter=(table$windowStart+table$windowEnd)/2
  pdf("neooli_neopul_neobri_localFstats__2500_500.pdf", height=7, width=7)
  plot(windowCenter, table$D, type="l", xlab="Position", ylab="D (gray) / fD (black)", ylim=c(0,1), main="Chromosome 5 (neooli, neopul, neobri)", col="gray")
  lines(windowCenter, table$f_d)
  dev.off()

產(chǎn)生該圖:


正如你所看到的鞠鲜,D -statistic(黑色)現(xiàn)在顯示更多的變化宁脊,甚至在幾個窗口中變?yōu)樨?fù)數(shù),表明在這些窗口中贤姆,neooli與neobri的相似性高于neopul榆苞。總體而言霞捡,兩項(xiàng)統(tǒng)計(jì)數(shù)據(jù)都低于第一個三個物種的組合语稠。值得注意的是,這里在5Mbp的地方弄砍,再次可以看到明顯的下降,由于同一地區(qū)不太可能在兩個物種不同三組合中具有更多的漸滲输涕,這可能表明這實(shí)際上是由技術(shù)的缺陷導(dǎo)致的而非生物過程引起的音婶。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市莱坎,隨后出現(xiàn)的幾起案子衣式,更是在濱河造成了極大的恐慌,老刑警劉巖檐什,帶你破解...
    沈念sama閱讀 216,372評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件碴卧,死亡現(xiàn)場離奇詭異,居然都是意外死亡乃正,警方通過查閱死者的電腦和手機(jī)住册,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來瓮具,“玉大人荧飞,你說我怎么就攤上這事∶常” “怎么了叹阔?”我有些...
    開封第一講書人閱讀 162,415評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長传睹。 經(jīng)常有香客問我耳幢,道長,這世上最難降的妖魔是什么欧啤? 我笑而不...
    開封第一講書人閱讀 58,157評論 1 292
  • 正文 為了忘掉前任睛藻,我火速辦了婚禮,結(jié)果婚禮上邢隧,老公的妹妹穿的比我還像新娘修档。我一直安慰自己,他們只是感情好府框,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評論 6 388
  • 文/花漫 我一把揭開白布吱窝。 她就那樣靜靜地躺著讥邻,像睡著了一般。 火紅的嫁衣襯著肌膚如雪院峡。 梳的紋絲不亂的頭發(fā)上兴使,一...
    開封第一講書人閱讀 51,125評論 1 297
  • 那天,我揣著相機(jī)與錄音照激,去河邊找鬼发魄。 笑死,一個胖子當(dāng)著我的面吹牛俩垃,可吹牛的內(nèi)容都是我干的励幼。 我是一名探鬼主播,決...
    沈念sama閱讀 40,028評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼口柳,長吁一口氣:“原來是場噩夢啊……” “哼苹粟!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起跃闹,我...
    開封第一講書人閱讀 38,887評論 0 274
  • 序言:老撾萬榮一對情侶失蹤嵌削,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后望艺,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體苛秕,經(jīng)...
    沈念sama閱讀 45,310評論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評論 2 332
  • 正文 我和宋清朗相戀三年找默,在試婚紗的時候發(fā)現(xiàn)自己被綠了艇劫。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,690評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡惩激,死狀恐怖港准,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情咧欣,我是刑警寧澤浅缸,帶...
    沈念sama閱讀 35,411評論 5 343
  • 正文 年R本政府宣布,位于F島的核電站魄咕,受9級特大地震影響衩椒,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜哮兰,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評論 3 325
  • 文/蒙蒙 一毛萌、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧喝滞,春花似錦阁将、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽缤削。三九已至,卻和暖如春吹榴,著一層夾襖步出監(jiān)牢的瞬間亭敢,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評論 1 268
  • 我被黑心中介騙來泰國打工图筹, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留帅刀,地道東北人。 一個月前我還...
    沈念sama閱讀 47,693評論 2 368
  • 正文 我出身青樓远剩,卻偏偏與公主長得像扣溺,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子瓜晤,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評論 2 353