R: LightGBM unloading error fix

lgb.unloader {lightgbm} | R Documentation

## LightGBM unloading error fix

### Description

Attempts to unload LightGBM packages so you can remove objects cleanly without having to restart R. This is useful for instance if an object becomes stuck for no apparent reason and you do not want to restart R to fix the lost object.

### Usage

    lgb.unloader(restore = TRUE, wipe = FALSE, envir = .GlobalEnv)

### Arguments

`restore` | Whether to reload `LightGBM` immediately after detaching from R. Defaults to `TRUE` which means automatically reload `LightGBM` once unloading is performed.
`wipe` | Whether to wipe all `lgb.Dataset` and `lgb.Booster` from the global environment. Defaults to `FALSE` which means to not remove them.
`envir` | The environment to perform wiping on if `wipe == TRUE`. Defaults to `.GlobalEnv` which is the global environment.

### Value

NULL invisibly.

### Examples

    library(lightgbm)
    data(agaricus.train, package = "lightgbm")
    train <- agaricus.train
    dtrain <- lgb.Dataset(train$data, label = train$label)
    data(agaricus.test, package = "lightgbm")
    test <- agaricus.test
    dtest <- lgb.Dataset.create.valid(dtrain, test$data, label = test$label)
    params <- list(objective = "regression", metric = "l2")
    valids <- list(test = dtest)
    model <- lgb.train(params,
                       dtrain,
                       100,
                       valids,
                       min_data = 1,
                       learning_rate = 1,
                       early_stopping_rounds = 10)
    lgb.unloader(restore = FALSE, wipe = FALSE, envir = .GlobalEnv)
    rm(model, dtrain, dtest) # Not needed if wipe = TRUE
    gc() # Not needed if wipe = TRUE

    library(lightgbm)
    # Do whatever you want again with LightGBM without object clashing

[Package lightgbm version 2.2.2 Index]