Message/Author 


I wanted to know if it's possible to run a parallel process growth mixture model, I am assuming it's not possible but thought I would ask (or will it be possible down the road)? 

bmuthen posted on Friday, December 22, 2000  5:31 am



This is quite possible. Just generalize the singleclass counterpart to multiple classes. 

Hanno Petras posted on Thursday, November 14, 2002  7:06 am



Dear Linda & Bengt, I was wondering how to set up a parallel process growth mixture model, where the two processes do not have the same number of classes. Is that possible and is there an example input somewhere? Thanks. Best, Hanno 

bmuthen posted on Thursday, November 14, 2002  7:23 am



Yes, this is possible. We don't have exactly that case, but a close one. Example 4 of the 2000 ACER article Muthen & Muthen "Integrating..." (see Mplus home page and "Applications Using Mplus") has an example with an LCA with 4 classes combined with GGMM for 4 classes  you can build on that example. 

Snosrap posted on Thursday, March 20, 2003  1:27 pm



Hi, Dr. Muthen, I have run a parallel process growth mixture model based on the example 4 you used in "Intergrating personcentred and variable centered..." (ACER, 2000). It is a threeclass (5 threecategory inidcators) with twoclass model (7 binary indicators). However, I have problem to interpret the output. I can't find any information in the output appeared in table 5 of the article, which are the conditional probabilities of one latent class membership given the other latent class membership. Does Mplus output this information? Or, should I calculate by myself? If so, which part of the output should I use? And what is the formuli? Thank you! 

bmuthen posted on Thursday, March 20, 2003  2:10 pm



Mplus does not provide these results, but you can compute them by hand. What the Mplus output gives is the estimated probabilities for the 3 x 2 = 6class model. This is the joint probability distribution for the two latent class variables. Multiply by n and you get the estimated frequencies. From this you simply add up the values in a row (or column) and divide each row entry by that sum to the get the corresponding estimated conditional probability. 

Snosrap posted on Friday, March 21, 2003  6:15 am



Hi, Dr. Muthen, Thank you for your reply. Just another quick question. Can Mplus do the latent transition model? I mean: can I use the same procedure above to model one latent variable over time? Thanks a lot 


Currently, Mplus can do latent transition analysis for two timepoints. That is, the typical lag1 model restrictions with more than 2 time poins cannot be imposed. Version 3 will be able to do latent transition analysis for more than two timepoints. But, I am not clear what you mean by your last sentence. 

Snosrap posted on Friday, March 21, 2003  7:36 am



Hi, I mean: if I have latent class model for delinquency in time1 and time2, should I use the parallel process growth mixture modeling to do it? Or I need use other commands in Mplus to do so. If I understand you correctly, in Ver.2, Mplus can do the model that: C1>C2 where c1 is the latent class for delinquency in time1 and c2 is that in time2. It's good that Mplus can model 2timepoint latent transition model now and more than 2 in the future. I remember Dr. Chihchien Yang said that it can't do so in Ver.1. Thank you for your help! 


As a point of clarification, this has been available since the first version of Mplus. Assuming that you have multiple delinquency items at both time 1 and time 2 and that you have K classes at time 1 and J classes at time 2, you would proceed just like we discussed above except that you would add the equality of thresholds across time for the same item. The input for the Integration paper in on our website under Examples, Applications Using Mplus. 

Snosrap posted on Friday, March 21, 2003  10:09 am



Thank you! Have a good weekend! 


Is it possible to run a parellel process growth mixture model in which there are greater than 2 parellel processes? 


Yes, you just add one or more additional processes. 

Anonymous posted on Monday, September 12, 2005  5:47 am



How many measurement occasions can you use with latent transition modeling under the most current version of Mplus? I am considering using Latent class analysis to reduce the number of individual profiles obtained on the subscales of a multidimensional construct Once I can determine the number of latent classes I plan to develop a latent transition model to examine the role played by interventions as a mechanism for transitioning between latent classes derived Can Mplus model this approach? Thanks 


There is no limit to the nuber of measurement occasiins with latent transition modeling in the current version of Mplus. However, computational time increases as the number of occasions increase because Mplus does not use only firstorder Markov. It seems from your description that Mplus could estimate the model you are interested in. 

Blaze Aylmer posted on Monday, September 12, 2005  12:55 pm



Dear Linda Thanks for your reply. How does Mplus model the impact of interventions aimed at transitioning people between stages? The model I'm attempting to build suggests that people can both forward and backward transition in response to contextual changes. 


Would this be like the moverstayer model described in Example 8.14 in the Mplus User's Guide? 


I'm very new to Mplus and have not gone that far. I have not heard of the mover stayer model before. What does this model do that differs from LTA ?. Thanks 


I don't know that much about it. See the Mooijaart 1998 reference in the user's guide. 

bmuthen posted on Monday, September 12, 2005  6:42 pm



The moverstayer version of LTA would allow modeling intervention effects that differ for movers (people who have a high probability of changing status as a function of the intervention)  versus stayers (people who have a low probability of changing status). 

Anonymous posted on Tuesday, September 13, 2005  5:56 am



