R lm捕获交互项,但不是类别变量

问题描述 投票:0回答:1

我想估算以下回归模型:y = b0 + b1 * X + b2 * x * 虚拟

其中y和x是连续的,而dummy是分类的(虚拟变量)。

换句话说,我希望我的估计模型可以估计三个系数:bo,b1和b2。

我已经尝试过以下方法...

lm(y ~ x + x * dummy, data)

但是它将变量[[dummy添加到模型中,并估计dummy的系数。

以下内容与我想做的很接近,但是它将交互作用项转换为二进制变量(真/假)。

lm(y ~ x + I(!x * dummy), data)

对于复制,请考虑以下示例:

data <- tibble(y=rnorm(10), x=runif(10), dummy=ifelse(x>.5,1,0)) lm(y ~ x + x * dummy, data) lm(y ~ x + I(!x * dummy), data)

谢谢
r lm
1个回答
0
投票
这里:

> summary(lm(y ~ x+ x : dummy, data)) Call: lm(formula = y ~ x + x:dummy, data = data) Residuals: Min 1Q Median 3Q Max -0.61312 -0.15558 -0.00354 0.23965 0.47351 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 0.06755 0.36162 0.187 0.857 x 0.94953 1.18299 0.803 0.449 x:dummy -1.10220 0.88112 -1.251 0.251 Residual standard error: 0.4148 on 7 degrees of freedom Multiple R-squared: 0.2645, Adjusted R-squared: 0.05438 F-statistic: 1.259 on 2 and 7 DF, p-value: 0.3412

© www.soinside.com 2019 - 2024. All rights reserved.