为不同的随机森林训练算法创建循环

时间:2016-01-08 14:02:53

标签: r random-forest

我试着写一个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)

}

关于出了什么问题的任何想法?

1 个答案:

答案 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]]