PolicyEngine / PolicyEngine/policyengine-uk
Predictive model for imputing take-up
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 50
- Forks
- 33
- Avg merge
- 20h 58m
- Merged PRs (30d)
- 14
Description
Following on to #469, instead of assigning eligible non-reported households a constant probability of participating in a program, we can build a model (logit, probit, random forest, neural net) to assign heterogeneous probabilities. The model could look something like this for UC:
reports_UC = UC_eligible_amount + household_size + reports_CB + CB_eligible_amount + ...
That is, predict whether a household reports participating based on characteristics of their eligibility, general characteristics of the household, and characteristics of their participation in other programs. This will preserve more of the correlation structure of benefit participation.
While this could improve imputations if the reported data is reasonably unbiased across groups, it could actually worsen the imputation if certain groups consistently misreport benefits. In the absence of studies using administrative data, I don't think we can know, and if for no other reason, it seems like preserving the participation correlation structure could make this worthwhile. But I don't think it should be a very high priority given the risks.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the related issue #469 and the current constant-probability imputation approach. Define the available household and benefit-participation inputs, then compare candidate predictive models and their effects on participation correlations. Done means a tested heterogeneous-probability imputation with its risks and assumptions documented.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- data, machine-learning
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100