2
$\begingroup$

Does anybody know how to calculate the maximum likelihood factor loadings from only the correlation (R) matrix and/or covariance (S) matrix in Factor Analysis "by hand" (i.e., by Excel)? Or, even better, point me to a clear explanation with a worked example?

I don't have the underlying data, so I can't just use a software program to solve the problem for me. (Any answer involving typical FA software commands or menu sequences won't be helpful, I don't think.)

To the extent it's helpful, I'm using Johnson and Wichern's "Applied Multivariate Statistical Analysis", 6th Edition. In the exercises in Chapter 9, we're given just the R or S matrix and then asked to perform the maximum likelihood calculation repeatedly (e.g., exercises 9.20 b; 9.24, 9.26, and 9.27), yet the book never shows an example (as far as I can tell, nor does the answer key, which my professor makes available to us).

Thanks in advance and regards!

$\endgroup$
1
$\begingroup$

You could look at the source code for the factanal function in R. It is possible to provide a covariance or correlation matrix as an argument.

  • You can see the source code here
  • Or it would probably be more useful to type debug(factanal) and then run the factanal function with a sample correlation matrix. You could then inspect the effect of each step.
$\endgroup$
2
  • $\begingroup$ Thanks for the quick response. I hate to admit this, but I don't know how to run custom packages in R (I'm very new to R). And I can't find this package in the standard R library. Any tips about how I can run this script? If the answer is I just need to get up to speed on R, so be it! $\endgroup$ Jul 26 '13 at 20:42
  • $\begingroup$ There's nothing custom about factanal it's a built-in function in base R. You can just load R and type factanal into the R console and you'll see the code for the function. That said, if you're new to R, you may find following the code challenging. $\endgroup$ Jul 28 '13 at 9:24

This site is temporarily in read only mode and not accepting new answers.

Not the answer you're looking for? Browse other questions tagged .