Prioritize reported recipients in take-up assignment#512
Open
Prioritize reported recipients in take-up assignment#512
Conversation
Previously, take-up was assigned randomly across all eligible units at the aggregate take-up rate. This meant that some households who reported receiving benefits (and clearly do take them up) were randomly marked as not taking up, while non-reporters were randomly marked as taking up. This change conditions take-up assignment on reported receipt: anyone with nonzero reported benefits is marked as taking up, then the rate among non-reporters is adjusted to hit the aggregate target. This preserves the overall take-up rate while ensuring household-level income is more accurate. Benefits affected: - SSI (ssi_reported at person level) - SNAP (snap_reported at SPM unit level) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Problem
Previously, take-up was assigned randomly across all eligible units at the aggregate take-up rate. This meant that:
This disconnect between reported receipt and simulated take-up led to inaccurate household-level income, which matters for poverty measurement and distributional analysis.
Solution
For each benefit (SSI, SNAP), the new approach:
takes_up = True)This ensures:
Benefits affected
ssi_reportedat person level,takes_up_ssi_if_eligible)snap_reportedat SPM unit level,takes_up_snap_if_eligible)Test plan
takes_up = TrueGenerated with Claude Code