Multiple group approach with latent c... PreviousNext
Mplus Discussion > Latent Variable Mixture Modeling >
 Ravi Jasuja posted on Wednesday, November 08, 2006 - 8:28 am

Is it possible to use latent factors to define groups in a multiple group approach in SEM? Could you please direct me to articles which discuss this approach? My knowledge of statistics is at best basic.

Any help would be appreciated.

Thank you.
 Linda K. Muthen posted on Thursday, November 09, 2006 - 10:10 am
If you want to use a categorical latent variable is used to define latent classes based on unobserved heterogeneity in the data, use latent class analysis.
 Ravi Jasuja posted on Thursday, November 09, 2006 - 10:33 am
Dear Dr. Muthen,

Thank you for your prompt response.

Does that also mean I can use the latent factor as a moderator with latent class analysis? Could you direct me to literature where latent class analysis is used to test the effects of a latent variable as a moderator?

Thank you again.
 Linda K. Muthen posted on Thursday, November 09, 2006 - 6:04 pm
It is not clear what you are trying to do. If you are interested in latent variable interactions, then you would not use latent class analysis. Mplus has a special option, XWITH to use for latent variable interactions. You would not form groups using the continous latent variable. Latent class analysis use categorical latent variables.
 Michael Spaeth posted on Wednesday, April 08, 2009 - 9:39 am
Dear all,
I would like to do a multiple group analysis and test the equality of parameters of a cross domain growth curve model (deviant peers/Delinquency). The groups, however, are not observed but should be based on a growth mixture analysis (family climate). One approach would be to save the Cprb of the mixture analysis and use the most likely probability class membership as grouping variable afterwards when doing multiple group analysis, right?
However, I prefer group memberships based on posterior probabilities due to class uncertainty. Is there a way to conduct the above mentioned multiple group analysis based on fractional class membership? I guess one has to handle the cross domain model and the mixture model in ONE model to achieve this, but I don't want my growth mixture model to be influenced by the cross domain growth model.
Any help would be greatly appreciated!
 Bengt O. Muthen posted on Wednesday, April 08, 2009 - 3:15 pm
Sounds like you have 3 processes and you want to keep the GMM for 2 (deviant, delinq) separate from the GMM of the third (family). You say you want to take a "analyze-classify-analyze" approach. The quality of this depends on the entropy of the family GMM - see different approaches discussed in the newly posted paper:

Clark, S. & Muthén, B. (2009). Relating latent class analysis results to variables not included in the analysis. Submitted for publication. Submitted for publication.

which you find under Papers, LCA.
 Jerry Cochran posted on Wednesday, February 01, 2012 - 12:02 pm

I have two datasets from different behavioral health RCTs that contain a similar measure of alcohol use consequences.

I have run LCAs seperately for each dataset to see if the models are similar. The dataset with 750 cases produces a model with five classes, and the other dataset with 250 cases produces a model with four classes. Conditional item probabilities, covariate effects, and distal outcome posses several similarities, with the exception of the missing class in the second dataset.

My question is if there is a statistical test compare these two models directly to one other, maybe like a chi-square difference test for multiple groups (but, I am not sure if such an application would be appropriate).

Any ideas would be appreciated. Thank you
 Bengt O. Muthen posted on Wednesday, February 01, 2012 - 2:40 pm
You can analyze the two datasets jointly and test any parameter equality using Model Test.
 Laura Marie Schons posted on Wednesday, February 29, 2012 - 7:33 am

I also would like to estimate a multiple group analysis for a given structural equation model using an unobserved group variable from a latent class analysis. I have read the paper that you recommended:

Clark, S. & Muthén, B. (2009). Relating latent class analysis results to variables not included in the analysis.

I understand that applying sigle step regressions delivers the best results. I have read the syntax at the end of the paper but I still do not understand how I would have to specify this type of analysis for an MGA in MPlus in my given case?

Any help would be greatly appreciated.
Thank you very much in advance!
 Bengt O. Muthen posted on Wednesday, February 29, 2012 - 8:39 am
Are you saying that you are interested in how to simultaneously, in one single analysis, do a combination of an LCA and an SEM?
 Laura Marie Schons posted on Wednesday, February 29, 2012 - 1:13 pm
