In my understanding, exploratory factor analysis (EFA) is used for discovering latent structure among variables. It consists of two interrelated parts:

  1. determine the number of latent factors $k$,
  2. determine the loadings of factors onto variables.

However, it has been suggested (in the comments in another thread) -- unless I misinterpreted it -- that EFA is primarily about part 2, while part 1 can be taken as given. That does not sound quite right to me. If we know what the variables in the dataset measure and we know $k$ ahead of seeing the actual data, then with some subject-matter expertise* we probably can guess what the factors could be and consequently guess something about the loadings, too, e.g. which loadings will be close to zero. If so, we could do confirmatory factor analysis (CFA) right away instead of doing EFA.

Could you offer any example where we realistically know the number of latent factors $k$ ahead of seeing the data but have no idea about factor loadings?

*Yes, this relies on subject-matter expertise and on the number of factors $k$ not being too high. If we have a dataset where we do not know what the variables are measuring, or it comes from an area in which we have zero subject matter expertise, then knowing $k$ will not help with factor loadings.

  • $\begingroup$ setting some of the loadings to zero. If by that you mean rounding to 0 or 1, then it is definitely wrong, no such goal exists; loadings are what reconstruct correlations and help compute factor scores, so we want them as they are. But if you mean a factor rotation, then yes, it does has the aim to make loading distribution some polymodal, better bimodal, with some loadings near zero; that helps interpretation. $\endgroup$
    – ttnphns
    Nov 25 at 15:30
  • $\begingroup$ @ttnphns, agree, I had it wrong. I was correcting this while you posted your comment. $\endgroup$ Nov 25 at 15:32
  • $\begingroup$ For k. To be able to estimate loadings, FA needs either to know k, or to know real/best communalities. These two parameters are interrelated. FA itself, in the narrow sense of the procedure, does not estimate them. They are suggested by appropriate methods (which are not one) and are input. Typically, we start with initial communalities as the sq. mult. corr. coefs, and with k suggested by rules such as Kaiser's or Cattell's or a "parallel procedure". $\endgroup$
    – ttnphns
    Nov 25 at 15:42
  • $\begingroup$ (cont.) Extracted factors we usually rotate. Then a number of criteria, two most important being (a) reconstruction of corr., (b) interpretability, can suggest to modify the value of k. Then we repeat with this new k. Then maybe again. $\endgroup$
    – ttnphns
    Nov 25 at 15:42
  • $\begingroup$ So, we find the best k by trying out different values of it. It is not FA algorithm itself what finds k for us. (Only in case you know true/optimal communalities in advance, then k is determined, comes out, automatically. But where will you get such communalities from?) $\endgroup$
    – ttnphns
    Nov 25 at 15:48

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.