Hi Team, I was using your "psych" package for factor analysis and was also comparing the results with SAS results. I have some suggestions and/or confusions regarding the fa() function in the package:
- The fa() function *doesn't account for Heywood cases* (communality greater than 1) and never ever throws out any error related to that which other softwares do. This is a serious and common issue in iterative factor analysis and hence should have been accounted for. - The fa() function doesn't provide "equamax" rotation in its rotation list and still if you specify "*rotation=equamax*", it will run without throwing out any error and even mentioning in the result that "equamax" has been applied. But I have thoroughly compared results from " *rotation=none*" and "*rotation=equamax*" options and they are exactly same. *That means fa() is not doing the rotation at all and yet telling that it is doing that!!* I have even mentioned "*rotation=crap*" option just to check and surprisingly it ran(without any error) with the result showing: *Factor Analysis using method = gls* * Call: fa(r = cor_mat, nfactors = 4, n.obs = 69576, rotate = "crap", fm = "gls")* I hope you understand the severity of this bug and hence request you to correct this. - To my sense, there might be some problem with "fm=ml" and "fm=pa" options since the convergence issue should be with MLE method and not PA method but while running factor analysis with PA, I am getting the following warning: *maximum iteration exceeded* * The estimated weights for the factor scores are probably incorrect. Try a different factor extraction method.* If I compare the results of R and SAS,* I am getting convergence error for MLE in SAS whereas I am getting the same error for PA in R *!! I am not being able to understand this mismatch. - If I call the *loading matrix like efa_pa$loadings, the matrix shown has many blank cells whereas the final result showing the loadings doesn't have so* !! *Loadings:* * PA1 PA2 PA3 PA4 * *Var1 0.401 -0.243* *Var2 0.336 -0.104 0.710* *Var3 0.624 0.123 0.170 * - Could you please explain* what the "com" column means* in the output:? * PA1 PA3 PA2 PA4 h2 u2 com* *Var1 0.44 0.14 -0.03 -0.10 0.22665 0.773 1.3* *Var2 0.08 0.11 0.02 0.78 0.62951 0.370 1.1* *Var3 0.62 0.12 0.15 0.14 0.43578 0.564 1.3* - Request you to add option for *"equamax" rotation* also if possible. I have come across the above issues until now. Please do correct me if I am wrong. Awaiting your revert which would clear out my confusions, Thanks for your valuable time, Sagnik -- Regards, *SAGNIK CHAKRAVARTY* *Mob:* +919972865435 *Email:* sagnik.st...@gmail.com sagnik....@gmail.com [[alternative HTML version deleted]] ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.