LTA and distal outcomes PreviousNext
Mplus Discussion > Growth Modeling of Longitudinal Data >
 Tim Seifert posted on Tuesday, June 26, 2007 - 12:41 am
I am modelling pubertal growth using LTA. Two time points with a 4 category latent variable at each time point. The LTA is really nice. But I want to model the effect of the transition from T1 to T2 on a distal outcome. How might this be accomplished? Do I need a second order latent categorical variable, as illustrated in the mover-stayer model?

With thanks.
 Linda K. Muthen posted on Tuesday, June 26, 2007 - 2:52 pm
I think you are correct that you want a model like Example 8.14 with c pointing to the distal outcome
 Tim Seifert posted on Wednesday, June 27, 2007 - 1:33 am
I have a model like 8.14 running. But if "c" (the second order latent categorical variable) is categorical with, say, two classes, and the distal outcome is a continuous variable (such as a latent factor), won't there be a problem with the regression estimates? By that I mean "c" is not dummy (0,1) or effects (-1,1) coded, but is coded as 1,2. How might that be handled?
 Linda K. Muthen posted on Wednesday, June 27, 2007 - 4:04 pm
The regression of a continuous distal outcome on the second-order catgorical latent variable is reflected by the change of means of the continuous distal outcome across the classes of the second-order categorical latent variable.
 Kaigang Li posted on Thursday, May 29, 2008 - 6:12 am
Hello Linda,

If I have a THREE category categorical distal outcome, U, and three covariates, ie. x1, x2, and x3. How can I write in syntax for looking at the effect of covariates on the U?

Is the following commands correct?

U on x1 x2 x3;
[U$1 U$2];
[U1$1 U2$2];


 Linda K. Muthen posted on Thursday, May 29, 2008 - 2:45 pm
It looks correct.
 Kaigang Li posted on Friday, May 30, 2008 - 5:59 am

I have another question. I am reading the chapter "Second-generation structural equation modeling with a combination of categorical and continuous latent variables: New opportunities for latent class/latent growth modeling." but I found the examples penn1-8.inp at are not consistent with the ones used in the book. Could you please instruct me how I can use those examples?


 Kaigang Li posted on Friday, May 30, 2008 - 6:22 am

One more question.

In the article "Jung, T. & Wickrama, K.A.S. (2008). An introduction to latent class growth analysis and growth mixture modeling. Social and Personality Psychology Compass, 2, 302-317." posted at, the author Specified a single-class latent growth curve model using the following

Model: i s | t1@0 t2@1 t3@2;

But in the penn1.inp, the command % OVERALL% was used.

I run the program with and without
% OVERALL% , the results are different.

I am not sure which is correct if I specify a single class model.

Thanks for clarification.

 Linda K. Muthen posted on Friday, May 30, 2008 - 1:49 pm
If you do not obtain the same results for a single-level growth model and a one-class growth model, you should send your two output files and your license number to The results should be identical.
 Kaigang Li posted on Friday, May 30, 2008 - 2:24 pm
Thanks Linda,

I will double check the results.

Do you have any comments on the question posted on Thursday, May 29, 2008 - 11:59 pm right above the question you answered? Thanks,

 Christian M. Connell posted on Thursday, July 15, 2010 - 12:58 pm
Colleagues and I have run a LTA with gender as a known class. The next step in our analysis is to include distal outcomes. We have looked at K. Nylund’s dissertation as a guide of how to include distal outcomes in a latent transition model. Her example is helpful in regards to regressing the distal outcomes on a second order mover stayer variable and on estimating the means for a given class within a wave (e.g., class 3 wave 3). However, we are interested in estimating differences in distal outcomes for different transition configurations, separately for boys and girls. For example, we would like to know if girls that transition from class 1 to class 3 have different means on a distal outcome than girls that transition from class 2 to class 3 or girls that remain stationary across the two time points. Is there a way to estimate this in MPLUS? One important thing to note is that we have previously tried to run a mover stayer model with gender as a known class and that model did not replicate (with 2000 starts). Additionally, we tried to run a mover stayer model with gender as a covariate and that model did not replicate either. Any suggestions on how to examine distal outcomes for different transition configurations would be appreciated. Thank you.
 Bengt O. Muthen posted on Friday, July 16, 2010 - 3:14 pm