I am new to this material so please forgive the litany of questions. Can you clarify the following please. I plan to use a survey instrument using a three point likert scale to examine profiles based on subscales scores so that a person can shown to have high and low scores across each subscale.Once I have the data collected I want to reduce the profiles to "common groups"/latent classes so you either belong in one latent class or the other. Once I have identified the latent classes I want to model the transition between them. Would the LTA or stayer mover models generate the latent classes or is that a separate approach. I'm doing a longitudianl study and note that LCA is for a cross sectinal study. Would the latent classes be genererated across measurement occasions or within them? 

bmuthen posted on Tuesday, September 13, 2005  7:50 am



The LTA model, and its moverstayer version, simultaneously generates the latent classes and estimates the transition probabilities. So you don't need to do an LCA first (LCA is for crosssectional data, while LTA is for longitudinal data). Read about it in the Mooijaart reference Linda suggested and also in the Langeheine and van de Pol chapter 11 in the book Hagenaars, J.A. & McCutcheon, A.L. (2002). Applied latent class analysis. Cambridge, UK: Cambridge University Press. There are Mplus example setups available for the examples in this book. 

Anonymous posted on Monday, September 19, 2005  11:39 am



Dear Drs Does Mplus have the facility to treat likert type data like a categorical variable in latent transition analysis? How does it do it and do you know of any papers that have done this? I'm using a survey instrument with a likert scale. Thanks 


Yes it does. I believe that LTA usually considers categorical outcomes. There are several references on our website under References  Latent Transition Analysis. 


With LTA does one need to have an a priori theoretical reason for modeling a sequence of events or can it be used to explore transition between classes. For example, research on alcohol abuse using LTA, appears to follow a sequence of events. Can LTA be used to explore the relationship between class movement? I'm trying to model transitions in classes where there is no literature to suggest that one's model be informed by a sequence. Thanks 

bmuthen posted on Friday, September 30, 2005  9:14 am



I think LTA can be used for exploration. There is no particular ordering of transitions needed. 


Linda I am interested in prediciting transitions between classes in an LTA. I would like to use a class as a dependent variable to see what independent variables predict transition between classes how does MPLUS handle this? Is this the multinomial regression option in MPLUS? B 


Example 8.13 gives an example of a latent transition analysis with a covariate. The regression of a categorical latent variable on a covariate or set of covariates is a multinomial logistic regression. 

drgopukumar posted on Wednesday, July 19, 2006  12:12 am



how to calculate growth mixture model please let me know the formulas ans steps. I gave 3 sets of data. 


See the following paper: Muthén, B. & Shedden, K. (1999). Finite mixture modeling with mixture outcomes using the EM algorithm. Biometrics, 55, 463469. 


Dear Mplus Discussion, I have a couple of question about modeling two different (but related) outcomes using growth mixture modeling. In Chapter 8 of the Mplus manual (and in the ACER, 2000 paper referenced above), I see an example (8.7) of "a sequential process gmm" and I'm wondering if there is an implied temporal/sequential ordering to the two outcomes (e.g., the ACER example relates 4 latent classes of antisocial behavior at age 16 to heavy drinking trajectories at ages 1830), or if it's also possible to use this approach to model two outcomes that are evolving contemporaneously. Also, is it possible to include predictors of trajectory group membership in the type of "cooccuring processes" model I'm describing, and, if so, are you aware of any examples illustrating that approach? Thanks! 


You can have parallel or sequential processes with growth mixture modeling. Covariates can also be included in the model. I don't know of any examples offhand. Perhaps someone reading the discussion board has done this. 


Thanks for the information. I haven't found any published examples of this type of analysis that include predictors in the model, but will keep looking. 


I don't think you need to find something published to do this. The MODEL command would look like: MODEL: i1 s1  y1@0 y2@1 y3@2 y4@3; i2 s2  y5@0 y6@1 y7@2 y8@3; i1s2 ON x1x4; for timeinvariant covariates. You could also have timevarying covariates. 


Hi, I have a specific question : Is it possible with MPlus to know how classes for a variable varied on one another variable. I have a variable Y and I found 5 classes, and I want to know how these classes model on a variable X. Thank you for your help to find a example in the User's Guide MPlus 4 or for giving me a hint!! 


Do you want to regress the categorical latent variable c on x? See Example 7.12. If this is not what you mean, please explain. 


First, thank you for your help. Both Y and X is measure on 3 times (age). I found 4 different trajectories for Y across age and I want to know how these 4 classes move across time. I used this model : variable: names are id y1y3 x1x3; usevariables = y1y3; classes = c(4); missing = . ; analysis: type = mixture missing; starts = 20 2; model: %overall% i s  y1@0 y2@1 y3@2; plot: type = plot3; series = y1y3(*); Savedata: File is U:\Documents\fichier dat nadine\Fclasse.dat; Save = CPROB; In the file, I see y1y3 and the classe (1 to 4). And now, I want to know if there a relation between the trajectories of y1y3 and x1x3. The problem is in the file Fclasse in the output I can’t see anymore x1x3. Thanks again Annie 


Is x a timevarying covariate? If so, you include the x's in the Usev list and in your model  see the User's Guide. 

Jungeun Lee posted on Wednesday, July 16, 2008  11:45 am



