tune (version 1.0.0)

merge.recipe: Merge parameter grid values into objects

Description

merge() can be used to easily update any of the arguments in a parsnip model or recipe.

Usage

# S3 method for recipe
merge(x, y, ...)

# S3 method for model_spec merge(x, y, ...)

Value

A tibble with a column x that has as many rows as were in y.

Arguments

x

A recipe or model specification object.

y

A data frame or a parameter grid resulting from one of the grid_* functions. The column names should correspond to the parameter names (or their annotations) in the object.

...

Not used but required for S3 completeness.

Examples

Run this code
# \donttest{
library(tibble)
library(recipes)

pca_rec <-
  recipe(mpg ~ ., data = mtcars) %>%
  step_impute_knn(all_predictors(), neighbors = tune()) %>%
  step_pca(all_predictors(), num_comp = tune())

pca_grid <-
  tribble(
    ~neighbors, ~num_comp,
             1,         1,
             5,         1,
             1,         2,
             5,         2
  )

merge(pca_rec, pca_grid)

spline_rec <-
  recipe(mpg ~ ., data = mtcars) %>%
  step_ns(disp, deg_free = tune("disp df")) %>%
  step_ns(wt, deg_free = tune("wt df"))

spline_grid <-
  tribble(
    ~"disp df", ~ "wt df",
    3,         3,
    5,         3,
    3,         5,
    5,         5
  )

merge(pca_rec, pca_grid)

if (rlang::is_installed("modeldata")) {
  library(parsnip)
  library(dials)
  data(hpc_data, package = "modeldata")

  xgb_mod <-
    boost_tree(trees = tune(), min_n = tune()) %>%
    set_engine("xgboost")

  set.seed(254)
  xgb_grid <-
    extract_parameter_set_dials(xgb_mod) %>%
    finalize(hpc_data) %>%
    grid_max_entropy(size = 3)

  merge(xgb_mod, xgb_grid)
}
# }

Run the code above in your browser using DataLab