I think you would have to use the dot specification for two latent class variables. See UG. For instance:

[distal] (p11);
[u1$1-u5$1] (1-5);
[u6$1-u10$1] (1-5);
[distal] (p12);
[u1$1-u5$1] (1-5);
[u6$1-u10$1] (6-10);
[distal] (p21);
[u1$1-u5$1] (6-10);
[u6$1-u10$1] (1-5);
[distal] (p22);
[u1$1-u5$1] (6-10);
[u6$1-u10$1] (6-10);

Model Constraint:
diff = p12-p21;
 Christian M. Connell posted on Thursday, July 22, 2010 - 7:55 pm
I set-up code based upon your suggestion. However, when I run this I get the following warning:

"*** ERROR in MODEL command
Unknown class model name ASB1.ASB2 specified in C-specific MODEL command."

Am I missing a step before setting up the Model asb1.asb2 statement?

A portion of the code is below to show how I begin:



asb1#1 asb1#2 asb1#3 on H1GI20 race_cat poverty_sum_r;

asb2#1 asb2#2 asb2#3 on depress alcw2 anydrugw2;

asb2#1-asb2#3 on asb1#1-asb1#3;

Model asb1.asb2:
... Then sets up the item response parameter constraints and the distal outcome parameters (as well as the model constraint statement).
 Linda K. Muthen posted on Thursday, July 22, 2010 - 8:41 pm
Remove Model asb1.asb2:
 Christian M. Connell posted on Monday, July 26, 2010 - 6:43 pm
I did as you indicated, but now get the following error:

The following MODEL statements are ignored:
* Statements in Class %ASB1#1.ASB2#1% of MODEL:
[ ARRW3_DIC ] !distal outcome variable

This error is repeated for each of the asb1.asb2 combinations (4 levels of each)
 Linda K. Muthen posted on Monday, July 26, 2010 - 8:59 pm
Please send the full output and your license number to
 Christian M. Connell posted on Thursday, December 02, 2010 - 7:22 pm
Related to the above described LTA models -- I have simplified the model and have everything working in terms of assessing distal outcomes by class consistent with K. Nylund's dissertation approach.
To compare distal outcomes across classes I am using the model test approach. However, I cannot seem to locate the actual statistical tests in the output. Can you clarify where these are located (happy to send the output, if that would help).
 Linda K. Muthen posted on Thursday, December 02, 2010 - 7:30 pm
It is with the other fit statistics before the parameter estimates. If you can't see it, please send your full output and license number to
 Jamie Griffin posted on Sunday, September 21, 2014 - 7:09 pm
I am using the manual 3-step approach to estimate a multiple-group LTA with a continuous distal outcome (two classes at two time points assuming measurement invariance, so four latent statuses). In the third step, I successfully obtain distal means for each of the four latent statuses separately for each of the two observed groups. Of the eight means estimated, six are as expected, but two are quite different from the others (two of the four within a single group). Is there a way to manually estimate these latent status means from the data file created in step 2? I'm trying to get a handle on why the means for those two statuses are so different from the rest. I appreciate any guidance you can provide.
 Bengt O. Muthen posted on Sunday, September 21, 2014 - 9:03 pm
Appendix I of our 3-step paper shows that the "c2.dat" data set contains n1 and n2, which are the most likely class variables for the two latent class variables. You can get the distal outcome mean for each cross-classification of n1 and n2.
 Jamie Griffin posted on Monday, September 22, 2014 - 1:50 pm
Thanks for your quick reply. The means estimated in step 3 do no match the means I get from averaging the distal outcomes within each status. For example, for group 2, the step 3 output displays means of -8.83, -43.55, 40.82, -3.21 for statuses 1-4, respectively. Manually estimated means (exporting status and summarizing in Stata) are -6.51, -8.52, -6.25, and -5.47. The -43.55 and 40.82 are the "quite different" means in question. Thoughts?
 Bengt O. Muthen posted on Monday, September 22, 2014 - 2:03 pm
