Income Adjustment Module¶
This module updates person-level earnings based on county-specific annual
income growth rates. It runs after the income prediction step and applies a
multiplicative adjustment to every person’s earning attribute, keeping
geographic variation in wage growth over the simulation period.
Unlike the Income Module, this module does not use an estimated
regression model: it reads pre-computed annual rate data from the
income_rates table and directly scales existing earnings.
Key features:
Applies county-specific income growth rates to person-level earnings each simulation year.
Updates earnings multiplicatively: a rate of
0.05means a 5% increase.Maintains geographic variation in income growth patterns across counties.
Caveats:
Requires an
income_ratestable with columnsyear,lcm_county_id, andrate(loaded via the[[tables]]section of the configuration).Assumes the households table has a
lcm_county_idcolumn for geographic mapping.All persons in the same county receive the same proportional adjustment.
No validation of rate values is performed; extreme rates could produce unrealistic results.
See also
Income Module for the companion module that predicts household income from a regression model and optionally applies CPI-based inflation scaling.
Module function¶
This module does not have dedicated configuration options.
- demos.models.income_adjustment.income_adjustment(persons, households, income_rates, year)[source]¶
Update person-level earnings based on county-specific income growth rates.
This step applies multiplicative adjustments to person earnings using annual growth rates that vary by county. It maintains geographic variation in income trajectories while updating the entire population simultaneously.
- Parameters:
persons (orca.Table) – The persons table containing individual-level attributes including earnings.
households (orca.Table) – The households table containing household-level attributes including county ID.
income_rates (orca.Table) – Table with annual income growth rates by county.
year (int) – The current simulation year.
- Return type:
None
Notes
Modifies persons.earning in place using multiplicative adjustment.
Requires income_rates table with columns: year, lcm_county_id, rate.
All persons in the same county receive the same proportional adjustment.
Rate of 0.05 means 5% growth (earnings multiplied by 1.05).