Varying numbers of factors in MGCFA PreviousNext
Mplus Discussion > Confirmatory Factor Analysis >
 Thomas Klausch posted on Monday, March 26, 2012 - 4:34 pm
Dear Lisa, Bengt,

I would like to know, if I can specify a MG-CFA where the number of factors varies across groups in Mplus. Say I have a model with the same two factors in all groups, but in one sub-group the model has to be supplemented by a third factor in order to have appropriate fit. I think then it should still be possible to fit a MG model and test equality constraints for those factors the groups have in common. But how to do this in Mplus, i.e. how can I eliminate a factor from the models estimated in all but one sub-groups?

Thanks a lot for you reply!
 Bengt O. Muthen posted on Tuesday, March 27, 2012 - 12:35 am
The short answer is that the group in question has its own BY statement.

The longer answer is that you need to be careful about the substantive interpretation in this case. When the 3rd factor is added and variables load on both the 2 original factors and this 3rd factor, the meaning of your 2 original factors may change for that group.
 Thomas Klausch posted on Tuesday, March 27, 2012 - 9:10 am
Thanks - If I do that Mplus argues that there is an undefined variable in a BY statetment (i.e. F3). Am I overlooking anything?

Re. the long answer, I believe f3 to be a nuissance variable causing differential measurement bias. I have taken from the bias literature that in such situations we might be able to still test measurement invariance on loadings, thresholds etc. if we adjust for the nuissance factor in the affected group.
 Linda K. Muthen posted on Wednesday, March 28, 2012 - 12:40 am
Please send the output and your license number to
 Thomas Klausch posted on Thursday, March 29, 2012 - 11:26 am
I found a solution to the problem.

The trick is to specify a zero constrained factor in the model command and then lift the constraints in the sub-groups where the factor should be.

So for example:

f1 by x1-x3;
f2 by x4-x6:
f3 by x7@0 x8@0 x9@0;
f1 with f3@0; f2 with f3@0;

Model group1:
f3 by x7* x8* x9*;
f1 with f3; f2 with f3;

I specified f3@1 in the model comamnd which also works.
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