-
Notifications
You must be signed in to change notification settings - Fork 10
Description
Summary
Currently, policyengine-us-data calculates GEOADJ for congressional districts using ACS median rent data and the GEOADJ formula. This produces unofficial estimates that don't match official Census Bureau SPM thresholds.
Proposed Solution: Census Block Assignment
Recommended approach: For each congressional district, assign a population-weighted random census block, then look up everything from that block.
Why census blocks?
-
One crosswalk, infinite lookups - Build
CD → blockonce, then derive metro, county, tract, PUMA, etc. from block. No need for separate CD→metro, CD→county crosswalks. -
Matches CPS methodology - Census assigns people to geographies, then looks up GEOADJ. This replicates that for simulated CD populations.
-
Captures within-CD heterogeneity - A CD spanning both SF metro (GEOADJ 1.95) and California Nonmetro (0.96) would naturally get a population-weighted mix.
-
Reusable infrastructure - Same block assignment could feed other geography-dependent calculations beyond SPM.
-
More accurate for edge cases - CDs that span metro boundaries, rural/urban splits, etc.
Implementation
- Get census block population data (Decennial Census PL 94-171)
- Build CD → census block crosswalk with population weights
- For each simulation, randomly sample a block within CD (population-weighted)
- Look up metro area (or state metro/nonmetro) for that block
- Use official GEOADJ from Census SPM threshold data
Data Sources
- Census block populations: Decennial Census Redistricting Data
- Block to CBSA crosswalk: Census Geographic Relationship Files
- Official SPM thresholds by metro: https://www2.census.gov/programs-surveys/demo/tables/p60/287/SPM-pov-threshold-2024.xlsx
Context
- The spm-calculator web app now only uses official Census metro areas
- The unofficial CD GEOADJ estimates (computed from ACS rents with arbitrary 0.7-1.5 clamp) have been removed
- This change would allow proper CD-level thresholds using authoritative data
Related
- spm-calculator repo: https://github.com/PolicyEngine/spm-calculator
- Census SPM methodology: https://www.census.gov/topics/income-poverty/supplemental-poverty-measure.html