Hi, To model two outcomes that are evolving contemporaneously (parallel processes) with growth mixture modeling, what would Mplus input look like? Here is what I guessed, which didn't work. MODEL: %OVERALL% i1 s1  sm5@0 sm6@1 sm7@2 sm8@3 sm9@4 sm10@5; i1@0; s1@0; i2 s2  edae5@0 edae6@1 edae7@2 edae8@3 edae9@4 edae10@5 edae12o@7; i2@0; s2@0; s1 on i2; s2 on i1; C2 WITH C1; Could you let me know what I am missing? Thanks! 


Perhaps the problem is that your 2 regressions (ON statements) have predictor variables i2 and i1 for which you have specified zero variance. Imagine regular linear regression with x variables that have no variance  that doesn't work. 

Haiyi Xie posted on Monday, October 20, 2008  8:10 am



Hi Linda and group, I want to set up LCGA as well as GMM for two parallel processes of the two different types of variables (binary vs. continuous), do you have code for it? Also, how can I include covariates in the model? I have tried, but didn’t work out; I appreciate so much for your help— Haiyi 


You can use Example 6.13 as a start. Use the CATEGORICAL option to specify that one outcomes in binary. Use the ON option to include covariates. If this does not help, send your attempt and your license number to support@statmodel.com. 


Hi, I am running a parallel process GMM with two latent classes for each process. I also have baseline covariates and 4 continuous outcome measures that I am letting vary across the classes like in example 8.6. I was wondering if there was a way to get a statistical test of the differences in the means of the continuous outcome measures across classes? Thank you for the help. Mark 


You can use loglikelihood difference testing of a model where the means are freely estimated across classes and another model where they are constrained to be equal across classes. 


Thank you for the reply. If I understand correctly, using a loglikelihood difference test will tell me if any of the means differ across classes, is there a way to find out specifically which means differ across classes? Also, if there is a posted example of the input for this I would greatly appreciate the guidance. Thank you for the clarification. 


To test specific mean differences use MODEL TEST. See the user's guide for further information. 

Mark Prince posted on Wednesday, June 16, 2010  9:49 am



Hello, I am running a parallel process growth mixture model with both linear and quadratic slopes. I am unsure how to interpret a significant trend within a joint class. For example in class 1,1 if the linear slope is significant what is being considered? Since there are two processes, which may differ with regard to linearity, what is actually being tested? Thank you for the help. Mark 


Because you say class 1, 1 it sounds like you have 2 latent class variables. The question then is if you want each latent class variable to influence the means of the growth factors for only one of the 2 processes or for both. It sounds like you have set up the model as the latter and that this makes for your question. Perhaps you prefer the former specification which is achieved by Model c1: and Model c2: with the growth factor means for each process specified to vary across c1/c2 classes only (see UG for examples). Here the 2 c variables should be allowed to correlate using parameterization=loglinear and specifying c1 with c2. 


Dear Dr. Muthen, I try to construct a model with which I want to answer the question whether the development of a variable differs between two, with gmm found latent classes. I think this model will do: usevariables are lat10 lat11 lat12 lat13 lat14 lat15 lat16 lat17 rcocd10 rcocd11 rcocd12 rcocd13 rcocd14 rcocd15 rcocd16 rcocd17; idvariable=idno; classes=c1(2) c2(1); missing=all(1.00); analysis: type=mixture; starts=500 20; stiterations=20; lrtstarts=2 1 50 15; coverage=0; model: %overall% i1 s1 q1 lat10@0 lat11@1 lat12@2 lat13@3 lat14@4 lat15@5 lat16@6 lat17@7; i2 s2 q2 rcocd10@0 rcocd11@1 rcocd12@2 rcocd13@3 rcocd14@4 rcocd15@5 rcocd16@6 rcocd17@7; i1 with i2; s1 on i2; q1 on s2; It runs but does it also answers my question? Thank you in advance, JanWillem Kroon 


It is not clear what you are doing. You have two processes and two classes. Do you mean for one process to be for one class and the other process to be for the other class? 


My goal is this: I have found, with GMM, two trajectory classes of the variable LAT. I also have constructed a quadratic growth model of the variable RCOCD. During the exploration phase i found a realtion between these continuous variables. Now I want to know if the people in one of the two LAT trajectory classes have a significantly different growth curve of the variable RCOCD, than those in the other class. So the question is whether the development of the variable RCOCD depends on LATclass 'membership'.... I hope I've clarified my question... JanWillem 


You can estimate such a model. Both processes will influence latent class membership. 


Thank u for your reaction. I would like to use your expertise once more. After running following model, I get a Transition Probabilities Matrix in my results. The percentages in this matrix indicate someones probability of transitioning from one latent status to another. I have one question about this: To test whether the two classes of the independent variable are distributed significantly different over the classes of the dependent variable, I like to create a model which indicate no transition, so I can apply a chiSuare test. How can I create such a model? 


Sorry, I forgot to post my model. Here it is: %overall% i1 s1 q1 lat10@0 lat11@1 lat12@2 lat13@3 lat14@4 lat15@5 lat16@6 lat17@7; i2 s2 q2 rcocd10@0 rcocd11@1 rcocd12@2 rcocd13@3 rcocd14@4 rcocd15@5 rcocd16@6 rcocd17@7; q1@0; q2@0; i1 s1 q1 on Evertoba p1ses3; c1 on Evertoba p1ses3; c2 on c1; i2 on i1; s2 on s1; q2 on q1; i2 on s1; i2 on q1; s2 on q1; model c2: %c2#1% [i1]; [s1]; [q1]; %c2#2% [i1]; [s1]; [q1]; MODEL c1: %c1#1% [i1]; [s1]; [q1]; %c1#2% [i1]; [s1]; [q1]; 


