Message/Author 


Kline (2nd ed., 2005, pp. 179180, pp 221222) describes a problem in fitting an SEM or CFA model to a correlation matrix, citing Browne (1982, which I don't have). He uses STATISTICA for his example in Ch8, because it provides "constrained estimation" in its SEPATH module. I've run his Ch8 CFA model in Mplus V4.21 using ML, ULS, & GLS, and although some of the estimates to those in the book are close, there are meaningful differences, some dramatic. Just wondering if Mplus has some way to do "constrained estimation" when using only a correlation matrix, that will provide correct estimates (according to Kline and to Browne). I haven't found anything in an admittedly brief keyword search on site, or in the manual. Thanks. bac 


I don't have Kline's book, but Mplus is wellequipped to analyze a correlation matrix. Using WLS, which is an "ADF" estimator in Browne's sense, you can use the Mplus option for correlation matrix input. This will give you the correct standard errors and chisquare taking into account that sample correlations are analyzed. This follows the normal theory results presented in Jennrich (1970) and Steiger and Hakstian (1982). As Browne (1982) points out, analyzing a sample correlation matrix using ML is not always equivalent to the above, correct approach. Alternatively, a sample covariance matrix can be analyzed while the model is specified for the correlation structure. This is accomplished by using a diagonal matrix pre and postmultiplying the model correlation matrix, with diagonals capturing the standard deviations of the variables. 


See also the MATRIX option of the ANALYSIS command. 


You two are great! Thanks for your responses. I hope you will bear with me, but I've just tried for an hour to do what you suggest and I can't figure it out, and I can't find help in the manual. It seems like I've bumped into a Catch22. If I specify DATA: TYPE=CORR, I can only use ML or GLS for the continuous vars represented by my corr matrix. If I add the ANALYSIS: MATRIX=CORR, then I get the DOS window flashing on the screen with some errors I can't read, then no output. How do I specify the input data as a corr matrix and still be able to use WLS as the estimator?  bac 


Please send your input, data, output, and license number to support@statmodel.com. I need to see your whole setup. 

zhang, ying posted on Tuesday, February 17, 2009  6:58 pm



Hello, I tried to run a simple path Analysis using correlation matrix. I specified the ESTIMATOR as WLS. However, I got an error message as follows: *** ERROR in Analysis command Analysis with estimators ML, GLS, and ULS can use summary data. All other estimators require individual data. Does that mean with summary data I cannot use Mplus for this kind of analysis if I want to use the ADF estimator? Does Mplus allow a specification of the weight matrix (e.g., the asympototic covariance matrix of the parameter estimates)in the discrepancy functions? Thanks very much! 


No, Mplus does not allow the specification of a weight matrix. You need raw data for WLS. 

Antti Kärnä posted on Tuesday, January 10, 2012  8:01 am



Hello, I have only a correlation matrix (based on N = 910) to use as an input. Is there a way to do CFA with it? I have read that ML is not in this case appropriate, but would GLS or ULS provide correct results? Thanks in advance! 


In Mplus, the analysis of a correlation matrix is allowed only when all dependent variables are continuous. Only the WLS estimator can be used. 

Antti Kärnä posted on Tuesday, January 10, 2012  2:29 pm



A further question: I have specified DATA: FILE = data.txt; TYPE = CORRELATION; NOBSERVATIONS = 910; ANALYSIS: ESTIMATOR = WLS; But then I get the following warning: *** ERROR in ANALYSIS command Analysis with estimators ML, GLS, and ULS can use summary data. All other estimators require individual data. If using WLS can be used, how should it be specified? Thanks again! 


Please send the full output and your license number to support@statmodel.com. This is not a correct message. 


What is the purpose of specifying the number of observations when using the correlation matrix as input? Is it to weigh the correlation matrix? I'm asking because I'd like to do a metaanalytic SEM but I am getting the same error as the previous person. So I'm wondering whether the ML estimation weighs the correlation matrix similarly as the WLS method would. 


This simply specifies the size of the sample that generated the correlation matrix. There is no weighting involved. 


If I understand this online reference http://rt.uits.iu.edu/visualization/analytics/docs/cfadocs/cfa12.php correctly, Mplus does the whole procedure from polychoric correlation matrix estimation to weighted least squares automatically. To revisit the question the first user in this thread asked, is there a reference that directly compares the performance of constrained estimation with the weighted least squares approach? Thanks in advance! 


The online reference is correct. I think you will find the following overview paper on our website quite useful since it compares many methods and is more up to date than the 2005 reference: See Papers, Categorical Factor Analysis Barendse, M.T., Oort, F.J., & Timmerman, M.E. (2014). Using exploratory factor analysis to determine the dimensionality of discrete responses. Structural Equation Modeling: A Multidisciplinary Journal, 00: 115. 


Thank you, Dr. Muthen! I found the reference you provided and am currently comparing to other articles on the subject. 

Back to top 