interactVariables takes two or more variables and creates a new one that is the cartesian product expansion of their unique values. For example, if we cross ethnicity (with 2 categories) and race (with 4 categories), the new variable would have 8 valid categories (e.g. black:hispanic, white:hispanic, black:non-hispanic, etc.) and 7 categories where at least one of the variables is missing (e.g. white:No Data).

interactVariables(..., name, collapse_missings = FALSE)

Arguments

...

a sequence of categorical variables to make an interaction from as well as other properties to pass about the case variable (i.e. alias, description)

name

a character to use as the name for the interaction variable

collapse_missings

a logical indicating whether to combine all new categories that are formed from existing missing categories into a single one (defaults to FALSE).

Value

A VariableDefinition that creates the new interaction variable.

Examples

if (FALSE) {
ds$ethn_race <- interactVariables(
  ds$ethnicity, ds$race, name = "Interaction of ethnicity and race"
)
}