You can use MODEL CONSTRAINT and the NEW option to create the probabilities that you want to test. See the end of Chapter 14 to see how these probabilities are computed. Then use MODEL TEST to test them. 


Thank you for your reaction. It was very helpfull. JanWillem 

Diane Chen posted on Thursday, February 10, 2011  10:55 am



Hi, I am trying to run a parallel process growth mixture model with a higher order latent variable capturing growth of two different processes (3 classes and 2 classes, respectively). I received the following error message: *** ERROR in MODEL command Invalid ON statement: CA#1 ON C#1 The order of categorical latent variables does not allow for this regression. Any help troubleshooting this would be greatly appreciated. Here is the input I used: CLASSES = ca(3) cr(2) c(2); MODEL: %overall% ia sa aggr1f@0 aggr1s@0.5 aggr2@1.5 aggr3@2.5; ir sr reject1f@0 reject1s@0.5 reject2@1.5 reject3@2.5; ca cr ON c; aggr1fagg3 ON female int1 int2; reject1freject3 ON female int1 int2; aggr1f WITH aggr1s; reject1f WITH reject1s; aggr1f WITH reject1f; aggr1s WITH reject1s; aggr2 WITH reject2; aggr3 WITH reject3; MODEL ca: %ca#1% [ia*]; [sa*]; ia@0; sa@0; %ca#2% [ia*]; [sa*]; ia@0; sa@0; %ca#3% [ia*]; [sa*]; ia@0; sa@0; MODEL cr: %cr#1% [ir*]; [sr*]; ir@0; sr@0; %cr#2% [ir*]; [sr*]; ir@0; sr@0; Thanks! Diane 


The order of the categorical latent variables on the CLASSES list determines the regressions that can be specified among these variables, for example, with CLASSES= c1 (2) c2 (2); c2 can be regressed on c1 but not the other way around. You should change the order of the variables. 

Diane Chen posted on Thursday, February 10, 2011  11:13 am



Thanks so much for the quick response! 


Dear Mplus Team, I am trying to estimate a parallel process model where one process is a standard latent growth curve model, and the second is a GMM. I then want to regress the classes from the GMM on the growth factors from the standard LGM, and vice versa. Is this possible in Mplus? I've tried a variety of syntax combinations that I thought might work, but so far none have. I would really appreciate it if you could a) tell me if this is possible, and b) if so direct me to some syntax if you know of any. Thank you in advance for your help. Best, Aidan 


It is possible. It is extending Example 6.13 to mixture modeling. If you continue to have problems, send your output and license number to support@statmodel.com. 


Thank you for the very quick reply, as always. I don't think I described what I'm trying to do well. Here's where I run in to trouble. I know how to run a parallel process model (e.g., 6.13) and I know how to run a GMM (e.g., 8.1). But, where I'm getting stuck is that I want to run a parallel process model where only one of the two processes is GMM. Whenever I try to combine 6.13 and 8.1 both processes get pulled in to estimating the classes, and I can't figure out the syntax to pull them apart where only one is used for the GMM and the other is allowed to be a regular LGM. Does that make sense? Or was that clear before? Sorry for the repeat question if that was understood. This is tough to describe concisely. Thanks, Aidan 


You need to hold the means of the LGM growth factors equal across the classes of the GMM. 


Hello, can I use the model shown in "EXAMPLE 8.7: A SEQUENTIAL PROCESS GMM FOR CONTINUOUS OUTCOMES WITH TWO CATEGORICAL LATENT VARIABLES" when my measured variables (y1y8) are dichotomous (marking whether or not an event has occurred by the time point)? Or do y1y8 have to be continuous? Thanks. 


The variables can be categorical. Include the CATEGORICAL option in the VARIABLE command. 

ywang posted on Tuesday, July 31, 2012  12:00 pm



Dear Dr. Muthens: For parallel growth mixture modeling, the intercepts and slopes for the growth trajectory in the parallel mixture models are somewhat different from the growth factors in the single mixture model. The proportions of the classes are also different between parallel growth mixture model and single mixture model. What to do to hold the growth factors and proportions in parallel growth mixture model similar as those in the single mixture models? In addition, can the growth trajectories be interpreted in the same way in the parallel growth mixture model as in the single growth mixture models if the growth factors and proportions change? 


If you find the same classes for each process and when you put them together, a parameter changes a lot, the model may be misspecified related to the relationships among the processes. Perhaps each process needs its own categorical latent variable. 

xiaoyu bi posted on Monday, December 30, 2013  12:42 pm



Hello, Do my codes for parallel process growth mixture model look right (both variables have 2 classess for single mixture model)? usevariables are argue1argue5 medsym1medsym5; classes = c(4); analysis: type=mixture; model: %overall% I S  argue1@0 argue2@1 argue3@2 argue4@3 argue5@4; I2 S2  medsym1@0 medsym2@1 medsym3@2 medsym4@3 medsym5@4; %c#1% I S  argue1@0 argue2@1 argue3@2 argue4@3 argue5@4; I2 S2  medsym1@0 medsym2@1 medsym3@2 medsym4@3 medsym5@4; 

