是否有一种快速简便的方法将列表中包含的randomForest对象传递给combine()函数?
通过randomForest
调用lapply()
后,我现在在列表中有10个randomForest(rfors
)。
我想将所有10个组合在一起。可以理解combine(rfors)
不起作用,因为它无法识别列表中的单个森林。
我花了很长时间来讨论unlist()
,lapply()
和apply()
以尝试以合适的格式提取信息但无济于事。唯一有效的是combine(rfors[[1]], rfors[[2]] ...etc)
。
这有点麻烦,尤其是因为我需要组合的随机森林数量可能会发生变化。对这个人有任何光滑优雅的解决方案吗?
答案 0 :(得分: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))