PCArot: Varimax rotation in PCAmix In PCAmixdata: Multivariate Analysis of Mixed Data

Description

Orthogonal rotation in PCAmix by maximization of the varimax function expressed in terms of PCAmix squared loadings (correlation ratios for qualitative variables and squared correlations for quantitative variables). PCArot includes the ordinary varimax rotation in Principal Component Analysis (PCA) and a varimax-type rotation in Multiple Correspondence Analysis (MCA) as special cases.

Usage

 `1` ```PCArot(obj, dim, itermax = 100, graph = TRUE) ```

Arguments

 `obj` an object of class PCAmix. `dim` number of rotated Principal Components. `itermax` maximum number of iterations in the Kaiser's practical optimization algorithm based on successive pairwise planar rotations. `graph` boolean, if TRUE the following graphs are displayed for the first two dimensions after rotation: plot of the individuals (factor coordinates), plot of the variables (squared loadings) plot of the correlation circle (if quantitative variables are available), plot of the levels component map (if qualitative variables are available).

Details

If X.quali is not specified (i.e. NULL) in the previous PCAmix step, only quantitative variables are available and standard varimax rotation in PCA is performed. If X.quanti is NULL, only qualitative variables are available and varimax-type rotation in MCA is performed. Note that p1 is the number of quantitative variables, p2 is the number of qualitative variables and m is the total number of levels of the p2 qualitative variables.

Value

 `eig` variances of the ndim dimensions after rotation. `ind\$coord` a n by dim quantitative matrix which contains the coordinates (scores) of the n individuals on the dim rotated principal components. `quanti\$coord` a p1 by dim quantitative matrix which contains the coordinates (loadings) of the p1 quantitative variables after rotation. The coordinates of the quantitative variables after rotation are correlations with the rotated principal components. `levels\$coord` a m by dim quantitative matrix which contains the coordinates of the m levels on the dim rotated principal components. `quali\$coord` a p2 by dim quantitative matrix which contains the coordinates of the p2 qualitative variables on the dim rotated principal components. Coordinates of the qualitative variables after rotation are correlation ratio with the rotated principal components. `coef` coefficients of the linear combinations used to construct the rotated principal components of PCAmix. `theta` angle of rotation if dim is equal to 2. `T` matrix of rotation.

Author(s)

Marie Chavent [email protected], Vanessa Kuentz, Benoit Liquet, Jerome Saracco

References

Chavent, M., Kuentz, V., Saracco, J. (2011), Orthogonal Rotation in PCAMIX. Advances in Classification and Data Analysis, Vol. 6, pp. 131-146.

Chavent M., Kuentz-Simonet V., Labenne A., Saracco J., Multivariate analysis of mixed data: The PCAmixdata R package, arXiv:1411.4911 [stat.CO].

Kiers, H.A.L., (1991), Simple structure in Component Analysis Techniques for mixtures of qualitative and quantitative variables, Psychometrika, 56, 197-212.

`plot.PCAmix`, `summary.PCAmix`, `PCAmix`, `predict.PCAmix`
 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36``` ```#PCAMIX: data(wine) pca<-PCAmix(X.quanti=wine[,c(3:29)],X.quali=wine[,1:2],ndim=4,graph=FALSE) pca rot<-PCArot(pca,3) rot rot\$eig #percentages of variances after rotation plot(rot,choice="ind",coloring.ind=wine[,1], posleg="bottomleft", main="Rotated scores") plot(rot,choice="sqload",main="Squared loadings after rotation") plot(rot,choice="levels",main="Levels after rotation") plot(rot,choice="cor",main="Correlation circle after rotation") #PCA: data(decathlon) quali<-decathlon[,13] pca<-PCAmix(decathlon[,1:10], graph=FALSE) rot<-PCArot(pca,3) plot(rot,choice="ind",coloring.ind=quali,cex=0.8, posleg="topright",main="Scores after rotation") plot(rot, choice="sqload", main="Squared correlations after rotation") plot(rot, choice="cor", main="Correlation circle after rotation") #MCA data(flower) mca <- PCAmix(X.quali=flower[,1:4],rename.level=TRUE,graph=FALSE) rot<-PCArot(mca,2) plot(rot,choice="ind",main="Scores after rotation") plot(rot, choice="sqload", main="Correlation ratios after rotation") plot(rot, choice="levels", main="Levels after rotation") ```