只是关于方差分析与方差分析是否适用的一般性问题。我通读了
? Anova
和? anova
,但我无法满意地理解它。
我正在运行一些 GLM,我想在模型之间以及模型内部进行比较。我什么时候使用
Anova (data)
以及什么时候应该使用 anova (data)
我也是新手,但这是我的想法。我对方差分析从来没有任何问题。我总是用它来比较 2 个或更多模型。从较小的模型写入较大的模型 anova(smal,large,..),如果较大的模型很重要,则意味着将这些变量添加到较小的变量中,并且具有较大的变量是有意义的。从某种意义上来说,可以说越大越好。但这种方法并不总是有效,尤其是当存在多重共线性时。如果是这种情况,您应该消除一些多共列变量以获得更好的模型,即使方差分析表明您不应该这样做。希望这有帮助。
这两个函数之间的区别在于构建方差分析表时使用的平方和的类型:
contr.sum
)才能获得有效结果。当您需要
I型平方和时,请使用
anova()
(来自基础R,特别是stats::anova()
)。此函数适合比较增量添加预测变量的嵌套模型。然而,对于不平衡的数据,I 类 测试可能会产生误导性结果,因为项的顺序会影响结果。
当需要
Type II或
Type III平方和时,使用
Anova()
(来自 car
包:car::Anova()
),以便在模型内进行灵活测试。 II 型 适用于无交互作用的模型中的主效应,因为它在考虑其他主效应的同时评估每个效应。当模型包含交互时,类型 III 更可取,因为它独立于其他效果测试每个效果。
每个函数都有特定的用途:
anova()
适合嵌套模型比较,而Anova()
更适合模型内测试,特别是在数据或交互不平衡的情况下。
总结:
stats::anova()
进行嵌套模型的顺序比较。car::Anova()
测试模型内的主效应和交互作用,尤其是在不平衡或复杂的设计中。根据交互的存在选择类型 II
或 Type III
。