Message/Author 

Sung Kim posted on Wednesday, June 24, 2009  8:43 am



I fitted a constrained MGCFA model and an unconstrained MGCFA model to investigate measurement invariance between high achievers (i.e., gr1) and lowachievers (i.e., gr2). The model has 10 factors and 50 items (7point Likerttype) and two groups. I used bootstrapping to estimate standard errors. For the constrained model (strong measurement invariance) the directions of factor mean differences was as expected. For example, factor means of lowachievers (i.e., gr2) were negative while those of high achievers were set to 0. However, for the unconstrained model (all freely estimated), factor means of low achievers (i.e., gr2) became positive, which can't be true. I am wondering what's going on here. 


Perhaps your unconstrained model allows the intercepts to be different across groups, in which case group differences in observed variable means are reflected not only by factor mean differences but also intercept differences. 

Sung Kim posted on Wednesday, June 24, 2009  10:20 am



That makes sense. Thank you so much! Please let me ask you one more question. What do residuals do in terms of group differences in observed variable means? I think they also contribute to group differences in observed means. If they are estimated freely, we also need to examine them in addition to factor means and intercepts. Thanks. 


No, the means of residuals are zero. 

Elina Dale posted on Tuesday, August 20, 2013  6:19 am



Dear Dr. Muthen, I need to measure the mean differences between the two groups using Multiple Group CFA for categorical variables. Following examples in the MPlus Guide & handouts for lectures I specified: CATEGORICAL = i1 i2 i3 i4 i5 i6 ; GROUPING IS g (1 = stay 2 = quit) ; CLUSTER = clus; MISSING = ALL (9999) ; Analysis: TYPE = COMPLEX ; Model: f1 BY i1 i2 i3; f2 BY i4 i5 i6; Model stay: [i1$1 i2$1 i3$1 i4$1 i5$1 i6$1]; {i1@1 i2@1 i3@1 i4@1 i5@1 i6@1}; I got the following error messages: *** ERROR Group 2 does not contain all values of categorical variable: i3 Group 2 does not contain all values of categorical variable: i6 My items are measured on a 4point Likert scale, and among Group 2 members, the responses for i3 and i6 range only between 24, i.e. no one marked "highly disagree". But this is the actual data, no one marked 1 among those who are in group 2 ("quit"). I shouldn't change it. 1. Does this mean I cannot use MG CFA? 2. If I can still use it, how can I modify my model specifications in order to avoid the error message? Thank you! 


The V7 UG pages 543544 explain the option CATEGORICAL = u1u3(*); which is useful when different number of categories are used in different groups or different time points. This is available with ML. 

Elina Dale posted on Thursday, August 22, 2013  3:45 am



Dear Dr. Muthen, I tried the option CATEGORICAL = u1u3(*); but it seems to be available only with ML, MLR etc.I changed then from the default WLSMV estimator to MLR. But I got an error message: ALGORITHM=INTEGRATION is not available for multiple group analysis. Try using the KNOWNCLASS option for TYPE=MIXTURE. Using example on Mixture modeling with known classes (MG analysis), I revised my input but I got the following errors: 1)Variable G, used in KNOWNCLASS specification, has been removed from the USEVARIABLES list. Subsequent errors may occur if this variable is used elsewhere. Shouldn't we list ALL variables that are to be used on this line? My "g" variable is an actual binary variable that has information on the two groups I am interested (1quit, 2stay). 2)TYPE=MIXTURE does not support models with scale factors. As per 5.17 ex on MG analysis, if scale factors are not allowed to be parameters in the model, we have to use THETA instead of DELTA param. But it seems that PARAMETERIZATION=THETA is not allowed for TYPE=MIXTURE. Do I specify scale factors or residual variances in the model? What parameterization should I use then? 


1. Only analysis variables should be included on the USEVARIABLES list. Grouping, cluster etc. should not be included. 2. Theta and Delta are used only with WLSMV not ML. 

Elina Dale posted on Friday, August 23, 2013  6:21 am



Thank you, Dr. Muthen! Regarding point 2 above, below is my input. I am not sure then how to alter it in order to achieve my initial objective (see postings Aug 20, Aug 22). I'd appreciate your advice on specific changes I need to make to this input: USEVARIABLE = i1 i2 i3 i4 i5 i6 ; CATEGORICAL = i1 i2 i3 i4 i5 i6 (*) ; CLASSES = cg (2) c (2) ; KNOWNCLASS = cg (g=1 g=2) ; CLUSTER = clus; Analysis: TYPE = MIXTURE ; TYPE = COMPLEX ; Model: %OVERALL% f1 BY i1 i2 i3; f2 BY i4 i5 i6; c ON cg ; Model c: %c#1% !THE MEANS/INTERCEPTS OF i1i6 VARY ACROSS THE CLASSES OF C [i1$1 i2$1 i3$1 i4$1 i5$1 i6$1]; [i1$2 i2$2 i3$2 i4$2 i5$2 i6$2]; [i1$3 i2$3 i3$3 i4$3 i5$3 i6$3]; %c#2% [i1$1 i2$1 i3$1 i4$1 i5$1 i6$1]; [i1$2 i2$2 i3$2 i4$2 i5$2 i6$2]; [i1$3 i2$3 i3$3 i4$3 i5$3 i6$3]; Model cg: %cg#1% {i1@1 i2@1 i3@1 i4@1 i5@1 i6@1}; %cg#2% {i1@1 i2@1 i3@1 i4@1 i5@1 i6@1}; Thank you! 


