R 中虚拟变量和定量变量的回归

Regression with dummy and quantitative variables in R

例如,如果我们有一个虚拟变量 A 和一个定量变量 B,我们可以使用产生式 lm(Y ~ A * B) 进行回归。但是,如果我有很多虚拟变量和定量变量(A1、A2、A3...和 ​​B1、B2、B3...),我该如何编码呢?

如果我理解你的问题并且 A1、A2、A3 等和 B1、B2 和 B3 是它们自己的独立变量,你只需确保它们在同一个数据框中并执行

lm(Y ~ A1 + A2 + A3 + B1 + B2 + B3, data = df)

等等。您只需 add/delete 需要的变量即可。

但是,如果您询问如何根据变量的某些子集进行回归的多次迭代(例如仅在 A = 1 和 B = 1 时进行回归,那么 A = 2 和 B = 1 等)然后我需要了解有关您的数据框的更多信息以帮助解决此问题。

正如@Frank 在评论中指出的那样,您可以使用 cbind 对变量进行分组:

set.seed(1243)
df <- data.frame(a1= sample(c(0,1), size= 100, replace=T),
             a2= sample(c(0,1), size= 100, replace=T),
             a3= sample(c(0,1), size= 100, replace=T),
             b1= rnorm(100), b2= rnorm(100), b3= rnorm(100), n=rnorm(100))
summary(lm(n ~ cbind(a1,a2,a3) * cbind(b1,b2,b3), data=df))