R語言進行方差分析

2021-06-26 21:44:56 字數 2002 閱讀 1108

一、單因子方差分析

(one-way anova

1)建模:

我們採用multcomp包中的cholesterol資料集作為例子,其中response為響應變數,trt為**變數,這個處理中有五種水平。從下面的箱形圖中可觀察到處理的不同水平對於響應變數的影響。再用aov函式建立單因子方差模型,從結果的p值可看到各組均值有顯著不同。

檢視源**

列印幫助

1aggregate(response, by=list(trt), fun=mean)

2bwplot(response~trt)

3model=aov(response~trt)

4summary(model)

2)多重比較:

方差分析

只告訴我們這五組之間是不同的,但沒有告訴我們哪兩組之間有明顯差別,此時需要使用tukeyhsd函式進行均值的多重比較分析,從結果中觀察到有三個兩兩比較是不顯著的。

檢視源**

列印幫助

1(result=tukeyhsd(model))

2plot(result)

3)假設檢驗:

方差分析

需要一定的假設,即資料集應該符合正態和同方差,我們分別用下面的函式來進行檢驗,從p值觀察到這兩個假設是符合的。對於不符合假設的情況,我們就要用到非引數方法,例如kruskal-wallis秩和檢驗

檢視源**

列印幫助

1shapiro.test(response)

2bartlett.test(response~trt)

二、雙因子方差分析

(two-way factorial anova

)我們用toothgrowth資料集來舉例雙因子方差分析。其中supp和dose是**變數,len是響應變數。我們仍然使用aov進行建模,然後使用hh包的繪圖函式來展現雙因子互動效果圖

檢視源**

列印幫助

1fitaov(len ~ supp*dose)

2library(hh)

3interaction2wt(len~supp*dose)

要注意在下面的情況下因子的先後順序是有講究的:

三、重複測量方差分析

在重複測量的方差分析中,實驗物件被測量多次,所以會存在組內因子,組內因子要以下面的形式特別標明出來,其中b是組間因子,w是組內因子,subject是實驗物件的id,

檢視源**

列印幫助

1model=aov(y ~ b * w +error(subject/w))

上述方法的前提是對應組內因子不同水平的資料是等方差的,當傳統方法的假設得不到滿足時,則應用lme4包中lmer函式,利用混合效應模型來解決問題。

使用R進行方差分析

r是乙個免費的統計計算工具,輕便好用,是 可以在windows,linux,mac系統下安裝 anova是方差分析的簡稱,用於兩個及兩個以上樣本均數差別的顯著性檢驗.主要結果為乙個p值,p值越大說明組間差異越小,p值越 明組間差異越明顯 這裡舉個例子,備忘 第一步,在excel裡輸入兩列資料,左邊數...

ryuyan 方差分析 利用R語言進行方差分析

一 單因子方差分析 one way anova 1 建模 我們採用multcomp包中的cholesterol資料集作為例子,其中response為響應變數,trt為 變數,這個處理中有五種水平。從下面的箱形圖中可觀察到處理的不同水平對於響應變數的影響。再用aov函式建立單因子方差模型,從結果的p值...

python進行簡單方差分析

資料 v1樣品1 樣品2樣品3 樣品4樣品5 data data.drop v1 axis 1 去掉序號那一列 r data.index.size n data.columns.size 列數 s 0sum 0 for i in range 0,r for j in range 0,n s s da...