1

是否有一种快速简便的方法可以将列表中包含的 randomForest 对象传递给 combine() 函数?

作为调用randomForestthrough的结果lapply(),我现在在列表中有 10 个随机森林 ( rfors)。

我想将所有 10 个结合起来。可以理解combine(rfors)的是,它不起作用,因为它无法识别列表中的各个森林。

我花了很长时间弄乱unlist()lapply()apply()尝试以合适的格式提取信息,但无济于事。唯一有效的是combine(rfors[[1]], rfors[[2]] ...etc).

不过这有点麻烦,尤其是因为我需要组合的随机森林的数量可能会发生变化。有人可以建议任何时尚优雅的解决方案吗?

4

1 回答 1

1

使用以下示例?combine

data(iris)
rf1 <- randomForest(Species ~ ., iris, ntree=50, norm.votes=FALSE)
rf2 <- randomForest(Species ~ ., iris, ntree=50, norm.votes=FALSE)
rf3 <- randomForest(Species ~ ., iris, ntree=50, norm.votes=FALSE)
rf <- do.call(combine,list(rf1,rf2,rf3))
于 2013-07-26T15:55:00.147 回答