This step method for update() takes named arguments as ... who's values will replace the elements of the same name in the actual step.

# S3 method for step
update(object, ...)

Arguments

object

A recipe step.

...

Key-value pairs where the keys match up with names of elements in the step, and the values are the new values to update the step with.

Details

For a step to be updated, it must not already have been trained. Otherwise, conflicting information can arise between the data returned from bake(object, new_data = NULL) and the information in the step.

Examples

library(modeldata) data(biomass) biomass_tr <- biomass[biomass$dataset == "Training",] biomass_te <- biomass[biomass$dataset == "Testing",] # Create a recipe using step_bs() with degree = 3 rec <- recipe( HHV ~ carbon + hydrogen + oxygen + nitrogen + sulfur, data = biomass_tr ) %>% step_bs(carbon, hydrogen, degree = 3) # Update the step to use degree = 4 rec2 <- rec rec2$steps[[1]] <- update(rec2$steps[[1]], degree = 4) # Prep both recipes rec_prepped <- prep(rec, training = biomass_tr) rec2_prepped <- prep(rec2, training = biomass_tr) # Juice both to see what changed bake(rec_prepped, new_data = NULL)
#> # A tibble: 456 x 10 #> oxygen nitrogen sulfur HHV carbon_bs_1 carbon_bs_2 carbon_bs_3 #> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> #> 1 42.9 0.41 0 20.0 0.421 0.313 0.0775 #> 2 41.3 0.2 0 19.2 0.423 0.309 0.0754 #> 3 46.2 0.11 0.02 18.3 0.431 0.290 0.0651 #> 4 35.6 3.3 0.16 18.2 0.441 0.258 0.0504 #> 5 40.7 1 0.02 18.4 0.436 0.278 0.0590 #> 6 40.2 2.04 0.1 18.5 0.440 0.262 0.0519 #> 7 38.2 2.68 0.2 18.7 0.434 0.283 0.0613 #> 8 39.7 1.7 0.2 18.3 0.439 0.265 0.0534 #> 9 40.9 0.8 0 18.6 0.426 0.301 0.0710 #> 10 40 1.2 0.1 18.9 0.434 0.282 0.0609 #> # … with 446 more rows, and 3 more variables: hydrogen_bs_1 <dbl>, #> # hydrogen_bs_2 <dbl>, hydrogen_bs_3 <dbl>
bake(rec2_prepped, new_data = NULL)
#> # A tibble: 456 x 12 #> oxygen nitrogen sulfur HHV carbon_bs_1 carbon_bs_2 carbon_bs_3 carbon_bs_4 #> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> #> 1 42.9 0.41 0 20.0 0.322 0.359 0.178 0.0330 #> 2 41.3 0.2 0 19.2 0.325 0.357 0.174 0.0319 #> 3 46.2 0.11 0.02 18.3 0.344 0.347 0.156 0.0262 #> 4 35.6 3.3 0.16 18.2 0.371 0.325 0.127 0.0186 #> 5 40.7 1 0.02 18.4 0.355 0.339 0.144 0.0230 #> 6 40.2 2.04 0.1 18.5 0.368 0.328 0.130 0.0193 #> 7 38.2 2.68 0.2 18.7 0.350 0.342 0.149 0.0242 #> 8 39.7 1.7 0.2 18.3 0.365 0.331 0.133 0.0201 #> 9 40.9 0.8 0 18.6 0.333 0.353 0.166 0.0294 #> 10 40 1.2 0.1 18.9 0.351 0.342 0.148 0.0240 #> # … with 446 more rows, and 4 more variables: hydrogen_bs_1 <dbl>, #> # hydrogen_bs_2 <dbl>, hydrogen_bs_3 <dbl>, hydrogen_bs_4 <dbl>
# Cannot update a recipe step that has been trained! if (FALSE) { update(rec_prepped$steps[[1]], degree = 4) }