Yes, would that be possible?
 Linda K. Muthen posted on Wednesday, February 29, 2012 - 6:09 pm
Yes, see Example 7.19 in the user's guide.
 Maira Covre-Sussai posted on Thursday, June 07, 2012 - 10:25 am

I am estimating a multiple group mixture model using the KNOWNCLASS specification (7.21 in MPLUS user's guide).
I have two continuous indicators, collected over 8 regions (groups). I want to estimate model with 2 latent classes therefore, I use the following set-up:

Data: FILE IS LA_LCA.dat;

MISSING = ALL (999);
CLASSES = cg (8) c(2);
KNOWNCLASS = cg (LA = 1 LA = 2 LA = 3 LA = 4 LA = 6 LA = 7 LA = 8 LA = 9);

Type is Mixture;

c ON cg;

Model c:

Model cg:

tech1 tech8;

(1) Is this the correct specification?
(2) As I understand it, this model implies complete homogeneity, right? I also want to verify if the associations between the latent variable and each indicator variable are identical across all of the samples (structural equivalence, McCutcheon, 2002). How can I do this?

Thank you in advance.
 Linda K. Muthen posted on Thursday, June 07, 2012 - 2:26 pm
To me your model looks like heterogeneity. You have means and variances free over all classes. The variances are equal as the default. The means are free. To hold them equal change all of your variance statements to:

 Maira Covre-Sussai posted on Friday, June 08, 2012 - 3:06 am
Dear Dr. Muthen,

Thank you for your answer.

My next step is to extend the model by including two categorical (binary) and one nominal variable with 4 categories.

I also have doubts about this:
(1) How can I include them in the model specification?
(2) How can I hold thresholds equal across classes of c?
(3) How can I hold the classes of c equal across groups (cg)?

Thank you in advance!
 Linda K. Muthen posted on Friday, June 08, 2012 - 10:45 am
1. Add them to the USEVARIABLES list.
2. For variables on the CATEGORICAL list:

[u$1] (1);

For variables on the NOMINAL list:

[u#1] (1);

3. Remove c ON cg.
 Maira Covre-Sussai posted on Thursday, June 21, 2012 - 2:21 am
Dear Dr. Muthen,

Thank you for your answer.

I am not sure if I express myself correctly or if I am doing something wrong, but I am not achieving the results that I am aiming at.

I am trying to fit a Multiple Group Latent Class analysis, with continuous, ordinal and nominal indicators. For this, I am trying to assess the Measurement Equivalence of my model by comparing three models: (1) an unrestricted, heterogeneous model, which allows both intercept and slope parameters to vary across countries; (2) a partially homogeneous model in which slope parameters are constrained to be equal across countries; and (3), a structurally homogeneous model that constrains both intercept and slope parameters to be equal across countries.

I am actually trying to replicate the study of Kankaras, Vermunt and Moors (2011)* using MPlus and I confess I am not succeeding at all!
Could you help me with the set up, please?


* Kankaras, Vermunt and Moors (2011). Measurement Equivalence of Ordinal Items: A Comparison of Factor Analytic, Item Response Theory, and Latent Class Approaches. Sociological Methods & Research
 Linda K. Muthen posted on Thursday, June 21, 2012 - 2:57 pm
Please send your output and license number to
 shaun goh posted on Tuesday, March 19, 2013 - 11:57 pm
Dear Dr Muthen,

I am interested in conducting multiple-group latent growth curve modelling. I was wondering if it is possible to utilise groups from a LCA/LPA to conduct multiple-group LGCM in Mplus?

To give more context, I would like to use LCA/LPA on language indicators to define children with different severity of language ability (i.e. impaired vs non-impaired), and then compare the growth trajectories of their psychological outcomes and effects of covariates using multiple group LGCM.

From my understanding, there are two ways to proceed.
Approach A.) A 3 step proccedure to utilise LCA/LPA first to define the groups of interest, then do model fitting for each group independently to determine configural and measurement invariance, then finally run a multiple-group model.
Approach B.) To run LCA/LPA and the final multiple-group LGCM simulatenously in one model.