You may want to check your steps in detail against the Nylund et al (2014) 3-step LTA article on our website. Also check that the class formations stay the same. If that doesn't help, please send data and outputs from your steps to Support so we can see what's happening.
 Bengt O. Muthen posted on Wednesday, September 24, 2014 - 10:34 pm
To follow up on this thread, the user did not use the proposed steps: To study the influence of a covariate on the latent class variables in an LTA with measurement invariance, one should go by the Appendix K-N setups, which takes the measurement invariance approach. See the Appendices 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. Appendices with Mplus scripts are available here.
 Katherine Paschall posted on Friday, December 12, 2014 - 8:52 pm
Hello, I have a question regarding looking at different "directions" of effects in one model. I have an LTA with four parenting profiles at four time points, and I'm modeling children's emotion regulation as both a covariate and a distal outcome. I'm trying to get as close as I can to a something that conceptually resembles an autoregressive cross-lagged panel model. I understand it's not wholly possible, as I cannot ask for x/y on c. I ran one model ("parent-driven") where I used emotion regulation as a covariate of profile membership and as an influence on transition probabilities.

I ran another model ("child-driven") where I allowed the means of emotion regulation as an outcome to vary across the profiles and used Wald's tests to examine differences.

My question: Can I combine these two sets of syntax? Would I gain different information than by running them separately? I am struggling to wrap my mind around it. If you know of any examples that examine bidirectional/transactional relationships with latent classes, I would be very appreciative of your recommendations. Thank you very much for your time.
 Bengt O. Muthen posted on Saturday, December 13, 2014 - 12:30 am
It sounds like you have an LTA with a 4-class latent variable c_t determined by parent outcomes and you want to combine that with a child outcome at the different time points, say z_t. And you want z_t to both influence c_t to c_t+1 transitions and be influenced by c_t (or c_t-1 perhaps).

If that is a correct understanding, I think it is doable. Even though you don't say z_t ON c_t-1 the z_t means can change over the c_t-1 classes and therefore represent the hypothesis.

But it is a complex model; I haven't tried it. I would recommend starting with only 2 time points.
 davide morselli posted on Monday, December 15, 2014 - 10:40 am
hello, I'm trying to write a mover-stayer model with covariates of the ms class. the classes at t1 and t2 are supposed to be sequential steps, that is people in c1.1 can only transition upwards to c2.2 at t2 or remain in c2.1; but people in c1.2 cannot go in c2.1. I was able to do this with Parameterization = Probability; however to insert covariates I can only use Parameterization = logit; and then I am not sure how I can constrain the last class to not to go downwards

thank you for your reply
 Bengt O. Muthen posted on Monday, December 15, 2014 - 10:48 pm
You can accomplish the same using Param = logit. See the V7Part2 handout on the Mplus short course video page under the heading:

Dutch Mplus Users Group and Mplus Version 7 workshop, Utrecht, August 2012

Videos and handouts from 3-day Version 7 workshop.

See in particular slides 57 and 69-71.
 davide morselli posted on Wednesday, December 17, 2014 - 12:07 pm
thank you Bengt, it's quite clear now.
I have another question on the UG 8.15 it's specified
c1 ON c;

with c = mover-stayer
while in the slide you suggested it is

c1 c2 c3 ON c !Relating c1, c2, c3 to c: (Movers)

Why is that different? and what is the best way to specify the mover-stayer model?
 davide morselli posted on Wednesday, December 17, 2014 - 2:09 pm
