Skip to content

Replace flat voluntary filing rate with demographic elective-filer model#816

Open
MaxGhenis wants to merge 3 commits intomainfrom
issue-813-elective-filer
Open

Replace flat voluntary filing rate with demographic elective-filer model#816
MaxGhenis wants to merge 3 commits intomainfrom
issue-813-elective-filer

Conversation

@MaxGhenis
Copy link
Copy Markdown
Contributor

@MaxGhenis MaxGhenis commented Apr 22, 2026

Summary

  • replace the flat voluntary filing scalar with a 16-cell demographic table over (children bin, wage-income bin, age-head bin)
  • switch the voluntary-filing pool from raw takes_up_eitc propensity to actual modeled EITC claimants, so non-claimants remain eligible for elective filing
  • add a filer-alignment metric to sanity_checks.py and focused unit tests for the new lookup helpers

Calibration shape

  • num_children: no_children, with_children
  • wage_income: zero, low ($0-$15k), medium ($15k-$30k), high ($30k+)
  • age_head: under_65, age_65_plus

Validation

  • uv run pytest tests/unit/test_stochastic_variables.py tests/unit/datasets/test_cps_voluntary_filing.py -q
  • uv run pytest tests/unit/datasets -q
  • uv run python policyengine_us_data/calibration/sanity_checks.py policyengine_us_data/storage/enhanced_cps_2024.h5 --period 2024
  • patched-temp H5 sanity check improved non_eitc_filer_total_gap from -9.9M to -3.9M, non_eitc_filer_total_agi_abs_error from 11.40M to 10.97M, and non_eitc_filer_low_agi_abs_error from 3.33M to 2.90M

Closes #813

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Replace flat 5% voluntary_filing_rate with demographic-conditioned elective-filer model

1 participant