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

2021-10-13 08:08:49 字數 1216 閱讀 3797

一、單因子方差分析(one-way anova)

1)建模:

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

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

bwplot(response~trt)

model=aov(response~trt)

summary(model)

2)多重比較:

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

(result=tukeyhsd(model))

plot(result)

3)假設檢驗:

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

shapiro.test(response)

bartlett.test(response~trt)

二、雙因子方差分析(two-way factorial anova)

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

fit

library(hh)

interaction2wt(len~supp*dose)

要注意在下面的情況下因子的先後順序是有講究的:第一種情況是多因子非平衡情況下,此時重要的因子應該放在前面,

第二是在在有協變數情況下,此時協變數放在前面,然後是主因子和互動因子

三、重複測量方差分析

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

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

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

R語言進行方差分析

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

使用R進行方差分析

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

雙因素方差分析 多因素方差分析

在前面我們講過簡單的單因素方差分析,這一篇我們講講雙因素方差分析以及多因素方差分析,雙因素方差分析是最簡單的多因素方差分析。單因素分析就是只考慮乙個因素會對要比較的均值產生影響,而多因素分析是有多個因素會對均值產生影響。需要注意的是乙個因素可能會有不同的水平值,即不同的取值。比如要判斷某一款藥對某種...