資料來源:https://www.freesion.com/article/2497946072/
這篇微文寫的非常棒础嫡,因此轉(zhuǎn)發(fā)至自己的智庫中,以便日后學(xué)習(xí)酝惧。
若有侵權(quán),請(qǐng)聯(lián)系我伯诬。
衷心的感謝每一位知識(shí)的奉獻(xiàn)者晚唇。。盗似。哩陕。
VPA,全稱Variance Partitioning Analysis赫舒,中文成為方差分解分析悍及,該分析的目的是確定指定的環(huán)境因子對(duì)群落結(jié)構(gòu)變化的解釋比例。
我們使用CCA/RDA的排序分析方法可以得到所有參與分析的環(huán)境因子對(duì)群落變化的解釋比例接癌。
那么在進(jìn)行VPA時(shí)心赶,首先就要對(duì)這些環(huán)境因子進(jìn)行一個(gè)分類,然后在約束其它類環(huán)境因子的情況下缺猛,對(duì)某一類環(huán)境因子進(jìn)行排序分析缨叫,這種分析也成為偏分析,即partial CCA/RDA荔燎。
在對(duì)每一類環(huán)境因子均進(jìn)行偏分析之后耻姥,即可計(jì)算出每一個(gè)環(huán)境因子單獨(dú)以及不同環(huán)境因子相互作用分別對(duì)生物群落變化的貢獻(xiàn)。
分析實(shí)戰(zhàn)
這里使用R語言vegan包的varpart()函數(shù)進(jìn)行VPA分析有咨,之后使用plot函數(shù)對(duì)結(jié)果進(jìn)行可視化琐簇。
VPA是確定不同類型環(huán)境因子對(duì)群落變化的解釋,那么首先就要對(duì)環(huán)境因子進(jìn)行一個(gè)分類座享,這個(gè)類怎么分呢婉商?
簡(jiǎn)單的說就是你自己想怎么分就怎么分,根據(jù)你研究的實(shí)際情況自己確定怎么分類征讲。
兩種環(huán)境因子分類
當(dāng)分析的環(huán)境因子只有兩類時(shí)据某,可以將兩類環(huán)境因子放在不同的數(shù)據(jù)框中進(jìn)行分析。
首先我們導(dǎo)入示例數(shù)據(jù)诗箍。
data(mite)
data(mite.env)
data(mite.pcnm)
這里mite為群落豐度數(shù)據(jù)表格癣籽,行為樣本挽唉,列為物種;mite.env和mite.pcnm分別為兩個(gè)環(huán)境因子的數(shù)據(jù)表格筷狼,同樣行為樣本瓶籽,列為環(huán)境因子。
mod <- varpart(mite, mite.env, mite.pcnm, transfo="hel")
mod
進(jìn)行VPA的時(shí)候埂材,第一個(gè)數(shù)據(jù)框?yàn)槿郝鋽?shù)據(jù)塑顺,之后兩個(gè)數(shù)據(jù)框分別代表兩類環(huán)境因子,transfo時(shí)對(duì)數(shù)據(jù)進(jìn)行轉(zhuǎn)換俏险,hel為hellinger轉(zhuǎn)換严拒,可以避免分析的“弓形效應(yīng)”。
在結(jié)果中我們看Individual fractions部分即可竖独。
a為X1也就是命令中第二個(gè)數(shù)據(jù)框單獨(dú)對(duì)群落變化的貢獻(xiàn)裤唠。
c為X2也就是命令中第三個(gè)數(shù)據(jù)框單獨(dú)對(duì)群落變化的貢獻(xiàn)。
b為X1和X2的相互作用對(duì)群落變化的貢獻(xiàn)莹痢。
d為X1和X2無法解釋的群落變化种蘸。
使用plot()函數(shù)對(duì)結(jié)果進(jìn)行可視化。
plot(mod, bg = c("hotpink","skyblue"))
三種及以上的分類
對(duì)與將環(huán)境因子分為3類或4類的情況竞膳,可以將環(huán)境因子放在同一個(gè)數(shù)據(jù)框中航瞭,之后使用formula的形式指定不同的分類因子。
mod <- varpart(mite, ~ SubsDens + WatrCont, ~ Substrate + Shrub + Topo,
mite.pcnm, data=mite.env, transfo="hel")
可以看到3種分類的結(jié)果就相對(duì)復(fù)雜一些坦辟,a-h的含義需要根據(jù)Partition table中的對(duì)應(yīng)情況確定一下刊侯,這個(gè)我就不從頭捋一遍了,感興趣的朋友可以自行畫個(gè)交集和并集的圖分解一下长窄。
為什么不捋一遍結(jié)果呢滔吠,是因?yàn)榭梢暬蠼忉尩谋壤椭苯咏o出了????
plot(mod, bg=2:4)
VPA最多能將環(huán)境因子分為4組,再多就不行了挠日,不過我想也幾乎不會(huì)遇到能夠?qū)h(huán)境因子分為很多組的情況疮绷。
下面是干貨
做VPA分析對(duì)樣本的數(shù)量有一定的要求,記得最開始使用Canoco分析的時(shí)候嚣潜,如果樣本數(shù)小于環(huán)境因子數(shù)目減2冬骚,軟件就會(huì)報(bào)錯(cuò)。
也就是說樣本數(shù)目至少要比因子數(shù)目多2個(gè)懂算,不要問我為什么只冻,我也不知道為什么,沒研究過具體的算法计技,我只是只要如果環(huán)境因子比樣本數(shù)還多的話喜德,就算做完了,結(jié)果也很奇葩垮媒,根本沒法解釋舍悯。
這對(duì)于一些大樣本量的研究項(xiàng)目當(dāng)然不成問題航棱,但是對(duì)于一些經(jīng)費(fèi)有效的研究,可能樣本數(shù)目就會(huì)是使用VPA的一個(gè)限制因素萌衬。
這里我有一個(gè)變通的方法饮醇,就是先對(duì)不同分類環(huán)境因子做降維分析,比如說PCoA秕豫,之后使用主要的PC的結(jié)果替代環(huán)境因子朴艰,從而達(dá)到降低實(shí)際使用因子數(shù)目的目的。
但是具體使用前幾個(gè)PC就要不斷的嘗試混移,根據(jù)結(jié)果進(jìn)行調(diào)整了祠墅。
對(duì)于結(jié)果的可視化,R默認(rèn)的結(jié)果圖確實(shí)不是很好看,關(guān)鍵還不太好調(diào)整,大家可以先默認(rèn)出一個(gè)圖糟港,然后把每一部分的解釋比例記下來塌忽,之后使用在線的Venn圖繪制工具,畫一個(gè)自己滿意的只有圓圈的Venn圖芯急,再手動(dòng)把解釋比例和環(huán)境因子的名稱給P上去