aov() 的基本用法

方差分析(aov)用于确定两个或更多个组的平均值是否彼此显着不同。假设响应彼此独立,正态分布(在每个组内),并且假设组内差异相等。

为了完成分析,数据必须是长格式(请参阅重塑数据主题)。aov()lm() 函数的包装器,使用 Wilkinson-Rogers 公式表示 y~f,其中 y 是响应(独立)变量,f 是表示组成员资格的因子(分类)变量。如果 f 是数字而不是因子变量,则 aov() 将以 ANOVA 格式报告线性回归的结果,这可能会让没有经验的用户感到惊讶。

aov() 函数使用类型 I(顺序)平方和。这种类型的平方和按顺序测试所有(主要和交互)效果。结果是,测试的第一个效果也被赋予它与模型中的其他效果之间的共享方差。为了使这种模型的结果可靠,应平衡数据(所有组的大小相同)。

当 I 型平方和的假设不成立时,可以适用 II 型或 III 型平方和。类型 II 平方和在每个其他主效应之后测试每个主效应,从而控制任何重叠方差。然而,类型 II 平方和假设主效应之间没有相互作用。

最后,Type III of Squares 测试每个主要效果每次互动之后的每个主要效果。当存在交互时,这使得 III 型平方和成为必需。

II 型和 III 型平方和在 Anova() 函数中实现。

mtcars 数据集为例。

mtCarsAnovaModel <- aov(wt ~ factor(cyl), data=mtcars)

要查看 ANOVA 模型的摘要:

summary(mtCarsAnovaModel)

还可以提取基础 lm() 模型的系数:

coefficients(mtCarsAnovaModel)