Message/Author 

Anonymous posted on Sunday, July 04, 2004  8:04 pm



With your graphing function, I have generated the plots of 3 growth curves based on estimated means for 3 separate samples. Each of these curves is shown in a different .gph file because they came from different samples and were estimated with different models. For presentation's sake, I would like one graph to show all three curves so they may be easily contrasted. I cannot figure out how to do this...essentially how to merge or cut/paste various curves. Can you help? 


This cannot currently be done in Mplus. It should be available in the future. 


Dear Linda & Bengt, I noticed that when I run a censored or censored inflated growth model that the plots for the estimated growth trajectories are not available. This is not the case in regular or twopart growth models. Is this intended or am I missing something? Thanks. Best, Hanno 

Thuy Nguyen posted on Sunday, April 10, 2005  12:40 pm



For a growth model with censored or censored inflated outcomes, you should get a plot of estimated means for the censored outcomes and a plot of estimated probabilities for the censoredinflated outcomes. Adding the PLOT option to example 6.3 on the Mplus CD gives us these 2 plots. Note that if there are covariates in the model, then the model estimated means cannot be computed. A note as to why will be printed in the RESIDUAL output section if RESIDUAL is requested. If you are still not getting these plots without covariates in the model, please send input/output and data to support@statmodel.com. 


Dear Thuy, thank you for the information. Could you send me the example for a multiple class model with censored inflated outcomes with the graphics command added? My email is hpetras@jhsph.edu. Also, in addition to defining a growth structure for the censored outcomes, you can run the censored inflated multiple class model allowing the censored inflated variables to be unstructured, i.e., not to define an intercept, slope etc. Both models run, but the first is very computational intensive. I am wondering if the model with unstructured censored variables is a legitimate model to run, or would you always define a growth structure for the censoring part as well? Are there any guidelines or suggestions for testing the correct specifications of the model? Best, Hanno 

BMuthen posted on Friday, April 15, 2005  1:50 am



Regardng your second question, the inflated parts of the outcomes need to be allowed to correlate in the model. A minimal model for accomplishing this is an intercept only growth model. 


Thank you. Do you have any model building recommedations? For example, when running a two part model, it makes sense to model the u part and the ypart separately before analyzing them in the same model. I am not quite sure how this would be translated into the censored inflated model. Best, Hanno 

BMuthen posted on Saturday, April 16, 2005  4:31 am



No, for the censored inflated model, the inflation part of the model is latent so you can't do them separately. So model building ideas have to be drawn on from regular growth modeling, that is, start with a simple model and go from there. 


OK, so does that mean that I would assume that for a growth model with intercept, slope and quadratic slope I would also specify the growth for the censored inflated part with an intercept, slope, and quadratic slope? In a second step, I could reduce the number of growth parameters for the censored inflated part if some turn out to be nonsignificant? Best, Hanno 

bmuthen posted on Tuesday, April 19, 2005  12:13 pm



You could start with the same growth factors in the inflation part but only allow the intercept to be random for the inflation part (so estimating only the means, not the variances, for s and q in the inflation part). 


Dear Linda & Bengt, I am running a TwoPart model looking at delinquency data over 13 time points. The upart relates to the probability of engagement in crime and the ypart relates to the count of crimes the person engaged in within that time period. The mean count of crimes range from 1.38 to 2.72. I noticed that treating it as count increases the computation immensely. In the Olson & Schaeffer paper the ypart is logged (if I remember correctly). Given that the outcome is relative rare would it be more appropriate to specify it as count instead of treating it as log continuous. If the latter is advisable, are the estimates accurate or as in the Poisson regression model (treating the outcome as log + an added constant) are they rough approximations. Sorry for the long question. Thanks. Hanno 


With twopart modeling, having y as a count variable would call for using a Poisson distribution that is truncated, that is, not including zero, which Mplus does not accomodate. So with counts, Mplus leads to ZIP modeling instead of twopart. It's hard to say which is best. 


Dear Bengt, I just saw that I filed my question under the wrong heading. My apologies for that. Thank you for your answer. So when treating the y part as count Mplus models it as Poisson and not truncated Poisson and that would mean that the estimates are biased. Therefore the log transformation may make more sense. Would you agree? Best, Hanno 


Yes. 


Hello, I have an LGM of 11 repeated observations, that includes an intercept, and linear and quadratic growth functions. I have several time invariant predictors of these growth parameters. I would like to display the estimated growth curves for two different levels of one of these predictors, in order to illustrate the effect of the predictor. Is there a way to display multiple estimated growth curves across conditions of a predictor? I have tried specifying covariate sets in the adjusted estimated means window, and just specifying two contrasting values of the predictor I am trying to illustrate. But the same curve is shown for both sets. Thanks in advance for your help, 


