euromod_linking.methods.lma_labour_alignment.states

Labour-market state classification for the LMA alignment method.

The four states partition the population by their role in the alignment: employed / unemployed (the two states macro targets speak about), inactive (the recruitment pool for participation entries — domestic tasks and “other” inactivity, i.e. people who could plausibly join the labour force), and ‘other’ (students, retirees, long-term sick/disabled, conscripts — structurally out of the labour market and therefore shielded: alignment never moves them, however large a cell’s gap). Without that shield, a big employment target could “hire” retirees or students, which would be demographically absurd and would leak pension/education benefit changes into the results.

les2 (from EMSD monthly activity, PL211) is preferred over les because it separates domestic-tasks inactivity from retirement and disability — exactly the distinction the recruitment pool needs; the standard les coding is the fallback approximation.

Fixed methodology constants (les/les2 code sets) — not scenario-configurable.

Attributes

Functions

classify_labour_status(→ pandas.DataFrame)

Binary indicators employed/unemployed/inactive/other/active.

definition(→ dict)

The population definitions this methodology works from, as data.

les_variable(→ tuple[str, dict])

Pick the labour-status variable: les2 (more detailed) when present.

Module Contents

euromod_linking.methods.lma_labour_alignment.states.classify_labour_status(les: pandas.Series, codes: dict) pandas.DataFrame[source]

Binary indicators employed/unemployed/inactive/other/active. ‘other’ is the catch-all for codes outside employed+unemployed+inactive.

euromod_linking.methods.lma_labour_alignment.states.definition(les_var: str | None = None) dict[source]

The population definitions this methodology works from, as data.

Published so a caller can size a shock against the same population the alignment will move, instead of reconstructing one from other variables. Built from the code sets above, so it cannot drift from the classification.

euromod_linking.methods.lma_labour_alignment.states.les_variable(columns) tuple[str, dict][source]

Pick the labour-status variable: les2 (more detailed) when present.

euromod_linking.methods.lma_labour_alignment.states.LES2_CODES
euromod_linking.methods.lma_labour_alignment.states.LES_CODES
euromod_linking.methods.lma_labour_alignment.states.WORKING_AGE = (18, 65)