R 循环中的简单逻辑回归?

R 循环中的简单逻辑回归?,r,machine-learning,logistic-regression,R,Machine Learning,Logistic Regression,我有一系列多元逻辑回归的特征,但我想分别测试每个特征的多元单变量逻辑回归 我试着做一个这样的循环 features <- c("f1","f2","f3","f4") out <- list() for (f in features) { mod <- train(form = positive ~ f, data = training, method = "glm",

我有一系列多元逻辑回归的特征,但我想分别测试每个特征的多元单变量逻辑回归

我试着做一个这样的循环

features <- c("f1","f2","f3","f4")
out <- list()
for (f in features) {
    mod <- train(form = positive ~ f,
                 data = training,
                 method = "glm",
                 metric = "ROC",
                 family = "binomial")
    out <- append(out,mod)
}


功能为将来的参考提供一个reprex的答案,该答案使用了@Rorschach提出的相同解决方案:

x <- runif(50, min = 0, max = 100) 
z <- runif(50, min = 0, max = 100)
a <- runif(50, min = 0, max = 100)
b <- runif(50, min = 0, max = 100)
positive <- rbinom(50,1, 0.4)

training <- as.data.frame(cbind(x,z,a,b,positive = positive))
training$positive <- factor(training$positive)

library(caret)
features <- c("x","z","a","b")
out <- list()
for (f in features) {
  mod <- train(form = as.formula(paste("positive ~ ", f)),
               data = training,
               method = "glm",
               family = "binomial")

    out <- append(out,mod)
}

x什么是
功能
?请发布一个。更新。它们只是DF特征名称的字符串。变量需要插入到公式对象中。一种方法是使用
as.formula
,例如
as.formula(粘贴(“正~”,f))