Prepare ethnicity target variable for weighting
prep_target_ethnicity.RdCreates a standardized ethnicity target variable for person-level weighting and expansion, using either PUMS or survey input. Use when preparing ethnicity targets for synthetic population or survey analysis.
Arguments
- h_data
data.table. Household-level input (not used, included for interface consistency).
- p_data
data.table. Person-level input. Required columns:
For PUMS: must include ethnicity label column as specified in settings.
For survey: must include ethnicity column as specified in settings. Rows: one per person. Modified by reference: no (returns copy).
- target_name
character(1). Name of the target variable to create (default: "p_ethnicity").
- codebook
data.table. Codebook for variable mapping; must include ethnicity value and label columns.
- settings
list. Project settings; must include
targets[[target_name]]withlevelsandsurvey_input.
Value
data.table. Copy of person-level input with new target variable column (target_name).
Columns: all original plus
target_name(factor)Values: standardized ethnicity levels
Row order preserved
Details
Detects input type (PUMS vs. survey) by presence of
SERIALNOcolumn.For PUMS:
Uses ethnicity label column, converts to lowercase.
Uses regex patterns from
hispanic_binaryandhispanic_detailto assign target levels:e.g.,
not (spanish|hispanic|latino)→ "not_hispanic"mexican→ "mexican"puerto rican→ "puerto_rican"cuban→ "cuban"dominican→ "dominican"else → "other_hispanic"
Assigns default target as "hispanic" (binary) or "other_hispanic" (detail).
For survey:
Uses survey input column as specified in settings (no regrouping currently).
Checks that observed levels match expected target levels from settings (symmetric difference).
Factors output column to match target levels.
Renames output column to
target_name(default:p_ethnicity).Returns a copy of the input data.table with the new target variable.
Error handling: stops if levels do not match expected values.
See also
get_target_methods, prep_target_race, prep_target_gender
Other target preparation:
get_target_methods(),
prep_target_adults(),
prep_target_age(),
prep_target_commutemode(),
prep_target_cross(),
prep_target_edulevel(),
prep_target_employment(),
prep_target_gender(),
prep_target_h_size(),
prep_target_income(),
prep_target_kids(),
prep_target_race(),
prep_target_univstudent(),
prep_target_vehicles(),
prep_target_workers(),
prep_transit_target(),
prepare_targets(),
run_tabulate_method()