This should work fine. Take ex6.10 as an example (you have that ex on your CD or find it on our web site), plotting against two values of x1, say 1 and +1. In the Adjusted means menu you enter say "low" in the upper right hand box and then click Name covariate set. Then you click on x1, click on Use and enter 1, plus say ok. Then put the cursor in the covariate set again and type "high" and click on Name covariate set (it is important to click again, otherwise you get 2 overlapping curves) and then enter +1. This gives 2 lines. Note that some models don't imply different curves for different covariate values (such as mixtures where x only influences c). 


Thank you Dr. Muthen for your reply... I used example 6.10 as a guide. I was defining covariate sets in the same way that you described, but it seems that it works fine as long as you don't include multiple observed predictors with unanalyzed associations between them. If the predictors are uncorrelated, it is no problem to specify covariate sets (as is the case with ex6.10  x1 and x2 are uncorrelated). But if there are unanalyzed associations between the predictors and then you specify covariate sets the trajectories are always the same for the covariate sets. Could you explain this? In my model I am interested in illustrating the effect of one predictor on linear and quadratic growth, controlling for the effects of 4 observed covariates and the level of the intercept. All of the observed predictors have unanalyzed associations between them, and I am unable to specify covariate sets with any result as long as those correlations are there. Thank you for your assistance. 

Adam Darnell posted on Wednesday, February 07, 2007  8:33 am



Another question Dr. Muthen: as I described above, I am interested in the effect of one predictor on the slope controlling for the intercept, and on the quadratic controlling for the intercept and slope. So I have direct effects between the latents where appropriate. I gather that the adjusted means are not adjusted for these effects, correct? That is the effect of my predictor of interest will appear the same in the adjusted means graph regardless of whether the model specifies an unanalyzed association between intercept and slope, or a direct effect. Also, I am guessing that it is not possible to specify covariate sets based on these latent covariates? Thank you very much... 


Please send your input, data, output, and license number to support@statmodel.com. Give us the sequence you go through to get the graphs and explain where it goes wrong. 


Dear Linda and Bengt, I have estimated a two level (level 1: students, level 2: schools) latent growth curve model and would like to draw the growth curves at level 2. Is this possible in Mplus? I would like to be able to draw growth curves of a number of schools but it seems to me that I only can draw growth curves at the student level. This is part of my model specication: ANALYSIS: TYPE = TWOLEVEL MISSING H1; MODEL:%WITHIN% iw1 sw1 qw1 aczc1@0 aczc2@1 aczc3@3 aczc4@5; aczc1aczc4 (1); qw1@0; %BETWEEN% ib1 sb1 qb1 aczc1@0 aczc2@1 aczc3@3 aczc4@5; aczc1aczc4@0; OUTPUT: modindices tech4 tech1; SAVEDATA: results are results.dat; PLOT: Type = plot1; type = plot2; Type = plot3; Series = aczc1(0) aczc2(1) aczc3(3) aczc4(5); Thank you! 


The plot that Mplus provides is for the estimated mean growth curve. There is only one mean per variable. If you want to plot curves for schools, you would have to ask for factor scores  which gives you the estimated school values for each time point. Mplus does not plot that for you, but you have the values in the graph file and can plot them with another program. 


When, I run a twopart growth model with out covariates, can Mplus produce plots? If so, what is the code? 


See the PLOT command. 


Dear Linda and Bengt, I am trying to graph results of a growth curve model for censored inflated data. I am using a covariate, so plot command does not work. Can I manualy compute estimated values for a given value of a covariate (e.g., X=2)? Here is my model: i s q Y1@0 Y2@.1 Y3@.2 Y4@.3 Y5@.4 Y6@.5 Y7@.6 Y8@.7 Y9@.8 Y10@.9 Y11@1.0 Y12@1.1 Y13@1.2; ii si Y1#1@0 Y2#1@.1 Y3#1@.2 Y4#1@.3 Y5#1@.4 Y6#1@.5 Y7#1@.6 Y8#1@.7 Y9#1@.8 Y10#1@.9 Y11#1@1.0 Y12#1@1.1 Y13#1@1.2; iisi@0; iq@0; Y1Y13 ON X; Thank you very much, Julia 


This requires numerical integration so it cannot be calculated by hand. 


Hi Linda, Thank you. What would be your suggestion for reporting results? My ultimate model is a growth mixture model with one static and one timevarying control variable. I would need to somehow show the shape of the developmental trajectories. Should I graph results for trajectories without the covariates? Would that be an adequate representation? Alternatively, should I run growth mixture models on the residuals (from the regression of the outcome variable on the control variables)? Are there any other options? Thank you very much, Julia 


