組間差別分析:Adonis

要想在科學上成功,最重要的一點就是對科學的熱愛,堅持長期探索。from 達爾文git

一般咱們在作假設檢驗的時候,是看一個分組變量(也即因子型變量)對某個數值變量的影響,這時候咱們針對數據特徵能夠選擇合適的檢驗方法(詳見往期文章 R中的假設檢驗方法 ),以下所示:

這種統計檢驗就是分析不一樣分組數據的差異,分組能夠來自實驗自己的區組設計,也能夠來自聚類分析。當情形變得更復雜些——不一樣分組再也不是單個數據變量,而是一個個數據矩陣的時候,例如微生物羣落數據,咱們須要更復雜的方法來進行分析,也就是組間差別分析的主要內容。

上期文章咱們介紹了 Anosim分析 Anosim 分析的一個缺點就是隻能分析一個分組因素的影響,當有兩個因素同時影響時可能得出錯誤結果。今天來介紹另外一種非參數差別分析 Adonis
ADONIS 又稱置換多因素方差分析( permutational MANOVA ,也即 PERMANOVA )或非參數多因素方差分析( nonparametric MANOVA ),是一種基於樣品距離 ( 默認爲 distance="bray" ,能夠選擇其餘距離,也能夠直接使用距離矩陣進行分析 ) 的非參數多元方差分析方法,是 MANOVA 的等同形式。該方法可分析不一樣分組因素對樣品距離的解釋度,記組間距離的方差爲 SSb 、組內距離的方差爲 SSw ,假如數據受分組影響顯著,那麼 SSb 應遠小於 SSw ,所以構造統計量 F

其中 n 爲樣本總數, m 爲組數。假如組間差別不顯著,即各組樣本均來自同一整體,那麼 F≈1 ;假如組間差別顯著, F>>1 與方差分析的 MANOVA 不一樣的是, Adonis 使用置換來得到統計量 F 的分佈而不是使用標準 F 分佈來進行判斷,所以是非參數方法。在 R Adonis 分析可使用 vegan 包中的 adonis() 以及 adonis2() 函數,示例以下:
#讀取物種和環境因子信息data=read.csv("otu_table.csv", header=TRUE, row.names=1)envir=read.table("environment.txt", header=TRUE)rownames(envir)=envir[,1]env=envir[,-1]#篩選高丰度物種並將物種數據標準化means=apply(data, 1, mean)otu=data[names(means[means>10]),]otu=t(otu)#根據地理距離聚類kms=kmeans(env, centers=3, nstart=22)Position=factor(kms$cluster)#進行Adonis分析library(vegan)adonis=adonis(otu~Position, permutations=999)adonis

能夠看到檢驗結果也是顯著的,並且結果中給出了每部分的R2web

Anosim MRPP 不一樣的是, Adonis 穩健性大大提升,並且既能夠處理因子變量也能夠處理連續的數值變量(實質上就是迴歸)。因爲 Adonis 爲置換多因素方差分析,因此能夠靈活使用方差分析的公式,所以分析效果大大加強。下面咱們分析經緯度單獨的影響,使用多元雙因素方差分析的公式:
adonis2=adonis(otu~Latitude*Longitude, env, permutations=999)adonis2

能夠看出,經度、緯度以及二者交互對微生物羣落均有顯著影響。
示例數據下載連接:

連接:https://pan.baidu.com/s/1X0W-ns8kSdwzyliycYwV8A微信

提取碼: 65pc

本文分享自微信公衆號 - 微生態與微進化(MicroEcoEvo)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。app

相關文章
相關標籤/搜索