我想对有关植物附生植物密度的数据进行 ANCOVA 分析。起初,我想知道一个N和一个S两个斜坡之间的植物密度是否有任何差异,但是我有其他数据,例如海拔,冠层开放度和寄主植物的高度。我知道我的协变量必须是两个斜率(N 和 S)。我构建了这个在 R 中运行的模型,虽然我不知道它是否表现良好。另外我想知道如果我使用符号+
或有什么区别*
。
model1 <- aov(density~slope+altitude+canopy+height)
summary(model1)
model1
我想对有关植物附生植物密度的数据进行 ANCOVA 分析。起初,我想知道一个N和一个S两个斜坡之间的植物密度是否有任何差异,但是我有其他数据,例如海拔,冠层开放度和寄主植物的高度。我知道我的协变量必须是两个斜率(N 和 S)。我构建了这个在 R 中运行的模型,虽然我不知道它是否表现良好。另外我想知道如果我使用符号+
或有什么区别*
。
model1 <- aov(density~slope+altitude+canopy+height)
summary(model1)
model1
基本工具是lm
;请注意,这aov
是lm
.
特别是,如果您有一些分组变量(因子),, 和一个连续协变量,该模型y ~ x + g
将拟合主效应 ANCOVA 模型,同时y ~ x * g
拟合包含与协变量交互的模型。aov
将采用相同的公式。
要特别注意Note
帮助上的aov
。
至于+
vs *
, russellpierce 几乎涵盖了它,但我建议你看一下,?lm
尤其?formula
是手册的第 11.1 节An Introduction to R that come with R (或者如果你还没有弄清楚如何,你可以在网上找到它在您的计算机上找到它;最容易的是,这涉及在 R 或 RStudio 中找到“帮助”下拉菜单)。
我建议使用 R by Field获取和阅读Discovering Statistics 。他对 ANCOVA 有一个很好的部分。
要在 R 中运行 ANCOVA,请加载以下包:
car
compute.es
effects
ggplot2
multcomp
pastecs
WRS
如果您使用lm
or aov
(我使用aov
),请确保在执行aov
or之前使用“对比度”功能设置对比度lm
。R 默认使用非正交对比,这会在 ANCOVA 中搞砸一切。如果要设置正交对比,请使用:
contrasts(dataname$factorvariable)=contr.poly(# of levels, i.e. 3)
然后运行你的模型
model.1=aov(dv~covariate+factorvariable, data=dataname)
要查看模型,请使用:
Anova(model.1, type="III")
确保在此处使用大写字母“A”Anova
而不是anova
. 这将给出使用 III 型 SS 的结果。
summary.lm(model.1)
将给出另一个总结并包括 R-sq。输出。
posth=glht(model.1, linfct=mcp(factorvariable="Tukey")) ##gives the post-hoc Tukey analysis
summary(posth) ##shows the output in a nice format.
如果要测试回归斜率的同质性,还可以包括 IV 和协变量的交互项。那将是:
model=aov(dv~covariate+IV+covariate:IV, data=dataname)
如果交互项显着,那么您就没有同质性。
这是@Butorovich建议的程序的补充文档http://goo.gl/yxUZ1R 。此外,我的观察是,当协变量是二进制时,使用 summary(lm.object) 将给出与 Anova(lm.object, type="III") 生成的相同的 IV 估计。