However, it seems that approach(A) is statistically limited by having to treat LCA/LPA class probabilities as observed classes, and that approach (B) is limited by assuming that all groups have the same underlying growth factors.

I was wondering if there's another way to model this proposal without running into these limitations, or a comment about which approach may be better (A or B, e.g. perhaps utilise A when posterior probability values >.80?)

Thank you for all your help so far,
 Bengt O. Muthen posted on Wednesday, March 20, 2013 - 9:19 am
I think the answer depends on what you want your classes to represent substantively. Let's call your language indicators U and your psychological outcomes for which you have repeated measures Y. Do you want classes to reflect features of only U or both U and Y?

If you want the classes to be formed using only U information, you have 2 choices. If entropy is high you can simply use most likely class membership as a grouping variable in a multiple-group analysis. If entropy is not high you can do a "manual 3-step" in line with the revised Web Note 15 where the 3rd step is the growth model; this takes care of classification error (check that the class formation doesn't change).

In contrast, in a 1-step analysis of U and Y jointly, your classes will be reflect features of both U and Y. It is a substantive question whether or not you want that. In a 1-step analysis you can actually have a latent class variable for U and another one for Y and see how they relate.

Regarding your objection to your Approach B of having the same growth factors for all groups, note that this model does allow for different growth factor means.
 Maksim Rudnev posted on Thursday, January 09, 2014 - 4:14 am
Dear Dr.Muthen,

I have the following model with two latent classes and three known classes (a multiple group LCA) and I want to constrain and relax thresholds across groups.

CLASSES ARE cluster(2) known(3);
KNOWNCLASS is known (group = 1 2 3);

cluster on known;

MODEL cluster:
[u1$1 - u10$4] (c1_1-c1_40);
[u1$1 - u10$4] (c2_1-c2_40);

[u1$1 - u10$4] (k1_1-c1_40);
[u1$1 - u10$4] (k2_1-c2_40);
[u1$1 - u10$4] (k3_1-c3_40);

1. It seems that Mplus completely ignores section MODEL KNOWN since the output shows that the thresholds of classes CLUSTER are constrained between groups KNOWN. What should I do to relax these constraints?

2. I wish to constrain thresholds u1$1-u1$4 to be equal across groups known and all the other thresholds are allowed to differ across groups. Labels seem too be ambigious in my case and I am not sure what should be specified in MODEL CONSTRAINT section.

--Maksim Rudnev
 Bengt O. Muthen posted on Thursday, January 09, 2014 - 8:30 am
1. If you delete the Model cluster and Model known statements, all threshold equalities are relaxed.

2. You can obtain full flexibility in constraining the thresholds by using the dot (.) command, e.g. for the first class of both of the latent class variables:

 Laura Duncan  posted on Wednesday, December 09, 2015 - 12:44 pm
Dear Drs. Muthen,

I have a question that is similar to the one posted above by Shaun Goh on March 19, 2013. I have generated four poverty groups using LCGA (entropy = .705) that I would now like to use in a multiple group growth model to see how they relate to children's trajectories of mental health.

Should I be using the manual 3-step approach as detailed in webnote 15 where the 3rd step is the growth model?

If so, it is not clear to me how I should specify the input for this type of analysis. I understand how to fix the parameters of the class variable to the log ratios obtained in the measurement error table to take care of classification error, but I can’t figure out how to specify the rest of the input for my specific case.

Do you have any examples I could refer to? Any help you can provide to point me in the right direction would be greatly appreciated.

Many thanks!
 Bengt O. Muthen posted on Wednesday, December 09, 2015 - 1:16 pm
See Appendix D and E in the scripts of the paper on our website:

Asparouhov, T. & Muthén, B. (2014). Auxiliary variables in mixture modeling: Three-step approaches using Mplus. Structural Equation Modeling: A Multidisciplinary Journal, 21:3, 329-341. The posted version corrects several typos in the published version. An earlier version of this paper was posted as web note 15. Download appendices with Mplus scripts.
 Laura Duncan  posted on Thursday, December 10, 2015 - 8:48 am
Thank you for the quick response! I've tried to adapt the Mplus input from the appendices to my specific case, but I must be missing something fundamental because I still can't figure it out.

This would be the multiple group part of the model using the latent classes I saved from step 1:

GROUPING IS N (1=1 2=2 3=3 4=4);


I S | DEP4@0 DEP6@2 DEP8@4 DEP10@6;

How do I add this part of the model to take care of the classification error?






 Bengt O. Muthen posted on Thursday, December 10, 2015 - 6:26 pm
Appendix E doesn't show any Grouping feature.

You put the growth model statement in the %Overall% part of the model as is done in App E for Y ON X.
 Laura Duncan  posted on Friday, December 11, 2015 - 10:23 am
Thanks! I think I get it now.
 Jordan davis  posted on Wednesday, October 26, 2016 - 7:56 am
I have a simple question regarding multi-group LCA. We have a large sample (N = 15,000+) and would like to look at LCA for males and females. I have looked through the syntax in example 7.21 and wondered if it is possible to estimate DIFFERENT latent classes (categorical indicators) for a categorical knownclass (male, female)?

This may be elementary - however, I'm wondering if simply using

c on cg;

will do what I am proposing?

Finally, when doing a multigroup LCA do we also follow the manual 3-step approach? that is, setting the logits from the final LCA? All I have seen in in the threads/web are setting starting values for categorical indicators across known classes

 Bengt O. Muthen posted on Wednesday, October 26, 2016 - 2:43 pm
c on cg gives you different percentages in the classes but you will have the same number of classes for the cg groups.

Multiple-group LCA can use a manual 3-step approach. See the LTA section of our paper:

Asparouhov, T. & Muthén, B. (2014). Auxiliary variables in mixture modeling: Three-step approaches using Mplus. Structural Equation Modeling: A Multidisciplinary Journal, 21:3, 329-341. The posted version corrects several typos in the published version. An earlier version of this paper was posted as web note 15. Download appendices with Mplus scripts.
 Anna Austin posted on Thursday, June 21, 2018 - 11:09 am
I am conducting latent class growth analysis to identify trajectories of violence victimization and perpetration. I am conducting LCGA separately by males and females. If I find that the same number of trajectory classes are supported for both males and females, should I then test for invariance? What are the steps for doing this in the context of LCGA?
 Bengt O. Muthen posted on Thursday, June 21, 2018 - 3:50 pm
Use Model Test to study invariance of the means of the growth factors across gender.
 Adrian Rothers posted on Tuesday, October 23, 2018 - 3:00 am

I have a Bayesian SEM (with cross-loadings + correlated residuals), where 1 latent dependent variable is regressed on 9 latent independent variables. I would like to see whether the regression coefficients differ between classes of situations. 4-7 metric indicator variables could be used as input for the “construction” of these classes.

My idea is to test for invariance of the structural parameters of the BSEM (all freely estimated) between classes from a Latent Class/Profile Analysis.
a) is this generally possible? If yes, could you maybe point me to an instruction or an example article in the UG or elsewhere?
b) is there a recommendation on which number of LCA indicators is to be preferred?
c) would small (e.g., ~40-50 people) or very different class sizes pose a problem here?
If it is not possible,
d) would you think conventional k-means cluster analysis represents a viable alternative for the grouping variable or
e) would you have another suggestion on how to investigate the variability of the structural paths of my BSEM across situations?

Many thanks + best regards,
 Bengt O. Muthen posted on Tuesday, October 23, 2018 - 11:19 am
a) Yes, using either a regular mixture analysis in line with UG ex 7.20, or using a 3-step approach as in Web note 15 and 21.

b) No

c) No

d) Reasonable alternative if high entropy.
 Adrian Rothers posted on Friday, October 26, 2018 - 7:57 am
Thank you.
Following up: in the structural equation mixture model (UG ex 7.20), would it be a precondition to establish invariance of the measurement model between classes before comparing the regression paths? If yes, what kind of measurement invariance would be needed here, and would the m.i. investigation be done in a separate step?
 Bengt O. Muthen posted on Friday, October 26, 2018 - 3:24 pm
Q1: Yes.

Q2: Same level of invariance as usual: metric for comparing slopes, scalar for comparing means/intercepts.

Q3: Yes.
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