I have also another question:
I would need to differences in some distal variables between mover and stayer for only certain classes:e.g., for people who remained in class 1 (c#1.c#2) and people in class1 that moved to the next class (c#1.c#2)
does it make sense to compare the coefficients like this:
[distal] (d1);

[distal] (d2);

model test:
d1 = d2;

and above all, are those coefficients the logit of what exactly? the probability of the distal variable to be high in each pair of classes?

thanks again
 Bengt O. Muthen posted on Thursday, December 18, 2014 - 6:11 pm
Q1. That's a difference between the logit and the probability parameterization.

Q2. You can do it that way. The logit for a binary distal is related to the probability of 1 instead of 0 for the distal:

P(distal=1) = 1/(1+exp(-L))

where L is the logit.
 davide morselli posted on Wednesday, January 07, 2015 - 10:54 am
me again with another question:
I'm requesting the means of a distal variables for each transition pattern with:


However I noticed that the output show means even for patterns for which the most likely size is zero. Does it make sense to keep those in the model (I guess they shouldn't be interpreted though) or it would be more correct to constrain those to zero?
 Bengt O. Muthen posted on Wednesday, January 07, 2015 - 11:48 pm
I assume you don't hold the distal means equal across patterns but they are free. If so, small class/pattern frequencies (which would give zero most likely class freq) give unstable estimates - if the pattern freq is zero it is not even identified. I think you can fix them to anything.
 Raghav Ramachandran posted on Wednesday, May 06, 2015 - 7:30 pm

I am trying to run an LTA model (two time points) with covariates and distal outcomes. I was able to use example 8.14 to model the effect of covariates on the transition from c1 to c2. However, I am finding it tricky to model the effect of the c1-c2 transition on a distal outcome, modeled as a continuous latent variable, f2. I am also controlling for the outcome at time 1, f1, by regressing it on f2.

To regress the c1-c2 transition on f2, I would need to vary the means of the continuous latent variable across the classes of model c1.c2. However, in order to do this I would need an extra categorical latent variable in my model. Since I would like to regress each individual transition on the outcome, is there a way to perform this regression without having to use a Mover-Stayer model? Thanks for your help.
 Bengt O. Muthen posted on Wednesday, May 06, 2015 - 9:15 pm
I think you mean that you want to regress f2 on c1 x c2 classes and not the other way around.

I don't see why you need an extra latent class variable to let the f2 mean vary - why not just use the "dot" approach for the c1 x c2 combination classes:

 Raghav Ramachandran posted on Wednesday, May 06, 2015 - 10:13 pm
Dr. Muthen,

I read in the manual that you need more than two categorical latent variables to specify MODEL c1.c2. However, I realized that I could use the %c1#1.c2#1% approach under the %OVERALL% label without any problems. Also, I do want to regress f2 on the c1-c2 transition, not the other way. Sorry for the confusion and thanks for helping me resolve my issue.

 Bengt O. Muthen posted on Thursday, May 07, 2015 - 12:15 am
You got it.
 J.D. Haltigan posted on Sunday, May 24, 2015 - 5:05 pm
In modeling an LTA with a distal outcome that varies only over the last process (i.e., C3 in my case), how does one obtain the means for the C3 classes only?

In the Nylund diss p. 127 she reports these means yet when I estimate them in model the output gives the means of the distal for every latent class pattern (rather than only the last process)...

What am I missing?

With thanks,
 Bengt O. Muthen posted on Monday, May 25, 2015 - 9:18 pm
If you have specified the model to allow the distal to vary across only the C3 classes, then the distal means should vary over only those classes. So if C3 has say 4 classes, there should be only 4 distinct distal means.
 J.D. Haltigan posted on Tuesday, May 26, 2015 - 5:26 am
Many thanks. I see now my two means for the relevant C3 process are the only two means provided for all LT patterns as should be.
 J.D. Haltigan posted on Thursday, June 04, 2015 - 4:47 pm
Hello again:

I am estimating a 4-time point LTA with a mover stayer variable. I am also estimating a distal at T5 for the stayers. All of the above is in line with the examples provided in the Nylund et al. series of documents.

When I estimate the distal for the stayers, I also get different means for the mover patterns. This is problematic because for some patterns it seems to cause the non-positive issue or needs fixed to avoid singularity (I'm assuming because that pattern is too sparse to generate an estimate?). Is there any way to fix means for the movers at 0 on the distal? I am not interested in them for the moment.
 Bengt O. Muthen posted on Friday, June 05, 2015 - 2:22 pm
That should be possible - you just have to state for which class combination (perhaps using the dot command) you want which mean. I don't know that you want them to be zero, but rather work with equality constraints.
 J.D. Haltigan posted on Friday, June 05, 2015 - 6:06 pm
This worked nicely, thank you. I set the means for the movers equivalent.
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