I'm running CFA {lavaan}; function cfa() in R.

This article
https://psychology.okstate.edu/faculty/jgrice/personalitylab/Grice_FactorScores_PM_2001.pdf details a number of different methods for extracting factor scores from factor analysis, based on a linear combination of values from each variable.

I'm wondering if anyone knows which of these methods is used when running the predict() function on a model defined by the cfa() function in {lavaan} in R?

For exploratory factor analysis, using the fa() function in the {psych} package, you can choose which factor extraction method to use. I can't see an option to choose which method to use for cfa() in {lavaan}, nor can I find an explanation of which method is used.

Thanks very much for your help.

  • $\begingroup$ If you are only asking how the R code works, that would be off topic here (see our help center). You could ask on the r-help listserv, I suppose. If you have a statistical question about CFA, please edit to clarify. Otherwise, this will end up being closed. $\endgroup$ Jun 9, 2016 at 16:43
  • $\begingroup$ searching the site for factor scores lavaan returnes more than 3 questions very similar to yours. Did you see them? $\endgroup$
    – ttnphns
    Jun 9, 2016 at 18:17

1 Answer 1


lavaan objects are an S4 class, so to view the predict method, you would type getMethod('predict', 'lavaan'). Basically, the workhorse function is lavPredict which you should consult the help on.

Basically, the default method returns the predicted latent variable value which is estimated in the M step of the EM maximum likelihood estimation of the latent model.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.