Leeds-MRG / Minos

SIPHER Microsimulation for estimating the effect on Income policy on mental health.
MIT License
4 stars 3 forks source link

Calculate age of children so we can remove child payments for 16+ #316

Open ld-archer opened 1 year ago

ld-archer commented 1 year ago

The child uplift interventions currently don't have a mechanism for stopping the payment when the child ages out of the eligible range (currently 16 for Scotland).

To know this we need to calculate the ages of children in the household. There are a couple of variables we can use from US to either directly record this or work it out where necessary. I'm ignoring the variables for number of children in household, fertility etc. as we already use them and have a good understanding:

For storing this information in csv we have 2 options.

  1. The bad: Add a new column for child 1, child 2, child 3 etc. and increment them until the age of 16.
  2. The ugly: Store child ages as a delimited string in a single column. Every child has a single age value in this list, and each year we read the string, modify the contents (age by 1 year) and re-stringify and store again.

I'm leaning heavily towards the ugly here, as it avoids the compllication of having to add max(nkids) number of columns and the complications that come with that in the pipeline e.g. replenishment.

RobertClay commented 1 year ago

just to add to this we'll need to write some new module(s)

I think option A makes the most sense to me.

ld-archer commented 1 year ago

Could just be handled in replenishment when we age the rest of the population? Or simply an ageing module to keep things really simple and in their own bucket? Option B would be the ideal when we get to the stage of doing life events but that would also not really be applicable to the children as they're not in the data yet.

RobertClay commented 1 year ago

I like an age module. Would need to remove ageing from repl which is easy. Makes sense to group relevent variables together

RobertClay commented 9 months ago

think age module covers this. close?