If I am wanting to fit a multilevel model across two time points and the first time point is Primary (uk education system, age 7-11 - keystage 2) but the second time point is secondary education (uk - keystage3, age 11-14). How can the school level clustering be implemented if the individuals clustered in time point 1 change to various different schools in time point 2, so the same individuals don't stay in the same cluster at each time point? Would this be a 3-level model time -> individual -> school, or crossed in some way?

The current model considers them separately, but I don't think this is correct? In R, lme4 notation it looks like the following: outcome ~ age_ks2 + group*ks*subj + (1|individual_id) + (1|school_id_ks2)+ (1|school_id_ks3)

where age_ks2 is the baseline age, group is the main effect of interest, ks is the keystage , subj is the taught subject (i.e. mathematics, English, science).

The other thought is to have the school clustering but don't separate the random effects by keystage and include a fixed effect of 'keystage (ks)', so:

outcome ~ age_ks2 + group*ks*subj + (1|individual_id) + (1|school_id)


Thank you for the pointers on multiple classification/membership models, we have done some further reading up on this type of model. However, a key difference between our analysis and the examples typically used in these papers is the longitudinal implications for the clustering.

As far as we understand, these models allow for changes in membership that may influence the outcome variable: for example, we might wish to consider the influence of both the primary school (KS2, age 7-11) and secondary school (KS3, age 11-14) on educational outcomes measured at age 14.

However, we wish to look at educational outcomes at both age 11 and age 14 within the same model (i.e., there are repeated measures within participants, as marked by the time/keystage predictor ks). Thus, while it makes sense that primary school could influence later secondary school results at age 14, it does not make sense for the secondary schools to influence primary school exam results at age 11.

Is there a way for us to sensibly account for the clustering relevant for each time point – e.g., if we have a single school ID variable that is different for each participant’s KS2 and KS3 results? We are looking for the simplest viable model here – our main aim is to account for non-independence within the model rather than specifically investigate school-level effects.

Thanks for any help.


1 Answer 1


I'm fairly sure this is a classic case of multiple membership, and there are models that have been proposed to account for things like this:


A popular package for Bayesian models in R called brms has a helper function for setting up these kinds of models: http://paul-buerkner.github.io/brms/reference/mm.html

  • $\begingroup$ Interesting. Thanks @sjp! Will take a look at the paper. $\endgroup$
    – ReadBeard
    May 22, 2022 at 20:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.