Skip to contents

Batch assign roles to columns based on their detected types or explicit patterns. This is a convenience wrapper around recipes::update_role() for common analytical data patterns.

Usage

set_measure_roles(
  recipe,
  id_cols = NULL,
  blank_cols = NULL,
  qc_cols = NULL,
  standard_cols = NULL,
  metadata_cols = NULL,
  measure_cols = NULL
)

Arguments

recipe

A recipe object.

id_cols

Column(s) to assign "id" role. Accepts tidyselect.

blank_cols

Column(s) to assign "blank" role. Accepts tidyselect.

qc_cols

Column(s) to assign "qc" role. Accepts tidyselect.

standard_cols

Column(s) to assign "standard" role. Accepts tidyselect.

metadata_cols

Column(s) to assign "metadata" role. Accepts tidyselect.

measure_cols

Column(s) to assign "measure" role. Accepts tidyselect.

Value

Updated recipe object with roles assigned.

Details

Common roles for analytical chemistry workflows:

RolePurpose
idSample identifiers (not used in modeling)
blankBlank/background samples for subtraction
qcQuality control samples
standardCalibration standards
metadataSample metadata (not used in modeling)
measureMeasurement columns for input steps
predictorColumns used as model predictors
outcomeTarget variable(s) for modeling

Examples

if (FALSE) { # \dontrun{
library(recipes)

# Basic role assignment
rec <- recipe(outcome ~ ., data = my_data) |>
  set_measure_roles(
    id_cols = sample_id,
    metadata_cols = c(batch, operator)
  )

# With QC and blank identification by column name patterns
rec <- recipe(outcome ~ ., data = my_data) |>
  set_measure_roles(
    id_cols = sample_id,
    blank_cols = starts_with("blank_"),
    qc_cols = starts_with("qc_")
  )
} # }