繁体   English   中英

如何使用循环在 R 中使用不同变量运行回归?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM