在glm函数中循环数据帧列

时间:2019-10-02 11:12:08

标签: r dataframe

我正在尝试在数据框中进行一些基本的单变量回归分析。基本上,我有20列具有不同类型的数据,我想执行以下操作:

glm_test <- glm(y ~ x, family = binomial(link = "logit"), data = df)
summary(glm_test)

然后x应该显然是数据帧的每一列。 我已经尝试过仅使用列名或使用df[[i]]进行循环,但这似乎并不能解决问题。

是的,这是否可能以一种简单的方式实现?还是比看起来更棘手?

1 个答案:

答案 0 :(得分:1)

for (i in 1:ncol(df)) {
  tmp=as.formula(paste0("y~",colnames(df)[i]))
  glm_test <- glm(tmp, family = binomial(link = "logit"), data = df)
  summary(glm_test)
}