Multilevel modeling with SEM PreviousNext
Mplus Discussion > Structural Equation Modeling >
 Ravi Jasuja posted on Wednesday, June 14, 2006 - 11:25 pm

1. Could you please explain how the issue of observation dependence or independence can be adequately handled in structural equation modeling approach.

2. Is multilevel modeling possible in SEM ?

Could you please recommend some literature on multilevel modeling in SEM?

Thank you.
 Linda K. Muthen posted on Thursday, June 15, 2006 - 8:24 am
Yes, multilevel modeling is possible in SEM. See Muthén, B. (1994). Multilevel covariance structure analysis. In J. Hox & I. Kreft (eds.), Multilevel Modeling, a special issue of Sociological Methods & Research, 22, 376-398. You can request this paper from

See Examples 9.6 to 9.11 in the Mplus User's Guide which is available on the website.
 robertav posted on Monday, September 03, 2007 - 9:29 am
Dear Authors,
I'm carring on a SEM with both continuous and categorical(ordinal) indicators, with 5 continuous latent factors. I have 13428 observation.
In order to save time I'm using the WLSMV estimator. How many observation I need to consider the WLSMV a good approximation of the ML estimator? Can you suggest me any reference?

And, as second step of my analysis, I’d like to add a multilevel structure.
I have 5 continuous latent factors at the first level. Do you think it is feasible with Mplus?
Any hints will be appreciate.

 Linda K. Muthen posted on Monday, September 03, 2007 - 10:21 am
Sample size depends on many factors so it is hard to say. I don't think the sample size requirement differs for maximum likelihood and weighted least squares.

At this time, you will need to use numerical integration to estimate a multilevel SEM model. Five factors would not be feasible.
 Maša Vidmar posted on Friday, April 03, 2009 - 6:37 pm
My data were collected for students nested within schools, but my primary interest is to do a single-level SEM model and not multilevel one. However, 7 out of 39 indicators showed significant school-level variance (which implies I need MLM). Since I am not interested in MLM I would like the dependence of the data to be taken into account, but not modeled.

1. Is type=complex appropriate analysis for this?

2. Does it produce the same info in the output as type=missing? I also have some missing data - how to account for that?

3. Do I have to grand-mean center those 7 variables first before using single-level SEM (and eliminate cluster-level variance)?

 Bengt O. Muthen posted on Saturday, April 04, 2009 - 4:24 pm
1. SEM models are typically not "aggregatable" in the sense of Muthen & Satorra (1995), which means that Type = Complex should not be used but instead Type = Twolevel. This happens if factor loadings are not the same on the two levels. I would recommend a simple random intercept twolevel SEM using the analysis steps of

