Hello. I am working with the vignette of the new
rsample package located here. This package is used in conjunction with
recipes as part of Max Kuhn’s tidy modeling approach. Is there a way to extract the model formula from a
recipe class object?
In the code block below, taken from the vignetted linked to above, the model formula is first specified in
rec <- recipe(Sale_Price ~ Neighborhood + House_Style + Year_Sold + Lot_Area, data = ames) and then later respecified in
map(bt_samples$recipes, fit_lm, Sale_Price ~ .) (the last line). It would be great to be able to pull the formula straight from the
recipe class object and map to
lm for fitting, instead of specifying the same thing twice. Thinking something like
extract_formula(rec), but I cannot find the formula in the
rec object as it is currently defined.
Any thoughts would be appreciated!
library(rsample) library(recipes) library(AmesHousing) ames <- make_ames() set.seed(7712) bt_samples <- bootstraps(ames) rec <- recipe(Sale_Price ~ Neighborhood + House_Style + Year_Sold + Lot_Area, data = ames) %>% step_log(Sale_Price, base = 10) %>% step_other(Neighborhood, House_Style, threshold = 0.05) %>% step_dummy(all_nominal()) %>% step_BoxCox(Lot_Area) %>% step_center(all_predictors()) %>% step_scale(all_predictors()) fit_lm <- function(rec_obj, ...) lm(..., data = juice(rec_obj, everything())) bt_samples$recipes <- map(bt_samples$splits, prepper, recipe = rec, retain = TRUE, verbose = FALSE) bt_samples$lm_mod <- map(bt_samples$recipes, fit_lm, Sale_Price ~ .)