Mark Seeto
2013-Nov-14 02:11 UTC
[R] oblique.scores argument for fa function in psych package
Dear R help, I'm using version 1.3.10.12 of the psych package. The help page for fa says that when calculating factor scores, oblique.scores=FALSE causes the pattern matrix to be used, and oblique.scores=TRUE causes the structure matrix to be used. However, when I try it, it seems to be the other way around. Example: ############################################################################### library(psych) set.seed(1) n <- 100 Y <- data.frame(y1 = rnorm(n), y2 = rnorm(n), y3 = rnorm(n), y4 = rnorm(n), y5 = rnorm(n), y6 = rnorm(n)) fa1 <- fa(Y, nfactors=2, rotate="oblimin", fm="minres", oblique.scores=FALSE) fa2 <- fa(Y, nfactors=2, rotate="oblimin", fm="minres", oblique.scores=TRUE) fa1$scores[1:3, ] fa2$scores[1:3, ] (scale(Y) %*% solve(cor(Y)) %*% fa1$loadings)[1:3, ] # not the same as fa1$scores[1:3, ] (scale(Y) %*% solve(cor(Y)) %*% fa1$Structure)[1:3, ] # same as fa1$scores[1:3, ] (scale(Y) %*% solve(cor(Y)) %*% fa2$loadings)[1:3, ] # same as fa2$scores[1:3, ] (scale(Y) %*% solve(cor(Y)) %*% fa2$Structure)[1:3, ] # not the same as fa2$scores[1:3, ] ############################################################################### Have I misunderstood something? Thanks, Mark Seeto