Factor Scoring Coefficients
Message/Author
 Charles Cleland posted on Monday, January 31, 2000 - 11:10 am
Some EFA programs such as BMDP4M and SAS Proc FACTOR return a variables by factors scoring coefficient matrix. I would like to be able to get that matrix for a promax rotated EFA in MPLUS with the WLSMV estimator. Is there any way to get that matrix?
 Bengt O. Muthen posted on Tuesday, February 01, 2000 - 9:35 am
The WLSMV estimator is used with categorical outcomes. Unlike continuous outcomes, with categorical outcomes a factor score coefficient matrix is not used to produce the factor scores. Instead, factor scores for each person have to be estimated by an iterative technique (see Appendix 11 in the Mplus User's Guide).
 Anonymous posted on Wednesday, November 29, 2000 - 9:41 am
I'm trying to develop a factor that contains the same items at time 1 and time 2. I'd like to know that the relationships between my factor and items are similar (not significantly different) across time. How do I test this?
 bmuthen posted on Wednesday, November 29, 2000 - 10:10 am
You should test that the loadings are invariant over time while allowing factor variances to vary across time. You get the chi-square difference between the model with invariance and the model without invariance. With categorical outcomes, the analysis is a bit more involved. Here you need to hold both loadings and threshold invariant over time, letting factor means and variances vary across time, and letting scale factors vary across time (see the Muthen 1996 paper on growth modeling with binary responses as listed on this web site).
 Anonymous posted on Saturday, July 20, 2002 - 7:36 pm
As a followup to the message of Charles Cleland from Jan 31, 2000 concerning the estimation of factor scores using the stated iterative technique:

I understand that a factor score matrix is not possible with categorical data. However, is there a facility in Version 2.1 to output the factor scores for each individual into a dataset using the stated iterative technique, for an EFA model with ordinal (3 level) indicators? Or with binary indicators as mentioned in Appendix 11 of the manual?

Many thanks.
 Linda K. Muthen posted on Sunday, July 21, 2002 - 6:34 am
Saving factor scores is not an option for EFA. It is an option for CFA for all variable types - continuous, binary, polytomous, and combinations of continuous, binary, and polytomous. If you want an EFA model, you can specify an EFA model in a CFA framework and get factor scores for that.
 Anonymous posted on Thursday, July 25, 2002 - 6:27 am
In doing an EFA in a CFA framework, is there any general advice about *which* parameters to be constrained to enable identifiability? For example suppose there are 20 categorical indicators and 3 factors, with all 20 indicators loading on each factor. I recall reading that there needs to be k^2 constraints for a k-factor "EFA in CFA" model, so 9 constraints here. One can fix the 3 latent variable variances at 1, but is there a general rule about how to determine which 6 paths to constrain to enable identifiability?
 Linda K. Muthen posted on Thursday, July 25, 2002 - 9:53 am
I don't know of any reference for this, but we recommend selecting one item per factor as an anchor item. Anchor items have high loadings on their factor and low loadings on the other factors. You can fix the loadings of the anchor items for the factors for which they have low loadings to zero. This will give you the remaining six constraints that you need.
 Anonymous posted on Wednesday, December 04, 2002 - 12:10 pm
Is it possible to include an identifiaction variable(IDS) with save fscore coommand in mplus version 2?
thanks
 Linda K. Muthen posted on Wednesday, December 04, 2002 - 12:34 pm
Yes, see page 57 of the Mplus User's Guide.
 Yuhchang Hang posted on Thursday, August 07, 2003 - 3:00 pm
I am a new user on this program, we purchase this program for the purpose of generating factor scores (EFA model) for binary data in our research project. We were disopinnanted that the manual does not give enough information on this matter.

Can anayone help me on having a sample program in doing EFA in CFA for the purpose of deriving the factor score?

Thanks
 Linda K. Muthen posted on Thursday, August 07, 2003 - 3:09 pm
If you send me a fax number at support@statmodel.com, I can fax you the pages about EFA in a CFA framework from our course.
 Benjamin Shao posted on Thursday, August 14, 2003 - 12:35 pm
To follow on Yuhchang Hwang's question above, thanks for your fax. But after incorporating the additional constraints into the CFA models, we still can't obtain the factor scores. The results are either "cannot converge" or "The correlation matrix is not positively definite". We made all attempts, but to no avail. Is there any other suggestion? Thanks!
 Linda K. Muthen posted on Saturday, August 16, 2003 - 4:23 pm
Why don't you send the output and data. I will take a look at it.
 Anonymous posted on Thursday, May 27, 2004 - 2:56 am
I have a similar question when doing EFA at CFA framework. From the EFA 4 factor testing, I define 4 Achors for the 4 factors and put in total 4*3= 12 constraints (zero loadings of each achors) and 4 constraints as factor variance to be fixed equal to one, but I still get the following error message:

NO CONVERGENCE. NUMBER OF ITERATIONS EXCEEDED.
FACTOR SCORES WILL NOT BE COMPUTED DUE TO NONCONVERGENCE OR
NONIDENTIFIED MODEL.

I don't understand why this model is nonidentified because I put in fact 4 square = 16 constraints already. And what's the problem of non convergence?

my second question: when doing 2-level EFA of CFA, should I seperate the two EFA models or I can do pooling model without consider the nest effect?

Thanks a lot!
 bmuthen posted on Thursday, May 27, 2004 - 11:09 am
The error message also says NO CONVERGENCE, which means that factor scores will not be computed. The nonconvergence of the EFA within CFA may be due to not giving enough key starting values for the loadings.

I would do Step 1 EFA, Step 3 EFA (pooled-within), as well as EFA on the between matrix.
 Shuang Wang posted on Monday, April 25, 2005 - 5:35 pm
I was trying to fit an EFA within CFA, and got similar error message.

NO CONVERGENCE. NUMBER OF ITERATIONS EXCEEDED.

Since this is EFA in CFA for categirical outcome, I used:
ANALYSIS: Type = general ;
estimator = wlsmv ;

May I ask where is the problem here?

Thanks a lot!
Shuang
 Linda K. Muthen posted on Monday, April 25, 2005 - 5:39 pm
It may be that you need starting values for some of the loadings as mentioned above.
 Shuang Wang posted on Tuesday, April 26, 2005 - 6:51 am
Hi Linda,

Thanks for the promptly reply. I did add starting values as in the examples from the Mplus short course. Here is what I did:

ANALYSIS: Type = general ;
estimator = wlsmv ;

MODEL:

weak BY Q1 Q2 Q3 Q4 Q5 Q8 Q9 Q10 Q12 Q13 Q15 Q16 Q17 Q18* Q17@0 Q8@0 ;
axiety BY Q1 Q2 Q3 Q4 Q5 Q8 Q9 Q10 Q12 Q13 Q15 Q16 Q17 Q18* Q2@0 Q8@0 ;
slowness BY Q1 Q2 Q3 Q4 Q5 Q8 Q9 Q10 Q12 Q13 Q15 Q16 Q17 Q18* Q2@0 Q17@0 ;

weak axiety slowness@1 ;
weak WITH axiety ;
weak WITH slowness ;
axiety WITH slowness ;

OUTPUT:
sampstat standardized ;

Where the Q2, Q17, and Q8 are the anchor items from the three factors.

Is there anything wrong in the syntex?

Thanks!
Shuang
 Linda K. Muthen posted on Tuesday, April 26, 2005 - 7:42 am
The following statement only fixes the variance of slowness to one.

weak axiety slowness@1 ;

Change it to

weak-slowness@1 ;
 Shuang Wang posted on Tuesday, April 26, 2005 - 7:56 am
Linda,
That is quick!

I also tried weak-slowness@1 before (and just tried it again), I still got the same error message.
NO CONVERGENCE. NUMBER OF ITERATIONS EXCEEDED.

Shuang
 Linda K. Muthen posted on Tuesday, April 26, 2005 - 8:23 am

weak BY Q1*.8 Q2*8-.5 Q3 Q4 Q5 Q8 Q9 Q10 Q12 Q13 Q15 Q16 Q17 Q18* Q17@0 Q8@0 ;

Starting values are given using the * followed by a number.
 Shuang Wang posted on Tuesday, April 26, 2005 - 8:48 am
Linda,
Thanks a lot!

Somehow I still got the same error message after I specified starting values for each items. For example, I did:
weak BY Q1*.8 Q2*.8 Q3 Q4 Q5 Q8 Q9 Q10 Q12 Q13 Q15 Q16 Q17 Q18*
Q17@0 Q8@0 ;

Shuang
 Linda K. Muthen posted on Tuesday, April 26, 2005 - 8:51 am
What you are showing is not giving starting values for each item. You need to give more than 2 starting values. And you need to use the factor loading values from your EFA not the ones I made up. You can choose the largest factor loadings to start.
 Shuang Wang posted on Tuesday, April 26, 2005 - 9:10 am
Linda,

The number I added after * are the factor loadings from EFA, I did not make them up, they just happen to be around 0.8. I only added starting values for these two because only these two items are loaded on factor one.

I did similarly for factor two and factor three, where I added factor loadings as starting values to those items that loaded on the factors.

Do I understand your suggestion incorrectly?

Thank you!
Shuang
 Linda K. Muthen posted on Tuesday, April 26, 2005 - 10:45 am
I think you understand correctly. You must be doing something else. If you send your input/output and data along with your license number to support@statodel.com, we can take a look at it. Please also send your EFA output.
 Tomason posted on Thursday, April 28, 2005 - 2:47 am
I am a new user of Mplus. I want to do EFA for binary and ordinal responses. My question is how can I get factor scores? Anyone who help me by sending a code?
 Linda K. Muthen posted on Thursday, April 28, 2005 - 6:13 am
Factor scores cannot be saved for EFA only for EFA in a CFA framework or CFA. See Example 12.15 in the Mplus User's Guide to see how to save factor scores. Example 4.2 shows EFA for categorical factor indicators.
 Tomason posted on Saturday, April 30, 2005 - 7:11 am
Linda, thanks a lot for your advise. What I did after your comment , first I did EFA and then CFA and saved the factor scores. Am I correct?
 bmuthen posted on Saturday, April 30, 2005 - 11:29 am
I think Linda referred to "EFA in a CFA framework" - see the "Day 1" handout from the Mplus Short Courses.
 Anonymous posted on Tuesday, May 03, 2005 - 6:38 am
I am a new user of mplus . When I did EFA I got the following message
*** ERROR
Unexpected end of file reached in data file.

What is wrong?
 Linda K. Muthen posted on Tuesday, May 03, 2005 - 7:32 am
You most likely have blanks in your data and are reading the data as free format. Because of this, Mplus is not finding enough information. If you cannot figure this out, you need to send your input, data, and license number to support@statmodel.com.
 Moris posted on Tuesday, May 03, 2005 - 10:02 am
I want to do reliability assessment using factor analysis. The measurements are taken at two time points and all the measurements are binary and polytomous. How can I do it? May you suggest me some reading further?
 bmuthen posted on Tuesday, May 03, 2005 - 3:04 pm
I am not sure if you want to know the reliability of an item, or how well a factor is measured, or using the factor model to find out the reliability of the sum of the items.

In the first case, you can think of item reliability as the variance proportion of y* that is explained by a factor, where y* is an underlying continuous latent response variable. You get that from the Mplus output when requesting a standardized solution.

In the second case, you want to find the precision with which a factor score is estimated - you find writings on this in the IRT literature under information functions.

In the third case, you need to do some statistical calculations.
 Moris posted on Tuesday, May 03, 2005 - 10:37 pm
Thx Bmuthen. My idea is to see whether an items are reliable when they measured at two time points from same persons.It's like test-retest method.If you have further suggestion,that is highly appreciated.
 Julia Grieser posted on Tuesday, September 25, 2007 - 7:10 am
I have a question regarding the EFA output.
If I run an EFA I get as output:
-estimated residual variances
-Factor structure

Is the Factor structure the same as the unrotated loadings and if not what does it tell me?

Thank you.
 Bengt O. Muthen posted on Tuesday, September 25, 2007 - 8:04 am
Factor structure gives the correlations between the factors and the observed variables.
 Tait Medina posted on Monday, April 28, 2008 - 11:55 am
Dear Professors.

I am hoping you might tell me why saving factor scores is not an option for EFA? Is this something you do not recommend doing?

Thank you,

Tait
 Linda K. Muthen posted on Monday, April 28, 2008 - 2:30 pm
We don't do this because when someone extracts, for example, 1 through 8 factors, it would result in a lot of factor scores. There will be a new feature in Version 5.1 that will allow factor scores for an EFA model.
 Tait Medina posted on Friday, May 02, 2008 - 6:06 am
Thank you for your response and I am looking forward to the next version with this new feature. In the meantime I plan to use EFA within a CFA framework to output factor scores (as suggested in a prior post). Would you expect factors scores from an EFA within a CFA framework to be fairly similar to factor scores from an EFA?

Thank you.
 Linda K. Muthen posted on Friday, May 02, 2008 - 9:04 am
Yes. Version 5.1 will probably be available on Monday unless some disaster strikes.
 Tait Medina posted on Thursday, May 15, 2008 - 12:25 pm
I am having some difficulty saving factor scores following an EFA using version 5.1. I must be doing something wrong as all of the factor scores in the generated text file are equal to 0.

I am using this model & savedata command:

Model:
f1-f2 BY Rimpborn-Rimpfeel(*1);

Savedata:
file is impfs.txt;
save=fscores;
 Linda K. Muthen posted on Thursday, May 15, 2008 - 3:00 pm
This problem was discovered shortly after the release of Version 5.1. If you send your input, data, and license number to support@statmodel.com, I will run your analysis and send you the results.
 Elaine Zanutto posted on Thursday, May 22, 2008 - 7:23 am
I am new to Mplus, but have used Proc Calis in SAS. I see from the above discussion on factor scoring coefficients that these coefficients are not available when using WLSMV, but what about when using ML with a continuous outcome. How would I get the factor scoring coefficients?
 Bengt O. Muthen posted on Thursday, May 22, 2008 - 5:33 pm
If this is for EFA, perhaps the version you are using only reports the scoring coefficients for CFA.
 Elaine Zanutto posted on Thursday, May 29, 2008 - 2:07 pm
Thanks for the quick reply. I'm using Mplus 5.1. How would I get the scoring coefficients for CFA? (the coefficients that let me predict the latent score from the observed items).
 Linda K. Muthen posted on Thursday, May 29, 2008 - 2:36 pm
We don't give them currently for categorical outcomes. We will add this in the next update.
 Elaine Zanutto posted on Friday, May 30, 2008 - 7:00 am
Thanks again! How would I get the scoring coefficients for continuous outcomes?
 Linda K. Muthen posted on Friday, May 30, 2008 - 8:01 am
See formula 226 of Technical Appendix 11 which is on the website.
 abdul jalil posted on Tuesday, July 29, 2008 - 12:06 am
Hi,
i want to know that to derive factor scors that can further be used for multiple regression analysis, factor analysis will be applied only to those variables that are independent or dependent variables are also included to derive principal factors.
i need complete logical reason for an accurate stretegy
 Bengt O. Muthen posted on Tuesday, July 29, 2008 - 9:33 am
Factor scores will be estimated based on all observed variables that are used in the model. They all contribute information about the factors.
 Tait Medina posted on Wednesday, January 21, 2009 - 2:55 pm
When saving factor scores, is there a way to change the default for missing from an asterisk (*) to a period (.)?
 Linda K. Muthen posted on Wednesday, January 21, 2009 - 4:30 pm
No. But you could do a global replace on the dataset outside of Mplus.
 Michael G Wheaton posted on Friday, May 22, 2009 - 1:20 pm
Dear Drs. Muthen,

I am running an EFA with categorical outcome variables and trying to save factor scores. On 4/28/2008 L. K. Muthen wrote that version 5.1 would allow for saving factor scores in an EFA model but I am running version 5.2 and still got the error message
*** WARNING in SAVEDATA command
Factor scores cannot be computed for analysis types BASIC or EFA. Request to save FSCORES is ignored.

Did I do something wrong or is this not possible without the EFA in a confirmatory framework mentioned above?

Thank you
 Linda K. Muthen posted on Friday, May 22, 2009 - 2:26 pm
If I wrote that, I was wrong. We do however give factors scores when EFA is run using our new ESEM model. See the Version 5.1 Examples and Language addenda on the website with the user's guide.
 Tait Medina posted on Saturday, May 23, 2009 - 7:07 am
Hi Michael. A couple of months ago, Linda Muthen helped me to extract factor scores for an efa. Here is the code she used:

Model:
f1-f2 BY x1-x7(*1);

Savedata:
file is example.txt;
save=fscores;

BTW-I am still running version 5.1
 Linda K. Muthen posted on Saturday, May 23, 2009 - 1:03 pm
Yes, this is our new ESEM which started in Version 5.1.
 Michael G Wheaton posted on Tuesday, May 26, 2009 - 11:50 am
The code worked perfectly, thanks so much to both of you!
 Holly Burke posted on Friday, June 22, 2012 - 5:02 pm
I successfully conducted an EFA and had no convergence problems. However, when I specified one of the factor solutions from the EFA (which had no problems in the EFA and was a good fit) in an Exploratory SEM model to get the factor scores I could not get the model to converge. The solution was non-positive definite. Do you have any idea what I may be doing wrong? Thank you.
 Bengt O. Muthen posted on Friday, June 22, 2012 - 8:28 pm
It sounds like the 1-factor model in the context of a larger SEM has a problem. That can happen if the correlations between the factor indicators and these other SEM variables are not specified correctly. Can't say anything more specific without knowing more.
 Holly Burke posted on Saturday, June 23, 2012 - 10:57 am
Hello Dr. Muthen,

Thank you for your response. I did not add any other variables to the ESEM. I only did the ESEM to get factor scores (since my variables are categorical) from the three factor solution I found acceptable from the EFA. Here is my EFA code:

ANALYSIS: TYPE = COMPLEX MISSING;
ROTATION = QUARTIMIN;

Here is my ESEM code (using the same 11 variables with the same data):

ANALYSIS: TYPE = COMPLEX MISSING;
ROTATION = QUARTIMIN;
MODEL:
F1-F3 BY
HusNoChi
PregProb
q507A
Q507B
Q507E
Q507F
Q507G
Q507H
Q507J
Q507K
Q507L (*1);

SAVEDATA: FILE = ESEM1OUT.TXT;
SAVE = FSCORES;

I am not sure what I am doing wrong, but the EFA 3-factor solution converges and has good fit, but the ESEM solution does not work (THE RESIDUAL COVARIANCE MATRIX (THETA) IS NOT POSITIVE DEFINITE...FACTOR SCORES WILL NOT BE COMPUTED DUE TO NONCONVERGENCE OR NONIDENTIFIED MODEL.)

 Linda K. Muthen posted on Saturday, June 23, 2012 - 1:13 pm
 ljc posted on Tuesday, December 10, 2013 - 9:02 am
Back in the 1990's when I first learned about EFA, I was taught to calculate factor scores by summing or averaging the variables that had high loadings on a factor.

Although, I think this is a still common practice today, I assume that this is a really bad practice. What are your thoughts on this? Thank you.
 Bengt O. Muthen posted on Tuesday, December 10, 2013 - 5:36 pm
Probably not a terribly bad approximation if you have many such items, but why not use the estimated factor scores instead? Or better still, do SEM or ESEM without first going for the factor scores.
 Michael Boudreaux posted on Friday, May 08, 2015 - 12:25 pm
Is it possible to request scoring coefficients in ESEM with categorical indicators? I am able to get factor scores using ESEM, but would like to get the scoring coefficients instead in order to apply them to another data set. Thank you.
 Linda K. Muthen posted on Friday, May 08, 2015 - 4:50 pm
Factor score coefficients are available for only continuous indicators because factor scores are computed iteratively for categorical indicators. They can't be computed by hand.
 Michael Boudreaux posted on Saturday, May 09, 2015 - 12:07 pm
Thank you. Instead, I will get the scoring coefficients from an EMLFA. Could you please tell me where I might find information for applying scoring coefficients to raw data in Mplus? Thanks again.
 Linda K. Muthen posted on Sunday, May 10, 2015 - 6:39 am
Technical Appendix 11 on the website shows how Mplus estimates factor scores. This cannot be done by hand for categorical indicators. It is an iterative procedure.
 Michael Boudreaux posted on Sunday, May 10, 2015 - 7:16 pm
Sorry, I think I wasn't clear in my previous post. I am hoping to get scoring coefficients for an EFA using ML estimation on continuous variables, and then apply these scoring coefficients to raw data. My question is: where might I find information for applying scoring coefficients to raw data in Mplus? I do not want the factor scores because I will be applying the scoring coefficients to a separate data set. Thanks again.
 Bengt O. Muthen posted on Sunday, May 10, 2015 - 8:12 pm
Page 731 of the UG describes the FSCOEFFICIENT option for getting factor score coefficients for continuous outcomes.
 Shraddha Kashyap posted on Monday, January 11, 2016 - 7:49 pm
Hi,

I tried running an EFA (5 categorical variables EB1-EB5) and I got this message in the output:

WARNING: THE BIVARIATE TABLE OF EB5 AND EB1 HAS AN EMPTY CELL.

NO CONVERGENCE. NUMBER OF ITERATIONS EXCEEDED.
PROBLEM OCCURRED IN EXPLORATORY FACTOR ANALYSIS WITH 1 FACTOR(S).

NO CONVERGENCE. NUMBER OF ITERATIONS EXCEEDED.
PROBLEM OCCURRED IN EXPLORATORY FACTOR ANALYSIS WITH 2 FACTOR (S)

Any suggestions on how to tackle this issue?

Thanks!
 Linda K. Muthen posted on Tuesday, January 12, 2016 - 8:14 am
 M.F. posted on Wednesday, June 08, 2016 - 1:52 am
Hello,

is there any possibility to create factor score coefficients for models with categorical variables?
I need them to create a weighted sum score and now I have no idea to weight except with the factor loadings. But this don't seeme to be a fine procedure in the literature.
 Bengt O. Muthen posted on Wednesday, June 08, 2016 - 10:48 am
No, the scores are not obtained in that simple fashion with categorical variables but instead by an iterative technique.
 Marco Pannacci posted on Wednesday, April 12, 2017 - 12:06 am
Dear MPLUS support,
I am working on a two levels CFA.
The structure is this (MPLUS annotation):

lung1 by X1 X2 X3 X4;
lung2 by X5 X6 X4;
lung3 by X1 X7 X8 X9;

My objective is to obtain a SAD score for new observations that I will have in the future, by using the previous model. Two questions on it:
1) In the previous model, I have 42 missing patterns for the FACTOR SCORE COEFFICIENTS. Is there an easy way to obtain from MPLUS a SAD score based on this model for new observations? Since manually is very difficult with 42 missing patterns.

2) In general, is it possible that the SAD score derived with the FSCoefficients is not in Monotonic relationship with the SAD score that MPLUS save (I mean the one I obtain with SAVEDATA: FILE=Fscores.dat;SAVE=FSCORES ;)
?

Many Thanks,
Marco Pannacci
 Bengt O. Muthen posted on Wednesday, April 12, 2017 - 7:40 am
1) To get the SAD score for new observations you can fix all parameters at their estimated values and just ask for factor scores for these new observations. You do this easily using SVALUES in the first run and then change * to @ to fix the values for the second run.

2) They should agree if you do it correctly.