[英]How do I run a regression with different variables in R using a loop?
我想估计以下回归模型:
y <- rnorm(1:100)
x1 <- 1:100
x2 <- 1:100
x3 <- 1:100
my_data <- data.frame(cbind(y, x1, x2, x3))
m1 <- lm(y ~ x1, data = my_data)
m2 <- lm(y ~ x2, data = my_data)
m3 <- lm(y ~ x3, data = my_data)
我想运行这样的几个模型,在每个 model 中使用相同的数据集和不同的自变量。 如何使用循环运行每个 model?
这可以使用apply()
function 轻松完成:
data_to_analyse <- my_data[, -1] # leave out the y column for this analysis
out <- apply(data_to_analyse, 2, function(current_col){
lm.out <- lm(my_data$y ~ current_col)
})
这需要 data.frame 的每一列(“current_col”),然后执行线性回归。 function 的 output 是一个包含每个回归结果的列表,每个条目由变量名称命名。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.