xiaoyu bi posted on Monday, December 30, 2013  12:43 pm



%c#2% I S  argue1@0 argue2@1 argue3@2 argue4@3 argue5@4; I2 S2  medsym1@0 medsym2@1 medsym3@2 medsym4@3 medsym5@4; %c#3% I S  argue1@0 argue2@1 argue3@2 argue4@3 argue5@4; I2 S2  medsym1@0 medsym2@1 medsym3@2 medsym4@3 medsym5@4; %c#4% I S  argue1@0 argue2@1 argue3@2 argue4@3 argue5@4; I2 S2  medsym1@0 medsym2@1 medsym3@2 medsym4@3 medsym5@4; output: tech1 tech8; plot: type=plot3; sorry, I could not post all codes once. 


All you need is model: %overall% I S  argue1@0 argue2@1 argue3@2 argue4@3 argue5@4; I2 S2  medsym1@0 medsym2@1 medsym3@2 medsym4@3 medsym5@4; You do not need to repeat this for each class. It is done automatically. Posts should not exceed one window. 

xiaoyu bi posted on Sunday, January 05, 2014  5:15 pm



Hi, Linda, Thank you so much for your reply. One more question: To calculate conditional probabilities, should I use (a) FINAL CLASS COUNTS AND PROPORTIONS FOR THE LATENT CLASS PATTERNS BASED ON THE ESTIMATED MODEL, (b) LATENT TRANSITION PROBABILITIES BASED ON THE ESTIMATED MODEL, (c) FINAL CLASS COUNTS AND PROPORTIONS FOR THE LATENT CLASSES BASED ON ESTIMATED POSTERIOR PROBABILITIES, (d) CLASSIFICATION OF INDIVIDUALS BASED ON THEIR MOST LIKELY LATENT CLASS PATTERN? Which one I need to use? Thank you! 

xiaoyu bi posted on Monday, January 06, 2014  12:34 am



Dear Dr. Muthen, Should I use the following information to calculate conditional probabilities? If so, how can I calculate them? I tried to make a table as your table 5 in example 4 (Integrating personcentred and variable centered....  ACER, 2000). I read previous posts, but still not sure how to do that. Any advice would be greatly appreciated. Average Latent Class Probabilities for Most Likely Latent Class Pattern (Row) by Latent Class Pattern (Column) Latent Class Variable Patterns Latent Class CA CP Pattern No. Class Class 1 1 1 2 1 2 3 2 1 4 2 2 1 2 3 4 1 0.857 0.121 0.020 0.001 2 0.025 0.940 0.004 0.030 3 0.098 0.038 0.820 0.044 4 0.001 0.115 0.027 0.857 


You get estimated posterior probabilities from the SAVEDATA command,saying SAVE = cprob; See UG. 

xiaoyu bi posted on Monday, January 06, 2014  5:33 pm



Dear Dr. Muthen, Thank you so much for your reply. One more question about parallel process growth mixture model. Before I ran parallel process growth mixture model, I did growth mixture model for both variables (Variable A and Variable B). For Variable A, there are 3 classes, and for Variable B, there are 4 classes. When I ran the parallel process growth mixture model, class counts and proportions for both variables in parallel process growth mixture model are different from the class counts and proportions in the single mixture model. Is this normal or did I do something wrong? How can I fix this problem to make the count and proportions match between parallel process growth mixture model and two single mixture models? Thank you so much! Thank you 


That's a big topic. It is not clear how you did the parallel run  did you use one or two latent class variables? If you use two  one for each process  then you should make sure that they are correlated. Nevertheless, the class formations may change because you bring in more information. 

xiaoyu bi posted on Tuesday, January 07, 2014  12:04 pm



I use two latent class variables. I am not quite sure what you mean "I should make sure that they are correlated". The following are my codes for parallel process growth mixture model. How can I solve the unmatched class information? Thank you! classes = ca(3) cp(4); analysis: type=mixture; model: %overall% Ia Sa  argue1@0 argue2@1 argue3@2 argue4@3 argue5@4; Ip Sp  medsym1@0 medsym2@1 medsym3@2 medsym4@3 medsym5@4; model ca: %ca#1% [Ia Sa]; %ca#2% [Ia Sa]; %ca#3% [Ia Sa]; model cp: %cp#1% [Ip Sp]; %cp#2% [Ip Sp]; %cp#3% [Ip Sp]; %cp#4% [Ip Sp]; Codes of mixture model for single variable. classes = c (3); analysis: type=mixture; model: %overall% I S  argue1@0 argue2@1 argue3@2 argue4@3 argue5@4; 


The default is that ca and cp are uncorrelated. This implies that the outcomes of the two processes are uncorrelated, which is not realistic. To make them correlated, say ca WITH cp; in the Overall part of the model. 

xiaoyu bi posted on Tuesday, January 07, 2014  1:39 pm



I did that before I posted my previous message, but I got an error message which said " This model is not supported by LOGIT parameterization. Use LOGLINEAR parameterization." No clue how to fix this problem. Any suggestions? Thank you so much! 


