如何使用 anova 进行两个模型比较?

机器算法验证 r 回归 方差分析
2022-03-04 12:57:10

anova比较两个模型时,我应该如何理解结果?

例子:

  Res.Df    RSS Df Sum of Sq      F    Pr(>F)    
1      9 54.032                                  
2      7  4.632  2      49.4 37.329 0.0001844 ***

联机帮助页指出:“计算一个或多个拟合模型对象的方差(或偏差)表分析。” 但是,外教授提到它可以用于模型比较-这就是我打算做的。

因此,我假设我可以使用anova(model1, model2)并获得一个 p 值,它告诉我是否应该拒绝原假设:“模型是相同的”。

我可以说如果 p 值小于(比如说)0.05,那么模型会显着不同吗?

1个回答

假设您的模型是嵌套的(即相同的结果变量和模型 2 包含模型 1 的所有变量加上 2 个附加变量),然后方差分析结果表明 2 个附加变量共同解释了足够的方差,您可以拒绝零假设两个变量的系数都等于 0。这实际上就是你所说的。如果两个系数都等于 0,那么模型是相同的。

作为附加说明,如果您不知道,ANOVA 始终等同于进行模型比较。当您查看单个模型的 ANOVA 时,它会为您提供每个预测变量的影响。这相当于在您的完整模型和删除其中一个变量的模型之间进行模型比较。将为您提供平方和(类型 III)和的检验统计量。请注意,R 为您提供类型 I 的平方和。如果您需要类型 III,请使用或使用并不断更改模型中变量的顺序,并且只取最后一个变量的平方和。Model1:y=a+bx1+cx2+dx3;Model2:y=a+bx1+cx2x3car::Anovaanova