我正在研究经典的Iris数据集上的一些ML算法。这是我的代码:
library(tidyverse)
library(caret)
dataset <- iris
tt_index <- createDataPartition(dataset$Sepal.Length, times = 1, p = 0.9, list = FALSE)
train_set <- dataset[tt_index, ]
test_set <- dataset[-tt_index, ]
model_glm <- train(Species ~.,
data = train_set,
method = "gbm")我的问题是,像gbm这样的复杂方法会显示迭代文本信息,如下所示:
Iter TrainDeviance ValidDeviance StepSize Improve
1 1.0986 nan 0.1000 0.3942
2 0.8415 nan 0.1000 0.2644
3 0.6641 nan 0.1000 0.1963
4 0.5333 nan 0.1000 0.1489
5 0.4325 nan 0.1000 0.1091我尝试使用suppressWarnings和suppressMessages函数,但仍然显示迭代信息文本。
suppressMessages(model_glm <- train(Species ~.,
data = train_set,
method = "gbm"))请告诉我,你知道如何避免那些信息文本吗?任何帮助都将不胜感激。
发布于 2020-06-23 04:12:03
这应该能起到作用:
model_glm <- train(Species ~.,
data = train_set,
method = "gbm",verbose=FALSE)解释,在由插入符号调用的gbm()中,有一个设置verbose=FALSE的选项,这样就不会打印训练信息。这些附加参数可以传递给gbm()或任何其他调用的模型函数,通常称为...,您可以在vignette中看到它:
...: Arguments passed to the classification or regression routine
(such as ‘randomForest’). Errors will occur if values for
tuning parameters are passed here.https://stackoverflow.com/questions/62522516
复制相似问题