Prepare household workers target variable for weighting
prep_target_workers.RdCreates a standardized household workers target variable for household-level weighting and expansion, using either PUMS or survey input. Use when preparing workers targets for synthetic population or survey analysis.
Arguments
- h_data
data.table. Household-level input. Required columns:
For PUMS: must include
SERIALNOand employment columns as specified in settings.For survey: must include age and employment columns as specified in settings. Rows: one per household. Modified by reference: no (returns copy).
- p_data
data.table. Person-level input. Required columns:
For PUMS: must include
SERIALNO,ESR.For survey: must include age and employment columns 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: "h_workers").
- codebook
data.table. Codebook for variable mapping; must include age and employment value and label columns.
- settings
list. Project settings; must include
targets[[target_name]]withlevels,pums_input, andsurvey_input.
Value
data.table. Copy of household-level input with new target variable column (target_name).
Columns: all original plus
target_name(character)Values: standardized worker bins
Row order preserved
Details
Detects input type (PUMS vs. survey) by presence of
SERIALNOcolumn inh_data.For PUMS:
Uses codebook to map
ESRcodes to employment status labels.Uses regex
civilian employed|armed forcesto identify workers inval_label(case-insensitive).Aggregates person-level worker flags to household-level counts.
For survey:
Uses codebook to map age and employment values to labels.
Uses regex patterns:
label %like% '(18)\s*(-|to)?\s*24'to identify adults (age 18-24, default survey value: 995 for missing/work from home).label %like% 'full-time'→ employed_fulllabel %like% 'part-time'→ employed_partlabel %like% 'Self-employed'→ employed_self
Aggregates flags for full-time, part-time, self-employed, non-working adults, and children.
Sums worker flags to household-level counts.
Applies
cut_and_labelto bin worker counts into target levels.Renames output column to
target_name(default:h_workers).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_h_size, prep_target_income
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_ethnicity(),
prep_target_gender(),
prep_target_h_size(),
prep_target_income(),
prep_target_kids(),
prep_target_race(),
prep_target_univstudent(),
prep_target_vehicles(),
prep_transit_target(),
prepare_targets(),
run_tabulate_method()