Equality constraints on the level-1 r... PreviousNext
Mplus Discussion > Growth Modeling of Longitudinal Data >
 Anonymous posted on Friday, April 22, 2005 - 11:09 am
Dear Bengt and Linda,

I am modeling a linear growth with three individually varying time points. I can run the growth modeling with either constraining the level-1 residual variances to be equal or freeing them when there are no level-2 predictors added. Since freeing the residual variance can significantly improve the model fit and the estimated residual variances indeed differ a lot, I choose to go with it. However, when I added the level-2 predictors, freeing residual variance cannot lead to convergence for some predictors, so I have to equate them for some predictors. The problem is that freeing and constraining lead to quite different estimates on both fixed and random effects. Sometimes significant effect on the growth parameters was found for one predictor by freeing the residual variance, but once I constrained them, the significant effect was gone, vice versa, which raises two questions:

1. How does freeing or constraining residual variance work when I have random time? As I understand, if we have random time, although there are only three time points for each individual, there should be more than three time points for the whole sample. So, when I free the residual variances, does it mean I free the residual variance at each random time point (should be more than 3 residual variance estimates) or just free the residual variances for y1 y2 and y3 since I only got three residual variance estimates in the output? If it is the latter, does it make sense?

2. In my case, should I stay with freeing or constraining the residual variance? I can make the analyses consistent by constraining the residual variance for all the predictors, but I am worried about whether I got the true estimates of the effects. If I constrain the residual variances for some predictors while free them for the other predictors, how can I compare their effects?

By the way, the sample size is small with n = 120. There are a few missing data, so I use type = missing h1 random.

The model part syntax is like this:

i s| y1 y2 y3 at t1 t2 t3;
i s;
i with s;
[i s];
y1 y2 y3 (1) ;
i on x1 x2;
s on x1 x2;

Any help is highly appreciated.
 bmuthen posted on Friday, April 22, 2005 - 3:32 pm
Answering 2. first, I am in favor of allowing level-1 residual variances to vary across time. You should try to figure out why you have non-convergence in some runs. I am not sure why you do one predictor at a time - if all are relevant it seems to me that you should include all of them in a single run, otherwise any one predictor's slope is misestimated.

1. You are right that with individually-varying times of observation, time represents not merely 3 different time points, but many more. But I think it is still relevant to let the residual variances vary rather than holding them equal. There are only 3 res vars estimated, however (each covering a range of times). Special modeling would have to be employed to estimate res vars for distinct time points - you would have to string out the multivariate outcome vector according to distinct time points at which you observed several individuals.
 Anonymous posted on Saturday, April 23, 2005 - 3:19 pm
Dear Bengt,

Thanks you so much for your prompt answer. I will try to figure out why the program cannot converge in some runs, which may due to the missing data in some moderators. By the way, it is just the first step to do one moderator at a time since there are too many moderators to be investigated. Once I identify some interesting moderators,i will put them together in one model as you said.
 anonymous posted on Friday, November 11, 2005 - 12:50 pm
What is the benefit of allowing the level 1 residual variances to vary over time. That is, is it specifically to improve model fit...or does freeing these variances improve the interpretation of the model?
 BMuthen posted on Saturday, November 12, 2005 - 6:28 pm
Allowing the residual variances to vary over time rather than constraining them to be equal allows the hypothesis that they do vary over time to be tested. And you may be interested in knowing that they do. If you don't free these variances, other parameter estimates may be affected.
 Tracy posted on Monday, September 14, 2015 - 9:15 pm
Dear Bengt and Linda,

I have longitudinal data for repeated assessment on a test over 16 time points (bi-weekly measurement, Y1-Y16). I am wanting to analyse a growth mixture model, to identify separate unobserved populations within. It seems so far, from both looking at the data and initial investigations, that there are 3 classes.

However, I am unsure what to do with the residual variance? My res.var. are all significant and there are no negative SEs. Options Ive found so far include:
a) not doing anything, so for example, Y1 res.var. in each class will be the same as is calculated over whole model;
b) set equal across time: i.e. Y1-Y16 (1); in overall model;
c) set equal across time in each class i.e. in %C#n% Y1-Y16 (1);
d) free in each class i.e. in %C#n% Y1-Y16*;
d) ???

How do I know which method should be undertaken? And why? What does each do to the parameter estimates etc?

Any help would be welcome. Very confused and my testing hasn't helped.
 Bengt O. Muthen posted on Tuesday, September 15, 2015 - 1:44 pm
I would start with the default, that is a). I would not hold the residual variances equal across time unless I had to. Then look at the plot for each class of the estimated mean curve and the observed individual curves classified into that class to see if some classes have much more or much less variability than other classes. Then adjust the model accordingly.
 Tracy posted on Tuesday, September 15, 2015 - 8:27 pm
Dear Bengt

Thank you for your prompt reply, I appreciate it.

So just to confirm on your second point. I have 3 classes (with initial values of):
1) high plateau - Intercept 35.454* (scores range from 5-55, out of a possible 60 score), Lin 4.369*, Quad -0.410*
2) low initially but improving strongly - Intercept 3.404 (0-23, most low), Lin 7.459*, Quad -0.340
3) low plateau - Intercept 3.196* (0-12, most low), Lin 0.857, Quad -0.048

Variances (same across 3 classes)
INT 96.306 19.997 4.816 0.000
LIN 17.309 4.517 3.832 0.000
QUAD 0.185 0.057 3.222 0.001

So based upon this data do I:
a) free Intercept in Class 1 alone ie %C#1% Int*; or
b) free Intercept in all 3 classes i.e. in each class definition area do Int*;

Should I free the linear variance as well, as it is significant in the variances? However visually in each class the individual observed trajectories seems to match the estimated value across time.

Thanks for your help.
 Bengt O. Muthen posted on Wednesday, September 16, 2015 - 4:49 pm
When you say "free intercept", I assume you mean "free the intercept growth factor variance".

Which class you free the variance for depends on your plots of the individual curves sorted into most likely class. When you see a class with much smaller or larger variation in those plots (around the estimated mean curve), you free a variance in that class. Which variance is a tricky issue - often the intercept variance is key, sometimes the residual variances.
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