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

时间:2016-03-09 21:23:17

标签: r regression

例如,如果我们有一个虚拟变量A和一个定量变量B,我们可以使用生产 lm(Y~A * B)来进行回归。但是,如果我有许多虚拟和定量变量(A1,A2,A3 ......和B1,B2,B3 ......),我怎么能编码?

2 个答案:

答案 0 :(得分: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))

答案 1 :(得分:0)

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

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

等等。您只需根据需要添加/删除变量。

但是,如果你问如何根据变量的某些子集进行多次回归迭代(比如只做A = 1和B = 1的回归,那么A = 2和B = 1,等等,然后我需要了解有关您的数据框架的更多信息,以帮助解决这个问题。