28 lines
925 B
R
28 lines
925 B
R
#' Save xgboost model to binary file
|
|
#'
|
|
#' Save xgboost model from xgboost or xgb.train
|
|
#'
|
|
#' @param model the model object.
|
|
#' @param fname the name of the file to write.
|
|
#'
|
|
#' @examples
|
|
#' data(agaricus.train, package='xgboost')
|
|
#' data(agaricus.test, package='xgboost')
|
|
#' train <- agaricus.train
|
|
#' test <- agaricus.test
|
|
#' bst <- xgboost(data = train$data, label = train$label, max_depth = 2,
|
|
#' eta = 1, nthread = 2, nrounds = 2,objective = "binary:logistic")
|
|
#' xgb.save(bst, 'xgb.model')
|
|
#' bst <- xgb.load('xgb.model')
|
|
#' pred <- predict(bst, test$data)
|
|
#' @export
|
|
xgb.save <- function(model, fname) {
|
|
if (typeof(fname) != "character")
|
|
stop("fname must be character")
|
|
if (class(model) != "xgb.Booster")
|
|
stop("the input must be xgb.Booster. Use xgb.DMatrix.save to save xgb.DMatrix object.")
|
|
|
|
.Call("XGBoosterSaveModel_R", model$handle, fname, PACKAGE = "xgboost")
|
|
return(TRUE)
|
|
}
|