R

R 中 2 因子重複測量 ANOVA 後的事後檢驗?

  • February 2, 2013

我在尋找關於如何在 R 中的 2 因子(包括受試者內)重複測量方差分析之後運行事後測試(Tukey HSD)的解決方案時遇到問題。對於方差分析,我使用了 aov -函數:

summary(aov(dv ~ x1 * x2 + Error(subject/(x1*x2)), data=df1))

在閱讀了其他問題的答案後,我了解到我首先必須使用其他一些功能(例如 lme)重新運行 ANOVA。這就是我想出的。

Lme.mod <- lme(dv ~ x1*x2, random=list(subject=pdBlocked(list(~1, pdIdent(~x1-1), pdIdent(~x2-1)))), data=df1)
anova(Lme.mod)

兩個主效應都很顯著,但沒有交互效應。然後,我使用這些函數進行事後比較:

summary(glht(Lme.mod, linfct=mcp(x1="Tukey")))
summary(glht(Lme.mod, linfct=mcp(x2="Tukey")))

但是,出現了一些問題:

首先,R 幫助文件說“在定義雙向 ANOVA 或 ANCOVA 模型中感興趣的參數時,必須小心使用 mcp 函數 (…) multcomp 版本 1.0-0 及更高版本會生成主要效果的比較僅,忽略協變量和交互(舊版本自動對交互項進行平均)。給出警告。” 果然,我收到了以下警告信息:

Warning message:
In mcp2matrix(model, linfct = linfct) :
covariate interactions found -- default contrast might be inappropriate

另一個令人費解的事情是,雖然兩個主效應都很顯著,但其中一個因素 (x1) 的事後比較沒有顯著差異。我以前從未遇到過這種情況。腳本/分析是否正確/適當,還是我遺漏了什麼?非常感激任何的幫助!

df1$x1x2=interaction(df1$x1,df1$x2)
library(lmerTest)
Lme.mod <- lme(dv ~ x1x2, random=~1|subject,
              correlation=corCompSymm(form=~1|subject),
              data=df1)
anova(Lme.mod)
summary(glht(Lme.mod, linfct=mcp(x1x2="Tukey")))

是你所追求的,即在因子 x1 和 x2 的所有測量水平組合中進行事後測試?(我還施加了複合對稱性,以使 lme 結果與重複測量 aov 調用的結果相匹配)

引用自:https://stats.stackexchange.com/questions/49108

comments powered by Disqus