Shige posted on Saturday, August 20, 2005 - 12:44 pm
Dear Linda and Bengt,
Is it possible to estimate two-level model with cross-classified random effects? For example, in educational research, kids are nested within primary school and secondary school, but primary and secondary schools are not nested within each other but cross-classified. Some references on this topic can be found in Leyland and Goldstein (2001), chapter 7, or Raudenbush and Bryk (2002), chapter 12.
Leyland, A. H., and Harvey Goldstein. 2001. Multilevel Modelling of Health Statistics. Chichester ; New York: Wiley.
Raudenbush, Stephen W., and Anthony S. Bryk. 2002. Hierarchical Linear Models: Applications and Data Analysis Methods. Thousand Oaks: Sage Publications.
bmuthen posted on Saturday, August 20, 2005 - 2:29 pm
Crossed random effects are not implemented in the current Mplus version, so unless one can think of some latent variable trick, this cannot be done yet.
If you don't have too many categories and have a lot of data, you could conduct a multigroup analysis and then constrain parameters across groups to test for the effects of the classifications.
Jonathan posted on Sunday, July 06, 2014 - 9:23 am
It looks like it's possible to do CCREMs in Mplus now, but I'm having some difficulty replicating a particular model.
I'm looking to run a cross-classified model which has no predictors but has two random intercepts. So using the terminology of the Mplus manual and the example Michael posted above: -->There would be no "within" model -->The only things influencing y would be level2a (primary school) and level2b (secondary school), which would vary randomly
Is this possible in the new MPlus framework? If so, how would I code it?
Tao Yang posted on Friday, June 05, 2015 - 3:36 pm
Hello, my data had encounter nested within day nested within participant while encounter was also nested within patient. So it is three level plus a cross-classified cluster of patient. Is this type of data structure implemented in Mplus at this time? If I understand correctly, Mplus can handle level-1 variables nested within the cross-classification of level-2a and level-2b. Not sure how to handle three-level with a crossed cluster.
Hi. I have five waves of assessments taken on both members of romantic couples. Wave and person should be modeled as crossed and nested within couples. Can MPlus run this type of model as a multilevel model?
Thank you for your response. Wave isn't nested within person because both partners complete the assessments at the same time. So person and wave are completely crossed, and person A's response at wave 1 is likely to be correlated with Person B's response at wave 1. So I was hoping to be able to model person and wave as crossed, and nested within dyad. But I think I can handle this in a multivariate way in which I treat the responses from the two partners as different variables on the same level.
That's what I would suggest - what we call a doubly-wide approach in our teaching. Wide wrt time and wide wrt partners. So for one outcome at T time points, you would analyze a single-level model with 2*T variables.
Hello. My data has a number of levels that I'm trying to account for. At the first 'between-level', each participant is nested within a team. At the second 'between-level', each team appears in at least two clusters of rater. Because teams are not nested within raters, is it ok to use 'type=crossclasified' for the analysis, despite the fact that participants are nested within team. In addition, there is a third 'between-level', in which each rater is nested within a club. I presume MPlus won't be able to deal with this as this is four-level analysis?
One generally does not create a new "nesting level" unless you have more than 10 clusters at that level. For smaller number of clusters use multiple group or group specific predictors (dummy variables technique) or setup it up as a multivariate model. When there are many levels we recommend that you pick up the most important. Compute ICC for each nesting level then keep the top two levels with the biggest ICC. From your description it sounds that type=cross is needed.
Thank you very much for your reply. I have more than 10 clusters per level, except the 'club' level, so should be ok in that regard. I was just wondering, is it suitable to use 'type=crossclassified' when the data is nested at one level but there is multi-membership at another?
The multiple step is mostly doing it on your own and using Mplus to estimate the between part for a particular level - subtract it from the variable then proceed to the next clustering level or cross-nesting.
Thank you for your reply. The analysis I'm completing is multiple imputation, during which the multilevel nature is taken into account. I presume the described multiple step approach isn't possible for this?
Probably it would be quite messy - but given the complexity of your situation I doubt your imputations account for that anyway and you are probably much better off relying on Mplus to deal with the missing data than using imputation that ignores the clustering.
Thank you very much for your advice. Unfortunately, I can't rely on Mplus to deal with missing data using FIML during analyses, as I need to manipulate the dataset further before getting to this stage (e.g., I need to calculate each player's average rating from multiple ratings provided by coaches). Apologies for the repeated questions; hopefully this is the last one. Do you reckon I would be better off (1) performing multiple imputation that takes into account the nested nature of the data at the first 'between-level' only, using 'type=twolevel', and ignoring the other higher grouping levels; or (2) performing multiple imputation that, in some way at least, addresses the nested nature of the data at the first 'between-level', and takes into account the multi-membership nature of the data at the second 'between-level', using 'type=crossclassified'?
I would recommend to use ICC in your decision. In principle you can obtain the between component for each variable in each imputed data set - then average across the imputed data set to get the cluster specific contribution.