具有交互作用术语的联合重要性检验:包含错误的系数/变量名称

时间:2018-10-30 22:30:14

标签: r linear-regression significance

我正在尝试在R中进行联合意义测试:

library(car)
data("mtcars")
mylm <- lm(mpg ~ qsec + gear + am + am:qsec + am:hp, data=mtcars)

linearHypothesis(mylm, c("am + am:qsec + am:hp"))

但我总是会遇到此错误:

Error in constants(lhs, cnames_symb) : 
  The hypothesis "am + am:qsec + am:hp" is not well formed: contains bad coefficient/variable names.

我要测试的是

  

am + am:qsec + am:hp = 0

我在文档中找到了如何测试所有交互条件的方法:

linearHypothesis(mylm, matchCoefs(mylm, ":"), verbose=TRUE)

但是我想一起测试交互条件和水平条件。这可能吗?

1 个答案:

答案 0 :(得分:1)

只需注意

mylm$coefficients
# (Intercept)        qsec        gear          am     qsec:am       am:hp 
# -12.2376256   0.8891289   4.1170265 -19.4050359   1.5298394  -0.0316123 

具有qsec:am而不是am:qsec。然后

linearHypothesis(mylm, c("am + qsec:am + am:hp"))

可以工作,但是这种排序并不明显。例如,

lm(mpg ~ am:qsec + am:hp, data = mtcars)$coef
# (Intercept)     am:qsec       am:hp 
#  17.1256930   0.7542508  -0.0456892