方差分析和模型比较
模型拟合函数aov(formula, data=data.frame)和函数lm()非常的相似,在Generic functions for extracting model information 部分列出的泛型函数同样适用。数据分析师培训
需要注意的是aov()还允许分析多方差层次的模型,如裂区实验设计, 利用区组内信息进行的平衡不完全区组设计(balanced incomplete block design)等。 模型公式
response~mean.formula+ Error(strata.formula)
strata.formula定义了一个多层次实验设计中 多个方差因素。最简单的情况是,strata.formula是单因素的。 它定义了一个双层次的实验,也就是研究在这些因子的水平内 或者水平间的实验响应。
例如,考虑到所有的决定变量因子,模型公式可以 设计如下:
> fm <- aov(yield ~ v + n*p*k + Error(farms/blocks), data=farm.data)
这常常用来描述一个同时含有均值模型v + n*p*k和三个误差层次(“农田之间”, “农田内但区组之间”和“区组内”)的实验。
方差表的分析实际上是对拟合模型序列而进行的。 在模型序列的特定地方增加特定的项 会使残差平方和 降低。 因此仅仅在正交实验中,模型中增加项的 顺序是没有影响的。
在多层实验设计中,程序首先把响应值依次投射到 各个误差层次上,并且用均值模型去拟合各个投射。 细节内容可以参考 Chambers & Hastie (1992)。数据分析师培训
除了常规的方差分析表(ANOVA table)使用外, 你还可以直接用函数anova()来比较两个模型。
> anova(fitted.model.1,fitted.model.2, ...)
数据分析咨询请扫描二维码