我正在尝试为交互建模值,但是当我输入IV和主持人时,它会失败。当我扭转他们时它工作正常。 IV和主持人都是数字,因此它不是数据类型问题。任何人都知道为什么会这样吗?
错误讯息:
Error in cov[interactionterms[j], interactionterms[j]] : subscript out of bounds
实施例
library(probemod)
lm.model<-lm(mpg~cyl*disp,data=mtcars)
## FAILS
ppick<-pickapoint(lm.model, dv="mpg", iv="disp", mod="cyl", method='meansd')
## WORKS FINE
ppick<-pickapoint(lm.model, dv="mpg", iv="cyl", mod="disp", method='meansd')
答案 0 :(得分:1)
请注意,您的回归模型指定为cyl*disp
,因此交互项为cyl:disp
。 订单计数。
如果您指定iv = "disp"
和mod = "cyl"
,pickapoint
会查找disp:cyl
(跟踪本地变量interactionterms
,您会看到它) 但lm.model
中没有这样的字词。
协方差矩阵有dimnames:
# (Intercept) cyl disp cyl:disp
#(Intercept) 25.04638446 -3.770034504 -0.162461470 2.219922e-02
#cyl -3.77003450 0.705917580 0.017132037 -2.807237e-03
#disp -0.16246147 0.017132037 0.001600197 -1.929310e-04
#cyl:disp 0.02219922 -0.002807237 -0.000192931 2.448097e-05
因此你得到&#34;下标超出范围&#34;查找disp:cyl
时出错。