Full_Name: Peter Perkins
Version: 1.3.0
OS: Windows 2000
Submission from: (NULL) (144.212.95.125)
I believe that line 15 in promax from the mva library is incorrect. It currently
reads
U <- U %*% xx$rotmat
and I believe it should be
U <- xx$rotmat %*% U
I could easily be wrong about this, what with the different definitions of the
rotation matrix vs. its transpose or its inverse. But as I read the help page,
the rotation returned should be the one right-applied to the unrotated loadings.
If one gets an unrotated solution from factanal, and then rotates it using
promax, the rotation matrix returned by promax does not rotate the original
loadings to the loadings actually returned by promax. For example:
ability.FA <- factanal(factors = 2, covmat = ability.cov, rotation = "none") pm <- promax(ability.FA$loadings) ability.FA$loadings %*% pm$rotmat
[,1] [,2] general 0.506710586637257760 0.3869775784069614 picture 0.016586316593501016 0.5487934474308697 blocks 0.009193639894000683 0.7618755867650074 maze 0.000379404610399037 0.4152980202252167 reading 1.239552601870304500 -0.0721695133918453 vocab 0.993619401777782300 0.0121717852577490
pm$loadings
Factor1 Factor2 general 0.3645353358177468 0.47007326286349982 picture -0.0574968553480034 0.67108222064051182 blocks -0.0911409139522113 0.93173350519662612 maze -0.0534713467857141 0.50791682927425630 reading 1.0236923640723727 -0.09611608932609411 vocab 0.8115188349528749 0.00859299169089836 I believe that the latter is correct. Changing the order of the product in line 15 makes the two the same. -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._