The UG says to say Parameterization = Loglinear; 

xiaoyu bi posted on Thursday, January 09, 2014  1:04 am



Dear Dr. Muthen, Is it possible to run a parallel process model in which trajectory for variable A is piecewise (two pieces: T1, T2, T3, T4 are one piece, and T4 to T5 is another piece), and variable B is linear growth? If it is possible, should I make T1T4 for variable B parallel with the first piece of variable A, and T4T5 of variable B parallel with the second piece of variable B? My programs are as follows. Are they correct? Ia Sa1  va1@0 va2@1 va3@2 va4@3 va5@3; Ia Sa2  va1@0 va2@0 va3@0 va4@0 va5@1; Sa2@0; Ib Sb  vb1@0 vb2@1 vb3@2 vb4@3 vb5@4; 


I don't see a problem in doing this. 

xiaoyu bi posted on Thursday, January 09, 2014  10:00 am



But, the code I wrote (see above) does not look right to me. Variable A has two pieces (Sa1 Sa2), and the slope (Sb) of variable B is contributed by five waves of data. So, it looks to me that my programs are parallelling the first piece of variable A (i.e., Sa1) with the whole slope of variable B (i.e., Sb). Am I wrong? Thanks again for your help with Mplus! 


That's ok. Even in his situation you want all growth factors to be correlated. 

xiaoyu bi posted on Wednesday, February 12, 2014  8:18 am



Dear Dr. Muthen, To calculate conditional probabilities, which part of results that I should use to calculate it  "FINAL CLASS COUNTS AND PROPORTIONS FOR THE LATENT CLASSES BASED ON ESTIMATED POSTERIOR PROBABILITIES" (this section goes first) or "CLASSIFICATION OF INDIVIDUALS BASED ON THEIR MOST LIKELY LATENT CLASS PATTERN" (this section goes later)? Thank you! 


You should use neither if by conditional probabilities you mean the item probability conditional on latent class. Please study the handout and video from our Topic 5. 

xiaoyu bi posted on Wednesday, February 12, 2014  1:46 pm



I mean the conditional probabilities of parallel process growth mixture modelling  classes of one variable conditional on classes on another variable (the example 4 you used in "Intergrating personcentred and variable centered..." (ACER, 2000)). Thank you! 


I see. You should use "FINAL CLASS COUNTS AND PROPORTIONS FOR THE LATENT CLASSES BASED ON ESTIMATED POSTERIOR PROBABILITIES" 

xiaoyu bi posted on Wednesday, February 12, 2014  9:47 pm



Dear Dr. Muthen, Thank you so much for your answer. I have one more question: For the parallel process mixture model, I did two separte mixture models first, and got subgroups for each variable. Then, I did the parallel process mixture model, and got subgroups for each variable. I know the class formations may change between the two separate mixture models and the parallel process mixture model because I added more information. My question is the values of intercept and slope for each class can also be changed because of the added information, right? Thank you so much for your time! 


Yes. 

xybi2006 posted on Monday, August 04, 2014  12:13 pm



Dear. Dr. Muthen, For the growth mixture model with covariates, how to get the OR with 95% confidence interval? Thank you, 


Which OR do you refer to? 

xybi2006 posted on Monday, August 04, 2014  1:56 pm



The OR of covariates on the class membership. I used auxiliary statement, but did not get output for OR (and 95% CI), only for the logit of the probability. Any suggestions? Also, if I save the probability data for class membership and then do the multinomial logistic regression in SAS, should I regress the class membership variable (which is not based on the posterior probabilities)? Thank you! 


Q1. I think you are referring to using the Auxiliary option R3STEP. This gives you multinomial logistic regression estimates that you can simply exponentiate to get ORs. You can express the exponentiation in the Model Constraint command using parameter labels specified in the Model command. Q2. R3STEP is better than what you can do with this in SAS, because R3STEP takes into account the classification error (see our web note on this). 

xybi2006 posted on Monday, August 04, 2014  5:44 pm



Dear Dr. Muthen, Thank you so much for your prompt responses. Yes, I prefer to use the Auxiliary option. And, yes, I can exponentiate the multinomial logistic regression estimates to get the ORs. But, how to get 95% CI for ORs based on multinomial logistic regression estimates? I did not see any estimates related to 95% CI. Thank you, 


You have to use the 95% CI limits for the logits and exponentiate those limits to get the OR limits. 

xybi2006 posted on Tuesday, August 05, 2014  4:11 pm



Dear. Dr. Muthen, The question is how to get 95% CI limits for the logits for growth mixture model with covariates using Auxiliary option. I used the CINTERVAl in the output statement, but only got the 95% CI for the model, not the covariates on the class membership. My programs are below. Did I miss something? Also, what is the difference between Auxiliary option (R) vs. (R3STEP)? If I changed my following program from R to R3STEP, it did not work. usevariables are argue1 argue2 argue3 argue4; classes = c(3); auxiliary = age_c (R) sex (R) edu_c (R) medcon1(R) N_marr1 (R) marr1 (R) ; analysis: type=mixture; starts = 1500 300; stiterations = 20; Parameterization = Loglinear; model: %overall% I S  argue1@0 argue2@1 argue3@2 argue4@3; I with S; S@0; Output: sampstat tech11 tech14 cinterval; 


