24 lines
722 B
R
24 lines
722 B
R
#' Load serialised xgboost model from R's raw vector
|
|
#'
|
|
#' User can generate raw memory buffer by calling xgb.save.raw
|
|
#'
|
|
#' @param buffer the buffer returned by xgb.save.raw
|
|
#' @param as_booster Return the loaded model as xgb.Booster instead of xgb.Booster.handle.
|
|
#'
|
|
#' @export
|
|
xgb.load.raw <- function(buffer, as_booster = FALSE) {
|
|
cachelist <- list()
|
|
handle <- .Call(XGBoosterCreate_R, cachelist)
|
|
.Call(XGBoosterLoadModelFromRaw_R, handle, buffer)
|
|
class(handle) <- "xgb.Booster.handle"
|
|
|
|
if (as_booster) {
|
|
booster <- list(handle = handle, raw = NULL)
|
|
class(booster) <- "xgb.Booster"
|
|
booster <- xgb.Booster.complete(booster, saveraw = TRUE)
|
|
return(booster)
|
|
} else {
|
|
return (handle)
|
|
}
|
|
}
|