I would show the graph without covariates. 

Wei Chun posted on Monday, February 02, 2009  6:21 pm



Dear Linda, In Mplus output, following plots are usually available: Histograms (sample values, estimated factor scores, estimated values) Scatterplots (sample values, estimated factor scores, estimated values) Sample means Estimated means Sample and estimated means Observed individual values Estimated individual values But in my output, I can only get: Histograms (sample values, estimated factor scores, estimated values) Scatterplots (sample values, estimated factor scores, estimated values) Sample proportions Estimated probabilities Item characteristic curves Information curves Estimated individual probability values Although I have asked for the following: OUTPUT: SAMPSTAT MODINDICES; PLOT: SERIES ARE con1_94 con1_96 con1_98 con1_00 con1_02 con1_04(*); TYPE IS PLOT3; Could you please advise me on this issue? Many thanks. 


The plots that you get depend on the model that is estimated. For example, Observed individual values and estimated individual values are given for growth models. It sounds like you have an IRT model. If you have further questions regarding this, please send them along with your outputs and license number to support@statmodel.com. 

Wei Chun posted on Tuesday, February 03, 2009  2:24 pm



Thank you, Linda. It is a 6 wave growth model with quadratic trend. I used WLSMV estimator because of my categorical outcome variables. If I use MLR estimator, I can get plots of Sample and estimated means Observed individual values Estimated individual values So do I use MLR for getting the plots and use WLSMV for reporting the outcomes? Many thanks for your advice. 


If you are not using Version 5.2, go to Support  Mplus Updates and download it. If you are, please send your input, data, output, and license number to support@statmodel.com. 

Kurt Beron posted on Tuesday, March 10, 2009  1:33 pm



Hi, I'm trying to plot a censored normal outcome from a growth model. The plot that is produced seems to be the unconditional plot of the latent variables, which includes the zero values (lower bound in my case). However what I'd like is the plot of the more relevant, for me anyway, E(YY>0). Is there a way to generate this in Mplus? Usually this requires computing the inverse Mills Ratio and this isn't obvious to me in Mplus. Thanks....Kurt 


No, I don't see a way to plot this using the Mplus PLOT command. The normal density and distribution function would need to be available. Something to add. 


Dear Linda, In UG ex.19.6 (Individual development over time), which PLOT command(s) to add in order to plot individual trajectories over time? 


You would need PLOT3. 

Dimiter posted on Tuesday, March 24, 2009  4:09 pm



I used PLOT3, but it does not provide individual trajectories. Is there some additional syntax under the command: PLOT: TYPE IS PLOT3; ? Also, how to make a decision about model fit based on the reported indices (Loglikelihood, AIC, and BIC)? 


There is no UG ex 19.6 so I can't tell which model you are considering. With growth models the PLOT command SERIES = is the one to use to look at estimated mean curves and individual trajectories. Your second question concerns a big topic. Basically, these indices are meant to be used when comparing two models. For instance, you want the model with the lowest BIC. 

Dimiter posted on Tuesday, March 24, 2009  7:35 pm



Sorry, it's ex.9.16 


I think the individual plots may not be available for Type = Random. 


Dear Bengt and Linda, I have conducted a growth model with intercept and slope of count variables over 4 timepoints regressed on treatment (two groups; 0, 1) and covariates. I would like to plot (or use output to manually plot) the curves for each treatment group (0,1) as an illustration of the significant differences in counts over time. Any help with how to do this is much appreciated. Thank you in advance, Regards, Nicole 


You can use TYPE=MIXTURE with the KNOWNCLASS option to obtain a curve for each of the two treatment groups. 


I have run a censoredinflated growth model on data in which I know there is some missing data. However, in the censoredinflated output it states that there are 0 missing data patterns and I get no info on the amount of missing data. Why would this be? My syntax is: ....... USEVARIABLES = shop2 shop4 shop5shop7 shop8 shop9; CENSORED = shop2 shop4 shop5shop7 shop8 shop9 (bi); MISSING = ALL(9); ANALYSIS: ESTIMATOR = MLR; MODEL: i s shop2@0 shop4@1 shop5@2 shop6@3 shop7@4 shop8@5 shop9@6; ii si  shop2#1@0 shop4#1@1 shop5#1@2 shop6#1@3 shop7#1@4 shop8#1@5 shop9#1@6; si@0; shop2shop9 (1);! held = due to convergence problems; OUTPUT: tech1 tech4; plot: type is plot3; series = shop2shop9(*); Thanks, Debbi 