That's the question I answered. You get logits in the output which you use to compute 95% CIs for the ORs. It is not in the output. For a summary of options, see footnote 1 of the paper posted on our website: Asparouhov, T. & Muthén, B. (2014). Auxiliary variables in mixture modeling: Threestep approaches using Mplus. Structural Equation Modeling: A Multidisciplinary Journal, 21:3, 329341. The posted version corrects several typos in the published version. An earlier version of this paper was posted as web note 15. Appendices with Mplus scripts are available here. 

xybi2006 posted on Friday, January 30, 2015  5:27 pm



Dear Dr. Muthen, Do you have an example about how to incorporate covariates to predict joint latent classess for parallel process growth mixture model? Thanks much, 


Do you mean that you don't want to say c1 c2 on x; but instead predict the joint c1*c2 classes? If so, you would have to work with a single joint latent class variable with the product of the number of classes in c1, c2. The model statement would then be saying over which classes which growth process factor means vary. 

xybi2006 posted on Sunday, February 01, 2015  5:33 pm



Dear Dr. Muthen, Yes, I mean to predict the joint c1*c2 classes. Thanks for your information. But, I still do not know exactly how to do that. For both C1 and C2, there are three classes. Do I need to use define statment to create the interaction term: c1c2 = c1(3)*c2(3). Then, using model statement, under %overall%, to add the predictors. It did not work. How should I change it. Also, I tried the interaction term c1#1*c2#1. It did not work. Define: c1c2 = c1(3)*c2(3) Model: %overall% c1c2 on X; 


No, you don't use Define. You use classes = c(9); Then you have to say over which of the classes which growth factor means vary. Think of the classes laid out as a 3*3 c1*c2 table. Say that you consider the classes in the rowwise order 1: c1=1, c2=1 2: c1=1, c2=2 3: c1=1, c2=3 4: c1=2, c2=1 etc corresponding to c=1, 2, 3, 4, etc. Process 1 has its growth factor means vary across c1 classes and process 2 across c2 classes so that you have the classspecific model statements (using the intercept growth factor as an example): %c#1% [i1] (1); [i2] (11); %c#2% [i1] (1); [i2] (12); %c#3% [i1] (1); [i2] (13); %c#4% [i1] (2); [i2] (11); %c#5% [i1] (2); [i2] (12); %c#6% [i1] (2); [i2] (13); %c#7% [i1] (3); [i2] (11); %c#8% [i1] (3); [i2] (12); %c#9% [i1] (3); [i2] (13); 

xybi2006 posted on Monday, February 02, 2015  6:20 pm



Dear Dr. Muthen, Thank you so much for your replies. I really really appreciate your time and help. I have one more question. If I added the predictors (e.g., age and education) to predict the classmembership for the 9 classes, the class information (e.g., number of person in each class) will be changed, comparing to the model without the predictors. I tried to use AUXILIARY statement, but it did not work. Any suggestion on that? %overall% c on age edu; 


Auxiliary(R) should work. Send output and license number to support@statmodel.com. 

xybi2006 posted on Tuesday, February 03, 2015  11:00 am



Dear Dr. Muthen, The auxiliary works after I deleted the codes of " c on age edu" from the %overall% statement. For the auxiliary, I should not add the code of covariates on the classmembership in the overall statement, right? Also, for the auxiliary, can I add the timevarying variables there? If I only used the baseline variable (X1), the model works. But, if I added X1, X2, X3, X4, and X5, then the estimate of X2X5 on classmembership (C) is "NaN" and the estimate for other covariates are 0. Thank you 


Q1. You should not have c on x when doing aux(r) with x. Q2. Aux(r) can include any variables that you believe influence c. Please send your NaN output and license number to support@statmodel.com. 

xybi2006 posted on Friday, February 13, 2015  3:21 pm



Dear Dr. Muthen, Thanks much for your help! The IT person installed the Mplus in my computer. So, I do not know what the license number is. Before I figure out the license number, I wanted to check one thing: For the joint groups, the joint frequency is very small for two groups, one with 3 persons, and another one is 0. Does this have an effect on the number of predictors I can model? Thanks again, 


That is a problem because it is like having a nominal variable with 0 or only 3 people in a category. 

xybi2006 posted on Friday, February 13, 2015  4:00 pm



In this case, then how should I predict the joint groupmembership? I have 9 joint groups (3by3). Other groups are Ok, with the frequency ranging from 11 to 292. 


Either collapse groups or do the prediction of each latent class variable separately. 

xybi2006 posted on Friday, February 13, 2015  4:23 pm



If I predict each latent class variable separately, it will not be a problem or still a problem for the group with only 3 persons? Thanks much, 


You won't have a group of 3 persons when you do it separately. 

xybi2006 posted on Tuesday, February 17, 2015  10:19 am



Dear Dr. Muthen, Thank you so much for your reply. I have two more questions. Q1: Is it Ok to predict each joint latent class for the group with 11 persons? Q2: How to predict each joint latent class separately? For example, if I only want to predict class 1 but not others, then how to change the following codes? Any example? classes = c(9); auxiliary = X1 X2 X3 X4 X5; model: %overall% %c#1% [i1] (1); [i2] (11); %c#2% [i1] (1); [i2] (12); %c#3% [i1] (1); [i2] (13); %c#4% [i1] (2); [i2] (11); %c#5% [i1] (2); [i2] (12); %c#6% [i1] (2); [i2] (13); %c#7% [i1] (3); [i2] (11); %c#8% [i1] (3); [i2] (12); %c#9% [i1] (3); [i2] (13); 


