R 检查III型方差分析结果

R 检查III型方差分析结果,r,lm,anova,R,Lm,Anova,撇开关于III型方差分析和边际原则等的争论不谈 我已经建立了两个模型,它们的平方和应该是不同的(第三类方差分析将测试这种差异)。代码如下: library(car) library(openintro) data(hsb2) hsb2$gender <- factor(hsb2$gender) contrasts(hsb2$gender) <- "contr.sum" contrasts(hsb2$ses) <- "contr.sum" math_gender_int <

撇开关于III型方差分析和边际原则等的争论不谈

我已经建立了两个模型,它们的平方和应该是不同的(第三类方差分析将测试这种差异)。代码如下:

library(car)
library(openintro)
data(hsb2)
hsb2$gender <- factor(hsb2$gender)
contrasts(hsb2$gender) <- "contr.sum"
contrasts(hsb2$ses) <- "contr.sum"
math_gender_int <- lm(math ~ gender + gender:ses, data = hsb2)
math_gender_ses_int <- lm(math ~ gender + ses + gender:ses, data = hsb2)
但结果表明:

Analysis of Variance Table

Model 1: math ~ gender + gender:ses
Model 2: math ~ gender + ses + gender:ses
  Res.Df   RSS Df  Sum of Sq F Pr(>F)
1    194 15858                       
2    194 15858  0 -1.819e-12      

这是怎么回事?

如果ses和性别都是因素变量,那么
lm
将它们转换为模型中的虚拟变量。当两个分类变量相互作用,并且观察到每个相互作用的集合时,分类的主要影响是不相关的,因为相互作用使模型“饱和”。我不清楚为什么当一个模型明显嵌套在另一个模型中时,这两个模型应该具有相同数量的系数。用Fox的表示法,我正在寻找SS(alpha | beta,gamma)=SS(alpha,beta,gamma)-SS(beta,gamma)。然而,从你所说的,SS(α,β,γ)和SS(β,γ)之间永远不会有区别@李哲源哲元里:“不要只从题目来判断。”我不知道你的意思。问题标题表明,我正在尝试使用增量F检验检查III型方差分析的结果,该检验比较了我认为是两个完全不同(但嵌套)的模型。我同意你的观点,R不能在不手动修改模型矩阵的情况下直接执行。我试试看。谢谢@李哲源Zheyunali:从模型矩阵中删除列非常有魅力。谢谢如果ses和性别都是因子变量,那么
lm
将它们转换为模型中的虚拟变量。当两个分类变量相互作用,并且观察到每个相互作用的集合时,分类的主要影响是不相关的,因为相互作用使模型“饱和”。我不清楚为什么当一个模型明显嵌套在另一个模型中时,这两个模型应该具有相同数量的系数。用Fox的表示法,我正在寻找SS(alpha | beta,gamma)=SS(alpha,beta,gamma)-SS(beta,gamma)。然而,从你所说的,SS(α,β,γ)和SS(β,γ)之间永远不会有区别@李哲源哲元里:“不要只从题目来判断。”我不知道你的意思。问题标题表明,我正在尝试使用增量F检验检查III型方差分析的结果,该检验比较了我认为是两个完全不同(但嵌套)的模型。我同意你的观点,R不能在不手动修改模型矩阵的情况下直接执行。我试试看。谢谢@李哲源Zheyunali:从模型矩阵中删除列非常有魅力。谢谢
Analysis of Variance Table

Model 1: math ~ gender + gender:ses
Model 2: math ~ gender + ses + gender:ses
  Res.Df   RSS Df  Sum of Sq F Pr(>F)
1    194 15858                       
2    194 15858  0 -1.819e-12