Scaling Numeric Data to a Specific Range
step_range
creates a specification of a recipe
step that will normalize numeric data to be within a pre-defined
range of values.
step_range( recipe, ..., role = NA, trained = FALSE, min = 0, max = 1, ranges = NULL, skip = FALSE, id = rand_id("range") ) ## S3 method for class 'step_range' tidy(x, ...)
recipe |
A recipe object. The step will be added to the sequence of operations for this recipe. |
... |
One or more selector functions to choose which
variables will be scaled. See |
role |
Not used by this step since no new variables are created. |
trained |
A logical to indicate if the quantities for preprocessing have been estimated. |
min |
A single numeric value for the smallest value in the range. |
max |
A single numeric value for the largest value in the range. |
ranges |
A character vector of variables that will be
normalized. Note that this is ignored until the values are
determined by |
skip |
A logical. Should the step be skipped when the
recipe is baked by |
id |
A character string that is unique to this step to identify it. |
x |
A |
When a new data point is outside of the ranges seen in
the training set, the new values are truncated at min
or
max
.
An updated version of recipe
with the new step
added to the sequence of existing steps (if any). For the
tidy
method, a tibble with columns terms
(the
selectors or variables selected), min
, and max
.
library(modeldata) data(biomass) biomass_tr <- biomass[biomass$dataset == "Training",] biomass_te <- biomass[biomass$dataset == "Testing",] rec <- recipe(HHV ~ carbon + hydrogen + oxygen + nitrogen + sulfur, data = biomass_tr) ranged_trans <- rec %>% step_range(carbon, hydrogen) ranged_obj <- prep(ranged_trans, training = biomass_tr) transformed_te <- bake(ranged_obj, biomass_te) biomass_te[1:10, names(transformed_te)] transformed_te tidy(ranged_trans, number = 1) tidy(ranged_obj, number = 1)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.