Three Level SEM Random Intercepts
Message/Author
 Ryan Krone posted on Wednesday, August 27, 2014 - 3:57 pm
Dear Drs. Muthen,

I'm attempting a three-level SEM with categorical dvars and covariates that are regressed on all of the latent variables. I'm working with version 7.2
The data is cross-sectional complex survey data with a sample weight and with missing data. The levels are individual, province/state, and country.
I've gotten as far as specifying the SEM with the covariates but now I'm having difficulty specifying the multi-level model.
Here is a reduced form example of my input file:
VARIABLE: USEVARIABLES ARE u1-u8 x1- x4 prov cname wt;
CATEGORICAL = u1-u8;
CLUSTER = cname prov;
WEIGHT = wt;
MISSING ARE ALL (-99);
ANALYSIS: TYPE = COMPLEX THREELEVEL;
ESTIMATOR = BAYES;
PROCESSOR = 2;
MODEL: %WITHIN%
rol BY u1-u2;
legit BY u3-u5;
civic BY u6-u8;
rol ON legit;
rol ON civic;
rol legit civic ON x1-x4;
legit WITH civic;
%BETWEEN prov%
%BETWEEN cname%
OUTPUT: MODINDICIES TECH1 TECH8;
At this point I don't have second or third level covariates. All my data is at the individual level. I'm just interested in controlling for nested variation similar to a multilevel regression random intercepts model. How would I specify the between parts to do this?

Ryan
 Bengt O. Muthen posted on Wednesday, August 27, 2014 - 4:34 pm
You want to work with random intercepts for your 3 factors. To do that you can formulate the same factor models on the two Between levels and correlate those. See the multilevel factor analysis examples in our User's Guide for 2-level versions of this.
 Ryan Krone posted on Wednesday, August 27, 2014 - 6:36 pm
Dr. Muthen,
Thank you for the timely response.

I'm not sure which example to work from in the user guide. I had been trying to work from example 9.9 without much luck. But given your response and based on responses to other posts, is it as simple as specifying it this way?
%BETWEEN prov%
rol WITH legit civic;
legit WITH civic;
%BETWEEN cname%
rol WITH legit civic;
legit WITH civic;

When I do try to do this, I get the following error message:
*** ERROR in ANALYSIS command
Unrecognized setting for TYPE option:
THREELEVEL
Regards,
Ryan
 Bengt O. Muthen posted on Thursday, August 28, 2014 - 9:39 am
You don't show any BY statements in your two Between parts. For a simple example, see UG ex 9.6.

If the TYPE error remains, you need to contact support with your license number to see what you are doing in detail.
 Denise Kerkhoff posted on Thursday, March 22, 2018 - 5:12 am
Hello

I try to rewrite a two-lvl growth curve (TYPE=TWOLEVEL) to a 3-lvl SEM (TYPE=THREELEVEL). I have obtained the best results using:

ANALYSIS:TYPE = TWOLEVEL;
MODEL:
%WITHIN%
int1 | t1@1 t2@1 t3@1;
t1-t3 (1);
%BETWEEN%
int2 | t1@1 t2@1 t3@1;
t1-t3@0;

and

ANALYSIS:TYPE = THREELEVEL;
MODEL:%WITHIN%
int by t1@1 t2@1 t3@1;
int@0;
[int@0];
t1-t3 (1);
%BETWEEN id%
int1 by t1@1 t2@1 t3@1;
t1-t3@0;
%BETWEEN clus%
int2 by t1@1 t2@1 t3@1;
[t1@0 t2@0 t3@0];
t1-t3@0;

I obtain almost the same results, but the degrees of freedom differ for my model (Growth-Curve: 11/ SEM: 17) and the baseline model (6/9).

Can you tell me why the models differ and how I can get equivalent model results?

Best regards, Denise
 Bengt O. Muthen posted on Thursday, March 22, 2018 - 12:12 pm
Regular 3-level modeling of growth would have

s | y on time;

on level 1 where Within=time.

Levels 2 and 3 then represent various clusterings such as classroom and school.

Mplus wide growth modeling using 3-level in wide form on level 1 is really a 4-level analysis. See our Short course Topic 10, the V7Part2 handout, slides 125-127.