Message/Author 

Arpana posted on Tuesday, May 23, 2006  10:54 am



Dear Dr. Muthen, I want to expand my MIMIC model to a 2group CFA. I found some DIF and want to examine loadings and thresholds using the 2group model. However, I'm using NESARC data and need to use MLR for the complex survey design  what is the optimal way to do this as "Grouping is" doesn't work with Algorithm=integration and Knownclass requires a class (and not factor structure)? Thanks! 


You can use KNOWNCLASS in the same way as you use GROUPING. The classes represent the groups and you can test the equality of factor loadings and intercepts as you would do with GROUPING. Maybe I am missing the issue. 

Arpana posted on Friday, May 26, 2006  2:25 pm



Thanks! It seems I had a colinear variable that was throwing off the knownclass statement. It seems to be working now. 


I am having a similar problem to the comment above. I am using NESARC data (complex survey design) and so I am using weight stratification and cluster variables and the MLR estimator. I am attempting to conduct a multiple group CFA. I am specifying type = complex missing and using the grouping variable. When I do this, I get an error message saying: ‘*** ERROR in Analysis command ALGORITHM = INTEGRATION is not available for multiple group analysis. Try using the KNOWNCLASS option for TYPE = MIXTURE‘. Also, in the above comment, Linda suggested using the knownclass variable. However, I do know if it is right to specify type = mixture when I am not using the class variable (i.e., I do not want latent classes). Any ideas on how I might fix this problem? Thank you. 


When you use the KNOWNCLASS option, class membership is based on an observed variable. It is the same as using the GROUPING option. 


Thank you for your response. I am conducting a multiple group CFA model not a LCA model. I have observed groups of individuals. I do not want to create latent classes. Is there any other way to conduct a multiple group analysis using the MLR estimator? Thank you 


Yes, by using the KNOWNCLASS option. You cannot do what you want without going through the mixture track. KNOWNCLASS and multple group analysis are the same. The classes are defined using an observed variable. 


Thank you Linda. I understand now. I was a little confused. Thanks for clearing things up for me. 


My question pertains to using the stratification command to correct for the complex sampling design when doing twopart semicontinuous latent growth curve analysis for multiple groups. I get an error that says stratification can be used with type=complex only. When I change type=mixture to type=complex, I get an error that says "knownclass" can be used with type=mixture only. When I try to use "Grouping" instead of "knownclass" I get the following error: "ALGORITHM = INTEGRATION is not available for multiple group analysis. Try using the KNOWNCLASS option for TYPE = MIXTURE." When I try to take 'algorithm = integration out, it says: "Use the ESTIMATOR option in the ANALYSIS command to change the estimator to ML, MLF or MLR." So it seems I can't use the stratification command when using the grouping command or the knownclass command. Is this correct? Any suggestions on how to use the stratification command while doing multiple group analysis. 


Have you tried TYPE= MIXTURE COMPLEX with KNOWNCLASS? 

Daniel Arad posted on Tuesday, October 06, 2009  2:05 pm



Dear Dr. Muthen, My model has MIMIC configuration with a continuous latent variable that is a function of both categorical and continuous variables (observables). Some of these varibles indicate class membership (they are dummies). When I try GROUPING I get the message described above. When I try KNOWNCLASS I get: *** ERROR in VARIABLE command CLASSES option not specified. Mixture analysis requires one categorical latent variable. My interest is not in a latent class but in the relation between the continuous latent factor and the observables. What would be the simplest way to define this in Mplus? 


It sounds like you are using maximum likelihood estimation with categorical outcomes. The GROUPING option is not available in this case. Instead you use the KNOWNCLASS option with TYPE=MIXTURE. When the only class variable is for known classes, this is identical to multiple group analysis. You need to use the CLASSES and KNOWNCLASS option to define the observed groups. See the user's guide for further information. 

Daniel Arad posted on Wednesday, October 07, 2009  2:40 pm



Thanks, I used both, CLASSES and KNOWNCLASS, with ALGORITHM = INTEGRATION like explaind in Example 7.21 (p.166 in the manual) and it worked! The results are somewhat different from what I got using previous specifications: i.e. MIMIC with continuous latent var and covariates, some of the covariates being dummies indicating group membership. What is the suggested method? 


With MIMIC, only differences in factor means and outcomes intercepts can be examined. With multiple group analysis, in addition to factor means and outcome intercepts, differences in factor loadings, outcome residual variances, factor variances, and factor covariances can be examined. See the Topic 1 course handout and the Topic 1 course video for a full discussion. 


