我希望在将另一个预测变量约束为负二项式glm中的特定值时获取一个预测变量的参数估计值,以便更好地解释交互效应。
我的模型是这样的:
model <- glm.nb(outcome ~ IV * moderator + covariate1 + covariate2)
由于IV:moderator
项很重要,我希望在IV
的特定值(即+1和-1 SD)处获得moderator
的参数估计值。我可以使用IV
包在moderator
的不同级别获得visreg
的斜率估算值,但我不知道如何估算SE和测试统计数据。 moderator
是一个连续变量,因此我无法使用multcomp
包和其他用于查找简单斜率的包(例如pequod
和QuantPsyc
)与负二项式不兼容回归。谢谢!
答案 0 :(得分:2)
如果要约束回归中的某个值,请考虑将该变量从模型中取出并将其作为偏移量添加。例如,使用示例数据。
dd<-data.frame(
x1=runif(50),
x2=runif(50)
)
dd<-transform(dd,
y=5*x1-2*x2+3+rnorm(50)
)
我们可以使用x1
和x2
作为参数运行模型
lm(y ~ x1 + x2,dd)
# Call:
# lm(formula = y ~ x1 + x2, data = dd)
#
# Coefficients:
# (Intercept) x1 x2
# 3.438438 4.135162 -2.154770
或者说我们知道x2
的系数是-2。然后我们无法估算x2
,但将该字词作为偏移量
lm(y ~ x1 + offset(-2*x2), dd)
# Call:
# lm(formula = y ~ x1 + offset(-2 * x2), data = dd)
#
# Coefficients:
# (Intercept) x1
# 3.347531 4.153594
offset()
选项基本上只创建一个系数始终为1的协变量。尽管我已经使用lm
进行了演示,但同样的方法应该适用于glm.nb
和许多其他回归模型