Muthén, B. (1994). Multilevel covariance structure analysis. In J. Hox & I. Kreft (eds.), Multilevel Modeling, a special issue of Sociological Methods & Research, 22, 376-398. (#55)

2. The Mplus Twolevel analysis does do Type = Missing as the default, which uses the standard "MAR" under ML approach - using all available data (often called "FIML").

3. No. And grand-mean centering does not take care of clustering.

You will find a handout about Mplus multilevel factor analysis and SEM on our web site under Mplus Short Courses Topic 7, from the recent course at Johns Hopkins in March. The video of the course will soon be available for free watching on the web.
 newuser posted on Monday, January 04, 2010 - 7:43 am
Hi, I am running a multi-level SEM mediation model (2-1-1), the M variable is a second order variable. I have successfully run similar (1-1(second order)-1) models with the same M and Y variables. However, running into problems when I try the (2-1-1) using a higher level X. I am wondering if the second order variable(M)is creating the problem, and if I should reduce it to a first order variable?

Here is how the 2-1-1 model looks
Y by y1 y2 y3
M by m1 m2 m3 (second order)
M1 by ma mb mc (first order)
M2 by md me mf (first order)
M3by mg mh mi (first order)
X by x1 x2 x3
Y on M
X by x1 x2 x3
Yb by y1 y2 y3
Mb by m1 m2 m3 (second order)
M1b by ma mb mc (first order)
M2b by md me mf (first order)
M3b by mg mh mi (first order)
Yb on Mb X
Mb on X

Thank you for your help!!
 Linda K. Muthen posted on Monday, January 04, 2010 - 9:06 am
Please send your input, data, output, and license number to
 Mariano Sto Domingo posted on Wednesday, May 11, 2011 - 10:19 am
1. Is two-level analysis using multiple imputation data possible to run using MPlus 6.11?

2. How do we set up the data if we have 10 sets of multiple imputation data?
 Linda K. Muthen posted on Wednesday, May 11, 2011 - 10:32 am
Mplus can both impute data and analyze imputed data for two-level analysis.

For analyis, each imputed data set should be in a separate file and TYPE=IMPUTATION should be used. See Example 13.13 in the Version 6 user's guide.
 SY Khan posted on Thursday, December 19, 2013 - 12:48 pm
Dear Dr. Muthen,

I am testing a 2-level SEM. The level 1 outcome variable is a continuous latent variable (JS). On level 2 I have another continuous latent variable (EMPPART).

I have categorical factor indicators at the WITHIN level. On the between level I have Binary factor indicators for level 2 factor and random intercept factor indicators. And no covariates on any level in the initial model! I am following example 9.9 of users guide 7.11.

I am using the following syntax:



NAMES= ---;



Missing= all (999);








FJS2 BY JS1-9;




1-Does this syntax suffice?

Also kindly explain:

2- why do we want to save data in this analysis? I.e. What can we explore from the saved data at a later stage?

3- as I can not use BOOTStRAP with type= TWOLEVEL what can I use instead? Is there a need to use BOOTSTRAP or other similar techniques to make analysis stronger?

Thanks very much for your input and time.
 Linda K. Muthen posted on Friday, December 20, 2013 - 5:53 am
1. Run the analysis to see if you get what you want.

2. This is explained on page 280 of the user's guide.

3. Use the regular standard errors.
 SY Khan posted on Friday, January 10, 2014 - 6:43 am
Hi Dr. Muthen

I have tried running the above syntax a few times in Mplus version 7.11. It always gives the message that Mplus has stopped working unexpectedly. In the out put it says

The data terminated normally and does not give any output.

Please advise what could be wrong in the input instructions.

Many thanks.
 Linda K. Muthen posted on Friday, January 10, 2014 - 7:22 am
It sounds like you are trying to write the output to a directory that does not have write privileges. Windows 7 does not allow any files to be write under the directory of Program Files. Try moving the input and data to c:/
 SY Khan posted on Friday, January 10, 2014 - 7:33 am
Hi Thanks for your prompt reply.

I am running this input file in windows 8.1. Is that a problem? Is Mplus NOT supported in Windows 8.1?

Many thanks.
 Linda K. Muthen posted on Friday, January 10, 2014 - 8:47 am
Mplus is compatible with Windows 8. The problem is likely what I describe above for Windows 7.
 SY Khan posted on Tuesday, January 21, 2014 - 6:25 am
Hi Dr. Muthen,

Sorry for coming back with the same problem over and over. I have tried moving my data and input files in C directory as suggested in your previous post above.

This time too the test ran for approx. five days and then aborted unexpectedly . The message was that " Mplus stopped working unexpectedly but no other error message was given that suggested any modifications to the input instructions etc.

I would be greatly thankful if you could suggest remedies as this is one of the main model in my analysis. How can I make this model run successfully?

Many thanks for your support and assistance.
 Linda K. Muthen posted on Tuesday, January 21, 2014 - 6:55 am
Please send your input, data, and license number to
Back to top
Add Your Message Here
Username: Posting Information:
This is a private posting area. Only registered users and moderators may post messages here.
Options: Enable HTML code in message
Automatically activate URLs in message