Message/Author 


I am doing a multigroup analysis with 47 groups, one latent variable and three indicators, incorporating a meanstructure. I want to test measurement invariance according to Steenkamp/Baumgartner 1998 (“Assessing Measurement Invariance in CrossNational Consumer Research”). They recommend to start with an omnibus test of the equality of the Covariance matrices and mean vectors, both jointly and seperately. I am wondering how to perform the tests. I tried to find a reference concerning this topic but I couldn’t find any detailed despription of the procedure. Could you please tell me how I can do these tests in MPlus. Thank you for your help. 

bmuthen posted on Tuesday, August 03, 2004  9:08 am



For equality across groups of the covariance matrix you say in the Model command: y1 (1); y2 (2); y3 (3); y1 with y2 (4); etc for all 6 covariance elements. To add mean equalities across groups, also say [y1] (5); [y2] (6); [y3] (7); adding in the Analysis command type = meanstructure; 


Thank you for your reply! After conducting the test of equivalence of covariance matrices several further questions arose: 1. What is the theory behind the test statistic? E.g. how is the test statistic calculated? Is it based on the Box test (Box 1950)? Is estimation by ML correct? 2. Steenkamp/Baumgartner 1998 mention problems in the calculation of the baseline model when meanstructures are incorporated. They recommend not using incremental fit indices for testing the hypothesis of equal means and covariances across groups. Does this limitation also hold for the calculation of the TLI/CFI in MPlus? Can I use the TLI/CFI in evaluating model fit in an analysis with a meanstructure? 3. How can I test configural invariance? Is it correct to allow for all parameters to vary across groups? How do I achieve identification in this case? Thank you in advance for your helpful comments. 

bmuthen posted on Sunday, August 08, 2004  11:44 am



1. The test statistic is the standard likelihoodratio chisquare obtained as 2 times the logL difference, not the Box test. 2. I am not familiar with the SB critique. It seems to me that TLI/CFI would be fine also in this case. 3. Configural invariance is where the pattern of fixed, zero loadings is the same across groups. For each group you use the singlegroup rules for identification. 

Anonymous posted on Monday, February 28, 2005  2:25 pm



I am testing invariance of firstorder factor loadings with a secondorder factor model (NK=1, NE=3, NI=12) between two gender groups (n1=306, n2=122) using DWLS with polychoric correlation matrices. LISREL gives a warning: PSI is not positive definite. I would like to know any factors that can lead to this problem and what can I do about it? 


This message means that either you have a negative residual variance, a correlation greater than one, or some linear dependency among a set of your variables. You most likely need to change your model. 


Regarding the first post above about testing invariance of covariance matrices: If one runs syntax like that suggested above, is the chisquare produced the actual test statistic or do you have to construct another syntax file in which the covariance pattern is allowed to vary across groups (i.e. something like what you do for a chisquare difftest)? And if you only need that chisquare, does significance indicate that there are differences in the covariance matrices across the groups included? Thanks in advance. 


If you want to test the equality of covariance matrices across groups, you need two chisquare statistics to do a difference test  one from the model without equalities and one from the model with equalities. 


Thanks! How does one write the syntax for the one without equalities? 


y1; y2; y3; y1 with y3; 

jemila seid posted on Wednesday, December 03, 2008  11:54 am



Hi Dr. Muthen, I am doing growth curve modeling for 4 continuous dependent variables. I have 8x8 covariance matrix for the 8 latent variables (intercepts and slopes) a while ago I asked if it is possible to test if the covariances/correlations between these latent variables are significantly different from zero and you suggested use of Model constraint. I went through the manual but it is not still clear to me. How do I define the correlations/covariances as constraints? How do I test if these covariances are significantly different from zero. I would very much appreciate if you could send me the Mplus code for doing this. Thanks again Best regards Jemila 


In the Model command you say for example i (p1); s (p2); i with s (p3); and then in Model constraint you define the new parameter corr (see UG ex 5.20): new(corr); corr = p3/(sqrt(p1)*sqrt(p2)); And in Model test you say: corr = 0; Alternatively, you can run a second model with constraints in the Model command like i with s@0; and get a chi2 test by the loglikelihood difference approach. 

jemila seid posted on Friday, December 05, 2008  10:54 am



Thanks a lot Prof. Muthen. It was very helpful. Best regards, Jemila 


Hello, Like the posting above, I am also interested in an omnibus test of equality of the covariance matrix. I have a model with 3 latent variables and 8 indicators, which means I have 35 covariance elements, right? I wrote the syntax to constrain all 35 elements is this correct? I feel like I am constraining too much. Thanks! 


It's not clear what you want. Do you have two groups and do you want to test the equality of the covariance matrix of your indicators across groups? 


Hi Linda Sorry if I wasn't clear. Yes, that is right I have 2 groups and I want to test the equality of the covariance matrix of the indicators across the groups. Thank you 


In that case, you would have 36 variances and covariances. You would need to run the analysis with them unconstrained across groups and then constrained across groups and do a chisquare difference test. For this test, the factors would not be part of the model. 


Hi Linda Thanks for your reply. yes, I miscounted 36 is correct. I ran it with a constrained covariance matrix across groups and got a chi sq of 108, df=36. When I ran it unconstrained, the chi sq value was 0, df=0. This chi sq diff is of course significant. Is it normal to have a chi sq of 0 in an analysis like this? I am interpreting this as meaning that the covariance matrices differ by group. Thank you for your help! 


When you have no degrees of freedom, chisquare is zero. This interpretation is correct. 


Hi, New to Mplus, new to CFA. I am attempting to do a multigroup CFA. I have ten items, loading on 1 factor, and two groups (male and female). I believe I need to do an 'omnibus test of the equality of matrices of polychoric correltations and of the threshold structure of the items' across gender, to test whether there is any difference between the genders. I am not sure how to include this in my model code? And how do I get a test statistic that will indicate whether or not there are differences? 


We don't recommend doing this test but rather doing a set of tests of measurement invariance. See the Topic 2 course handout under multiple group analysis. To do what you want do difference testing of the following two models using the DIFFTEST option. MODEL: u1 WITH u2; MODEL: u1 WITH u2 (1); 


Hello, I believe I successfully ran a model testing a constrained and unconstrained covariance matrix to test differences in patterns between variables across waves. I concluded that the differences are minimal and would like to report the constrained model in my correlations table. It looks like the MODEL RESULTS show the constrained estimates, but the STANDARDIZED MODEL RESULTS go back to the unconstrained estimates. Is it possible to get the standardized constrained estimates to report in my correlations table? Thank you! 


Sorry, I just realized that this thread is in the CFA folder  I should add that I did not do a CFA, this was just for my basic correlations among the variables in my study. There are a 4 waves of data, so this was an effort to see if I could simplify my results section a little. 


The standardized values are not the same because they are standardized using different standard deviations. Each wave has its own standard deviations. 


I see, thank you very much! 

Back to top 