# Load libraries
library(parsnip)
library(rsample)
# Load data
split <- initial_split(mtcars, prop = 9/10)
car_train <- training(split)
# Create model and fit
lm_fit <- linear_reg() %>%
set_engine("lm") %>%
fit(mpg ~ ., data = car_train)
out <- butcher(lm_fit, verbose = TRUE)
# Another lm object
wrapped_lm <- function() {
some_junk_in_environment <- runif(1e6)
fit <- lm(mpg ~ ., data = mtcars)
return(fit)
}
# Remove junk
cleaned_lm <- axe_env(wrapped_lm(), verbose = TRUE)
# Check size
lobstr::obj_size(cleaned_lm)
# Compare environment in terms component
lobstr::obj_size(attr(wrapped_lm()$terms, ".Environment"))
lobstr::obj_size(attr(cleaned_lm$terms, ".Environment"))
Run the code above in your browser using DataLab