I don't think you should take this kind of approach. Why don't you instead approach this descriptively  classify people into their most likely joint class and then look at their means on the covariates. 

Shi Haisong posted on Sunday, February 22, 2015  3:38 am



Dear Mplus Team, I am trying to figure out the two outcomes development trajectories. And I would like to explore if there latent classes,for example,the two outcomes are both increase within one class, while in the other class, one outcome is increase across timepoints and the other outcome decreased, or other modes. I conduct the following model as refer to the example 6.13. usevariables are Pos1Pos4 Neg1Neg4; classes=c(5); MISSING are all(999); analysis: type=MIXTURE; MODEL: %OVERALL% i1 s1Pos1@0 Pos2@1 Pos3@2 Pos4@3; i2 s2Neg1@0 Neg2@1 Neg3@2 Neg4@3; s1 on i2; s2 on i1; OUTPUT: TECH1 tech8 tech11 tech14; PLOT:type=plot1 plot2 plot3; SERIES =Pos1(0) Pos2(1) Pos3(2) Pos4(3); SERIES =Neg1(0) Neg2(1) Neg3(2) Neg4(3); But,I'm not sure if this model is fit for my purpose. And another question, the plot have 3 lines in each class, I figure out that one is the Pos means at the 4timepoint,and the other are the Neg means at the 4timepoint, but I'm confused by the third line, what's it mean? Thank you! 


You may want to use 2 latent class variables where you specify that the i1, s1 means vary across the classes of one of the latent class variables and the i2, s2 means vary across the classes of the other of the latent class variables. See the UG for how to do this. For your last question you have to send output, data, and license number to Support@statmodel.com. Note also that you don't want to add Tech11 or Tech14 until you have found your best solution  see Web Note 14. 

xybi2006 posted on Monday, February 23, 2015  10:28 am



Dear Dr. Muthen, Thank you so much for your prompt replies to my questions. If I am only interested in the covariates on three joint classes (Ns for the three classes are 13, 14, 300) but not other 6 joint classess. Would it be possible to do that in MPLUS, or should I look at their means on the covariates based on their most likely joint class (in this case, the N for each class might be different from the N based on the posterior probabilities)? 


If you have a high entropy you could use the Most Likely Class classification and work with an observed 3category nominal dependent variable for those 13+14+300 subjects, regressing that nominal variable on the covariates. 

Rui Zhen posted on Wednesday, June 14, 2017  8:41 am



Dear Dr. Muthen, Could I have a clear syntax or a procedure to run a multipleprocesses growth mixture model? I am a fresher, but I need to identify how many clusters exist based on the change features of three variables simultaneously. I have found some examples about parallelprocess model in this website, but I am confused about the syntax. for example, I do not konw what do the numbers, such as 3.4,5.2, refer? %c#1% !low, low [f1a*3.4](1); [f2a*0] (2); [f1t*5.2] (3); [f2t*.3](4); %c#2% !low, up [f1a*3.4](1); [f2a*0](2); [f1t*.13](5); [f2t*.15](6); %c#3% !low, chronic [f1a*3.4](1); [f2a*0](2); [f1t@10 f2t@0]; Looking forward to your reply, thank you very much£¡ 


Hello, I have a quick question about parallel growth mixture modeling. I know it's possible to do multilevel parallel growth curve modeling and multilevel growth mixture modeling, but is it possible to conduct a multilevel parallel growth mixture model? I have been searching for an example of this across publications in social/behavioral sciences and health sciences and have found nothing. If it is possible, would you happen to have a reference on hand or conceptually explain how it would be done? 


Just use 2 latent class variables, one for each process. Then you use Model C1: and Model c2: in line with UG ex8.14 to have the growth factor means for each process to vary over their respective latent class variable's classes (but not over the other one). Add c1 WITH c2 using parameterization=loglinear in line with pages 559560 of the V8 UG on our website. 


Thank you so much for the response above  it was immensely helpful. I ended up running one MLM parallel GMM model (it took almost 3 days to produce output), but the model could not be identified. I'm guessing that MLM parallel GMM is theoretically feasible, but for my data obtaining the number of dimensions to integrate into a wellidentified model may not be possible. My sample size is close to 6,000, one process has 5 trajectories and the other 4 trajectories. There are 7 within covariates (mostly binary) and 2 between covariates (continuous). Would you have any recommendations on the integration before I let this idea go? I greatly appreciate your advice. 


The model is identified of set up correctly. Perhaps you are bringing binary covariates into the model by mentioning their parameters in which case you get a message. Dimensions of integration is only relevant if DVs are categorical (or counts). You send send the output to Support along with your license number so we can see what the situation is. 


I am working with a dataset with a very small sample size (n=167). I am interested in running a parallel process growth model with a Bayesian estimator. Is this possible in MPlus? 


Yes, this is possible. Hopefully, you make up for the small sample by having several time points. Make sure you have many fewer parameters than sample size. 

Back to top 