Hello, I am trying to use ANALYSIS: Type=MIXTURE to find latent class assignments in my longitudinal data. I keep receiving this error: ***ERROR in ANALYSIS command TYPE = MIXTURE is not available for multiple group analysis. Here is the code I submitted: DATA: FILE IS "C:\lgmm.dat"; VARIABLE: NAMES ARE studyid sex rceth3 ptsd1ptsd3; USEVARIABLES ARE ptsd1 ptsd2 ptsd3 ; MISSING ARE ALL (99.00); CLASSES = c(1); ANALYSIS: TYPE = MIXTURE; ESTIMATOR IS MLR; ITERATIONS = 1000; CONVERGENCE = 0.00005; COVERAGE = 0.10; STARTS = 200 20; MODEL: %OVERALL% I S  ptsd1@0 ptsd2@1 ptsd3@2; I@0; S@0; Do you know what's going wrong? Do you have any suggestions? Thanks in advance! 


With mixture, you need to use the KNOWNCLASS option instead of the GROUPING option. See Example 8.8 in the Mplus User's Guide. 

mpduser1 posted on Tuesday, July 27, 2010  8:50 am



I am having some difficulty running multigroup models in Mplus using the KNOWNCLASS option. Basically I want to see if there are differences in Y across classes cg (before proceeding to advanced modeling, etc.). My setup is based on example 7.21 in the Mplus UG. Is there something wrong with the way I've set this up? . . . USEVARIABLES ARE Y; CLASSES = cg(2); KNOWNCLASS = cg (w2Treat = 0 w2Treat = 1); ANALYSIS: TYPE=MIXTURE; MODEL: %OVERALL% Y ; MODEL cg: %cg#1% Y; %cg#2% Y; . . . The error I'm getting is: *** ERROR in MODEL command Unknown class model name CG specified in Cspecific MODEL command. 

mpduser1 posted on Tuesday, July 27, 2010  11:36 am



Thank you. If this model was reparameterized such that Y was specified as having a negative binomial distribution, which of the Mplus parameter arrays would contain the dispersion parameter? Would it be the NU(P) array? 


I believe the dispersion parameters should be in psi. 

mpduser1 posted on Tuesday, July 27, 2010  1:46 pm



A portion of my output specifies "PARAMETER SPECIFICATION FOR THE CENSORED/NOMINAL/COUNT MODEL PART" and contains, for each of the two classes in my model: NU(P) KAPPA(P) THETA(C). None of these appears to be explicitly noted in the v.6 Mplus UG (i.e., pp. 660663). The KAPPA(P) appear to be regression coefficients. If I understand the Mplus conventions correctly, NU(P) pertains to the intercept of the continuous dependent variable, which in my case is distributed as NegBin (and which is estimated and returned via the Mplus output). So, by elimination, the THETA, which appears to usually contain the variances/covariances of the observed dependent variable (although none are estimated for the NegBin Y) must pertain to the dispersion parameter (and the "(C)" must designate the fact that it is classspecific, which is exactly how I attempted to set up my model). Can you confirm that this is indeed the case? 


I would think this is true that the dispersion parameter is in Theta given that it was in Psi in the simpler example that I ran. The matrices used for various parameters are a convenience for model estimation. Which matrix a parameter is in does not change what the parameter estimate is. 

mpduser1 posted on Wednesday, July 28, 2010  6:20 am



Thanks. In my situation, I'm concerned about correctly identifying the corresponding parameter matrix since I'm interested in extracting crossgroup parameter covariances. 


The dispersion parameters will be in Theta or Psi depending on the model. 


Do you have an example of a Multiple Group CFA Mixture Model that combines Example 7.17 with the idea in 7.21? Thank you. 


No. Just add KNOWNCLASS to 7.17. 

J Owens posted on Thursday, January 03, 2013  4:37 pm



Dear Dr. Muthen: I am trying to conduct a multiple group path analysis (no latent variable) with a categorical endogenous variable. When I use the CLASSES and KNOWNCLASS options with TYPE=MIXTURE (see below), I receive the following error message: *** ERROR in VARIABLE command Mixture analysis requires one categorical latent variable. Is there a way to conduct the multiple group analysis with path analysis (no latent variables)? Many thanks! VARIABLE: CLASSES=race (1=white 2=asian 3=black 4=hispanic); KNOWNCLASS=race (1=white 2=asian 3=black 4=hispanic); ANALYSIS: TYPE=MIXTURE; 


You should say CLASSES = race(4); etc 

J Owens posted on Thursday, January 03, 2013  5:12 pm



Thank you! I'm sorry to clarify again, but I'm now getting the following error and I'm sure it's just something with my code, but I'm not clear on how to specify the classes (my code is below): *** ERROR in VARIABLE command Class membership must be specified using the same variable. Invalid variable used in KNOWNCLASS specification: ASIAN Thank you! VARIABLE: CLASSES=race (1=white 2=asian 3=black 4=hispanic); KNOWNCLASS=race (1=white 2=asian 3=black 4=hispanic); ANALYSIS: TYPE=MIXTURE; MODEL: [specify model for whites] Model asian: [specify model for asians] Model black: [specify model for blacks] Model hispanic: [specify model for hispanics] 

J Owens posted on Thursday, January 03, 2013  5:13 pm



