# varimax

##### Rotation Methods for Factor Analysis

These functions ‘rotate’ loading matrices in factor analysis.

- Keywords
- multivariate

##### 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

The ‘rotated’ loadings matrix,
`x %*% rotmat`

, of class `"loadings"`

.

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.
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.
10.1007/BF02289233.

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

##### See Also

##### Examples

`library(stats)`

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

*Documentation reproduced from package stats, version 3.5.0, License: Part of R 3.5.0*