Please send the full output and your license number to support@statmodel.com. 

Diane Chen posted on Thursday, December 16, 2010  12:36 pm



Is it possible to graph growth curves for a 2nd process (e.g., aggression) within different classes of another process (e.g., peer rejection)? What would the plot/series input statement look like? Thanks! 


You use a  symbol to separate the two processes in the SERIES option. 


Is it possible to get confidence intervals or standard error bars for the adjusted estimated means? 


No, this is not possible. 

EFried posted on Wednesday, February 22, 2012  7:54 am



In the online tutorial video Topic 4, second part, you mention that MPLUS is able to contrast the mean of the dependent variable on measurement point t of (1) people who will be present at t+1 in a longitudinal study vs. (2) people who will drop out at t+1. I do not find this function, using the newest version of MPLUS, and wonder if you could hint me into the right direction. Also, is there a paper covering methods to test whether longitudinal data are MAR/MCAR in MPLUS? Thank you!! 

EFried posted on Wednesday, February 22, 2012  8:10 am



(My sample has 5 measurement points, missing data 5% at the first measurement point and 40% at the last. Not atypical for depression studies, but I don't quite know how to handle this) 


See the DESCRIPTIVE option of the DATA MISSING command. See also the following paper on the website: Muthén, B., Asparouhov, T., Hunter, A. & Leuchter, A. (2011). Growth modeling with nonignorable dropout: Alternative analyses of the STAR*D antidepressant trial. Psychological Methods, 16, 1733. MAR cannot be tested. See the following paper on the website for MCAR: Muthén, B., Kaplan, D. & Hollis, M. (1987). On structural equation modeling with data that are not missing completely at random. Psychometrika, 52:3, 431462. 

EFried posted on Sunday, February 26, 2012  7:25 am



Thank you, Linda. (1) The difference between means of the dependent variable between dropouts and non dropouts after measurement point 1 is highly significant p<.001, I guess that means that people with a higher value on my dependent variable dropout more readily. (2) Does multiple imputation rely on the MAR assumption? (3) Bringing covariates into the model with the "x1 x2 x3;" command so that MPLUS uses a different way to handle covariate missing values leads to nonidentification very often. Are there any constraints that I would need to implement that MPLUS doesn't use by default and could cause these problems? 


1. That sounds correct. 2. Yes. 3. When you bring a binary covariate into the model, it results in a nonidentification message because the mean and variance of a binary variable are not orthogonal. When this is the reason, the message can be ignored. 

EFried posted on Monday, February 27, 2012  5:44 am



3. I'm not sure whether the problems arise from this. Using a GMM with classes=c(4); ANALYSIS: type = MIXTURE; Starts = 400 40; STITERATIONS = 10; MODEL: %OVERALL% i s q  phq_t0@0 phq_t1@1 phq_t2@2 phq_t3@3 phq_t4@4; q@0; i s ON sex hisdep; leads to no problems, 27 free parameters, and a BIC of 14000. Including "sex hisdep;" into the model (both binary) leads to 38 free parameters, a lot of perturbed starting value runs in both phases, and a BIC of 16000. Entropy and class solutions are about the same, though. What could be the reason for this? 


It is impossible to answer this question with the information given. Send the relevant outputs and your license number to support@statmodel.com. 


Hi, We are trying to graphically display individual trajectories in latent growth curves. However, the plots only displays straight lines and no curves , although we request observed individual values. We have tried different syntax to obtain graphs as stated in the Mplus users guide but regardless of the syntax used we only receive straight lines. So our question is how do we obtain a plot showing individual trajectories? We suspect that there is a simple solution to this problem but we are currently unable to solve this. Below is our model and plot syntax. MODEL: i s Sjalvkansla1@0 Sjalvkansla2@1 Sjalvkansla3@2; PLOT: SERIES = Sjalvkansla1 (0) Sjalvkansla2 (1) Sjalvkansla3 (2); TYPE = PLOT3; 


Please send your output, gph file, and license number to support@statmodel.com. 


Hello, I have a piecewise latent growth curve which jointly models two outcomes. How can I plot both lines? I have tried: Series is czbmi3 (0) czbmi5 (1) czbmi7 (2)czght3 (0) czght5 (1) czhgt7 (2): Type is plot3; but don't get the expected graphs. Thank you 


You can try using  in the Series option to separate the two pieces. 

AshleyM posted on Sunday, November 17, 2013  1:04 pm



Hello, I am trying to get PLOTS for the trajectories of classes for a series of LCGA models. However, I am not getting the expected plots in the output and the option is not available to view the plots. Here are parts of my syntax that might be helpful: VARIABLE: USEVARIABLES ARE dintk1 dintk2 dintk3 dintk4 dintk5 dintk6 dintk7 dintk8 dintk9 dintk10 dintk11 OHFNP21 OHFNP22 OHFNP23 OHFNP24 OHFNP25 OHFNP26 OHFNP27 OHFNP28 OHFNP29 OHFNP210 OHFNP211; MISSING ARE ALL (9999); TSCORES = dintk1dintk11; CLASSES = c(3); ANALYSIS: TYPE IS MIXTURE RANDOM; ESTIMATOR IS ML; STARTS = 100 10; PROCESS = 4; MODEL: %OVERALL% i sOHFNP21OHFNP211 AT dintk1 dintk11; is@0; PLOT: SERIES = dintk1  dintk11 (s) ; TYPE = PLOT3; As you can see, I am trying to use the TIMESCORES command to account for individually varying times of observation (UG 6.12) and the fact that the data are not time structured. Is it possible to get plots while using TIMESCORES? Do you know if it is still possible to view the plots using this command? Or is there something else that I am doing incorrectly? Thank you! 


Plots are not available for the AT and TIMESCORES options. 

AshleyM posted on Tuesday, November 19, 2013  10:27 am



Ok, thank you. If the plots, LMRLRT, and BLRT options are not available for LCGA models using TIMESCORES, are there other indices of fit I can look to in order to make decisions about the best number of trajectory classes (aside from AIC, BIC, entropy, and posterior probabilities, and theory)? Do you have any suggestions about how to make such decisions? Thank you! 


Hello, I am running a ZIP growth model. I have successfully run an unconditional version of the model. I requested the plots of the estimated and sample means and they look fine. When I do the same model but now conditional on some dummies related with race and request the sample means I only get a straight line. Why am I getting a straight line? Thank you so much MODEL: i s q DRINKS13@0 DRINKS14@0.1 ... DRINKS32@1.9; ii si qi DRINKS13#1@0 DRINKS14#1@0.1 ... DRINKS32#1@1.9; [DRINKS13@0 DRINKS14@0 ... DRINKS32@0 i s q]; [DRINKS13#1@0 DRINKS14#1@0 ... DRINKS32#1@0 ii si qi]; i on race_h race_w race_b; s on race_h race_w race_b; q on race_h race_w race_b; ii on race_h race_w race_b; si on race_h race_w race_b; qi on race_h race_w race_b; qi@0; q@0; OUTPUT:TECH4; Plot: type=plot2; series = DRINKS13(13) DRINKS14(14) ... DRINKS32(32); 


Please send the output and your license number to support@statmodel.com. 

xiaoyu bi posted on Monday, January 27, 2014  11:43 pm



Dear Dr. Muthen, How to plot a variable using a longformat data? For example, for wideformat variables, x1 x2 x3 x4 x5, I can plot it by series = x1 x2 x3 x4 x5 (*); But, how about in longformat data to plot variable X? Thank you! 


The PLOT option is not available for long format. 

ellen liao posted on Monday, June 02, 2014  9:58 am



Hi, when covariates are included in the growth curve model,what does the 'estimated means'in the PLOT function present? Holding all covariates at their average level (how about sex??)? Thank you. 


Yes, holding all covariates at their average value (which you can change). For a variable such as Female (1=female, 0=male), the average represents the proportion of females in the sample, so you probably want to change that to either 0 or 1. 

Stine Hoj posted on Monday, September 29, 2014  7:23 pm



I am running an unconditional GMM with time as a continuous variable (using TYPE=RANDOM and TSCORES) and accounting for clustering using TYPE=COMPLEX. I am generally able to obtain a plot of sample means for each class using PLOT3. However, if I identify the observed variable as being censored from below then 'sample means' disappears from the plot options. Is this unavailable with censored data, or have I omitted something else important from my code? Thanks in advance. USEVARIABLES ARE DETA1 DETA2 DETA3 TimeT1 TimeT2 TimeT3; CLUSTER = CT; CENSORED ARE DETA1 DETA2 DETA3 (b); TSCORES ARE TimeT1 TimeT2 TimeT3; MISSING ARE ALL (999); CLASSES = c(3); ANALYSIS: ESTIMATOR = MLR; TYPE = COMPLEX RANDOM MIXTURE; STARTS = 100 20; STITERATIONS = 20; MODEL: %OVERALL% i s  DETA1 DETA2 DETA3 AT TimeT1 TimeT2 TimeT3; is@0; PLOT: TYPE = plot1 plot2 plot3; SERIES = DETA1(0.924) DETA2(2.715) DETA3(5.095); 

Back to top 