Note: I did change to CLASSES=race(4); 


See Example 7.21 where the CLASSES and KNOWNCLASS option are shown. Classes names a categorical latent variable. KNOWNCLASS assigns values of an observed variable to the classes. 

J Owens posted on Friday, January 04, 2013  10:11 pm



Dear Dr. Muthen: Thanks very much. I've set up the mixture model as you suggest immediately above, but I'm still receiving the following error message and am not sure how to proceed because I do in fact specify the %overall% model but for some reason it is ignored. Can you advise? *** ERROR The following MODEL statements are ignored: * Statements in Class %OVERALL% of MODEL: COLLGPA ON C#1 COLLGPA ON C#2 COLLGPA ON C#3 *** ERROR One or more MODEL statements were ignored. Note that ON statements must appear in the OVERALL class before they can be modified in classspecific models. Many thanks! 


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


I've fit a Bayes cfa to estimate approximate invariance in factor loadings using the mixture knownclass functions. I used model constraints/new to calculate differences between groups on item thresholds, which were freely estimated. My groups are grade 1 and grade 2 students and the data are correct/incorrectscored math items completed in common by both groups. Do I understand correctly that I can interpret the threshold groupdifference as a log odds (reference: Muthen et al., 2002, Biostatistics 3(4) on general growth mixture modeling)? If so, do I have to do anything special to get the scaling right, such as "Link IS Logit" or D(1.7)? Gratefully yours. 


With Bayes, only link=probit is available so thresholds do not translate to log odds. But you can translate the threshold difference into probability differences. 


Thank you for your prompt reply and correction to my understanding. I apologize for the basic followup, but what is the formula (or Mplus constraint) for translating the threshold difference into the difference in probability? 


I would have to see your specific model to be able to answer  please send output to Support along with your license number. 

Stephanie S posted on Saturday, July 22, 2017  10:40 am



Dr. Muthen, I am attempting to evaluate measurement invariance across 2 groups (gender) with ordered cateogorical indicators (items have 4 point likert scale). In one group, not all 4 points were observed. I attempted to use the (*) categorical command with the MLR estimator for type = mixture, but I get this error: ALGORITHM=INTEGRATION is not available for multiple group analysis. Try using the KNOWNCLASS option for TYPE=MIXTURE. I attempted to use the KNOWNCLASS option to define my groups, which required me to add a CLASSES option and that I needed at least one categorical latent variable. However, I don't have latent classes so I am unsure of how to use the CLASSES options. Here is what I have: VARIABLE: NAMES ARE ID gender grade bim1bim16; USEVARIABLES ARE gender bim1bim16; CATEGORICAL ARE bim1bim16 (*); KNOWNCLASS = gender (0 = boys 1 = girls); MISSING ARE ALL (99); ANALYSIS: TYPE = MIXTURE; ESTIMATOR IS MLR; ITERATIONS = 1000; CONVERGENCE = 0.00005; PARAMETERIZATION=THETA; Thank you for your help. 


See UG ex 5.33. The Classes = option is still needed. 

Stephanie S posted on Thursday, July 27, 2017  6:20 am



Dr. Muthen, Thank you for your help. I have added the Classes and Knownclass options; however, it is now ignoring my model statements. I think it is because I have included the categorical labels for the indicators. The model runs if I have the indicators as continuous. But they are ordered categorical, so I do not trust the output. I omitted the model statements below to shorten this message, but you can see the error messages. Thank you for your help! VARIABLE: NAMES ARE ID gender grade bim1bim16; USEVARIABLES ARE gender bim1bim16; CLASSES = g (2); KNOWNCLASS = g(gender = 0 1); MISSING ARE ALL (99); ANALYSIS: TYPE = MIXTURE; ESTIMATOR IS MLR; ALGORITHM=INTEGRATION; *** ERROR The following MODEL statements are ignored: * Statements in the OVERALL class: [ BIM1$3 ] [ BIM2$2 ] [ BIM2$3 ] [ BIM3$2 ] [ BIM3$3 ] *** ERROR One or more MODEL statements were ignored. These statements may be incorrect. 


You need to use the CATEGORICAL option to specify that the variables are categorical. 

Anna Brown posted on Thursday, April 04, 2019  7:57 am



Dear Dr Muthen, I am estimating quite a simple factor model with continuous indicators across 5 groups, assuming full measurement invariance. Is there any reason why the loglikelihood, AIC and BIC are substantially different (better) when estimating this as a multiplegroup model (via GROUPING) compared to a mixture model (via KNOWNCLASS)? This worries me. I am confident that the parameter constraints are set up correctly, and the estimated parameters are very close but not identical. The KNOWNCLASS model has 4 more parameters  class intercepts. Is this normal, or am I doing something wrong? Many thanks, Anna Brown 


You can recalculate BIC using 4 fewer parameters. 

Anna Brown posted on Friday, April 05, 2019  3:36 am



Thank you Bengt! 

Back to top 