小编Ben*_*Ben的帖子

如何防止 do.call() 打印模型中类“call”的所有数据框条目?

如果我使用do.call()以列表形式提供的参数来运行模型,则随模型返回的“调用”会列出参数的任何数据框中的所有条目。这将为大型数据集打印极长的模型输出。

library(randomForest)
data(iris)
do.call(randomForest, list(Species ~ ., data=iris))
#Call:
# randomForest(formula = Species ~ ., data = structure(list(Sepal.Length = c(5.1,  4.9, 4.7,
#4.6, 5, 5.4, 4.6, 5, 4.4, 4.9, 5.4, 4.8,...
Run Code Online (Sandbox Code Playgroud)

是否可以阻止打印数据帧条目,以便输出与正常模型调用相匹配,例如随机森林?

randomForest(Species ~ ., data=iris)
#Call:
# randomForest(formula = Species ~ ., data = iris) 
Run Code Online (Sandbox Code Playgroud)

我可以尝试在分配模型对象中的“调用”槽后重建并替换它,或者将其设置为NULL,但这似乎是一个糟糕的解决方案。

mod <- do.call(randomForest, list(Species ~ ., data=iris))
mod$call <- 'randomForest(formula = Species ~ ., data = iris)'
mod
#Call:
# "randomForest(formula = Species ~ ., data = iris)"

Run Code Online (Sandbox Code Playgroud)

我确信有更好、更简单的解决方案,但我找不到。预先感谢您的任何帮助。

r random-forest

0
推荐指数
1
解决办法
78
查看次数

标签 统计

r ×1

random-forest ×1