varimax: Rotation Methods for Factor Analysis

varimaxR Documentation

Rotation Methods for Factor Analysis

Description

These functions ‘rotate’ loading matrices in factor analysis.

Usage

varimax(x, normalize = TRUE, eps = 1e-5)
promax(x, m = 4)

Arguments

x

A loadings matrix, with p rows and k < p columns

m

The power used the target for promax. Values of 2 to 4 are recommended.

normalize

logical. Should Kaiser normalization be performed? If so the rows of x are re-scaled to unit length before rotation, and scaled back afterwards.

eps

The tolerance for stopping: the relative change in the sum of singular values.

Details

These seek a ‘rotation’ of the factors x %*% T that aims to clarify the structure of the loadings matrix. The matrix T is a rotation (possibly with reflection) for varimax, but a general linear transformation for promax, with the variance of the factors being preserved.

Value

A list with components

loadings

The ‘rotated’ loadings matrix, x %*% rotmat, of class "loadings".

rotmat

The ‘rotation’ matrix.

References

Hendrickson, A. E. and White, P. O. (1964). Promax: a quick method for rotation to orthogonal oblique structure. British Journal of Statistical Psychology, 17, 65–70. \Sexpr[results=rd,stage=build]{tools:::Rd_expr_doi("10.1111/j.2044-8317.1964.tb00244.x")}.

Horst, P. (1965). Factor Analysis of Data Matrices. Holt, Rinehart and Winston. Chapter 10.

Kaiser, H. F. (1958). The varimax criterion for analytic rotation in factor analysis. Psychometrika, 23, 187–200. \Sexpr[results=rd,stage=build]{tools:::Rd_expr_doi("10.1007/BF02289233")}.

Lawley, D. N. and Maxwell, A. E. (1971). Factor Analysis as a Statistical Method, second edition. Butterworths.

See Also

factanal, Harman74.cor.

Examples

## varimax with normalize = TRUE is the default
fa <- factanal( ~., 2, data = swiss)
varimax(loadings(fa), normalize = FALSE)
promax(loadings(fa))