我试着写一个for循环来创建各种随机森林模型。我已经在名单列表中的不同模型中存储了我想要使用的变量:
list <- c("EXPG1 + EXPG2", "EXPG1 + EXPG2 + distance")
然后我尝试循环创建预测。我最终想要实现的是:
modFit1 <- train(won ~ EXPG1 + EXPG2, data=training, method="rf", prox=TRUE)
modFit2 <- train(won ~ EXPG1 + EXPG2 + distance, data=training, method="rf", prox=TRUE)
然而,我在尝试实现这一目标时遇到了一些问题。
这不起作用:
modFit1 <- train(won ~ list[1], data=training, method="rf", prox=TRUE)
而且这似乎没有做到这一点:
for (R in modfits) {
modfit <- paste0("won ~ ", R, ", data=training, method=\"rf\", prox=\"TRUE")
train(modfit)
}
关于出了什么问题的任何想法?
答案 0 :(得分:0)
创建一个空列表以便在第一个
中存储模型results <- vector('list',2)
list <- c("EXPG1 + EXPG2", "EXPG1 + EXPG2 + distance")
for (i in 1:2){
results[i] <- train(won ~ list[i], data=training, method="rf", prox=TRUE)
}
然后,您应该可以在predict
results[[1]]