Remove the scale factors if you are going to use maximum likelihood. 

Elina Dale posted on Sunday, August 25, 2013  3:40 am



Do you mean I should remove line "Model cg" and all the lines following it? In the MPlus Guide it says that "Because the factor indicators are categorical, scale factors are required for multiple group analysis when the default Delta parameterization is used." Further, if scale factors are not used, as I understand it, we must use Theta paramet. "The difference between this example and Example 5.16 is that the Theta parameterization is used instead of the Delta parameterization. In the alternative Theta parameterization, residual variances for latent response variables are allowed to be parameters in the model but scale factors are not." So, should I remove scale factors and specify res variances for latent var? BUT in your previous response you said neither Theta nor Delta were allowed with ML. Please, clarify. Thank you! 


Yes, remove those lines. The PARAMETRIZATION option cannot be used with weighted least squares. With maximum likelihood, the Theta parametrization is the default with crosssectional data. 

Elina Dale posted on Monday, September 02, 2013  2:39 am



Dear Dr. Muthen, I am trying to see if there is a difference between two groups using Multiple Group CFA for categorical variables. As advised on Aug 20, I tried using Mixture Modeling with Known Classes (Ex. 7.21) instead of MGA approach as described in Ex. 5.165.17. Since then I am having great difficulties in specifying the correct commands and I would greatly appreciate help from you. I went through Ex. 7.21 again and I am not sure I understand the difference between MODEL c and MODEL cg commands and why we need to specify both. Could you please, explain? Cat latent variable that defines latent classes is c. At the same time, in the Manual it says the groups are represented by the classes of the cat latent variable cg, which has known class membership. You wrote remove lines cg and below. But in Ex. 7.21, you have MODEL cg command. Moreover, when I try running the input file as shown in my message from Aug 23 removing (as advised) lines cg and below, I get error messages. I would greatly appreciate a more detailed explanation of the Ex 7.21 and advice on how I can correct my commands given my original goal as described in Aug 20. Thank you! 


Example 7.21 shows how to use the KNOWNCLASS option. It has known classes and unknown classes. You have only known classes so you have only one variable listed using the CLASSES option. This variable is cg. So you should not refer to c or classes for c. Your example does not have c. 

Elina Dale posted on Monday, September 02, 2013  9:42 am



Thank you, Dr. Muthen, for a prompt response and guidance! I specified the following command but got an error message also shown below: NAMES = clus g i1i6 ; USEVARIABLE = i1 i2 i3 i4 i5 i6 ; CATEGORICAL = i1 i2 i3 i4 i5 i6 (*) ; KNOWNCLASS = cg (g=1 g=2) ; CLUSTER = clus; Analysis: TYPE = MIXTURE ; TYPE = COMPLEX ; Model: %OVERALL% f1 BY i1 i2 i3; f2 BY i4 i5 i6; Model cg: %cg#1% [i1$1 i2$1 i3$1 i4$1 i5$1 i6$1]; [i1$2 i2$2 i3$2 i4$2 i5$2 i6$2]; [i1$3 i2$3 i3$3 i4$3 i5$3 i6$3]; %cg#2% [i1$1 i2$1 i3$1 i4$1 i5$1 i6$1]; [i1$2 i2$2 i3$2 i4$2 i5$2 i6$2]; [i1$3 i2$3 i3$3 i4$3 i5$3 i6$3]; *** ERROR in VARIABLE command CLASSES option not specified. Mixture analysis requires one categorical latent variable. So, should I not specify CLASSES, i.e. omit the lines CLASSES and MODEL c: when I follow ex. 7.21.? If so, why am I getting an error message? Thank you! 


You need the CLASSES option to define cg. Add CLASSES = cg (2); 

Elina Dale posted on Monday, September 02, 2013  11:08 pm



I did it: CLASSES = cg(2) ; KNOWNCLASS = cg (g=1 g=2) ; I got this error message: *** ERROR in MODEL command Unknown class model name CG specified in Cspecific MODEL command. I am at a loss. Thank you! 


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

Back to top 