Correlation of Principal Component Scores after Varimax Rotation

5 次查看(过去 30 天)
Hi all:
I'm extracting principal components from time series data and use the varimax rotation to interpret the PCs. In addition, I'd like to compute the rotated scores and use them for further analysis. However, the rotated scores are not uncorrelated anymore, although they should (I think) because the rotation matrix is orthornomal.
Here's a simple example in which I pick two PCs:
load hald [C,S] = pca(zscore(ingredients));
[L,T] = rotatefactors(C(:,1:2)); % L = C(:,1:2)*T
cov(S(:,1:2)*T)
Can anybody help?
Peter

回答(1 个)

Ayush Aniket
Ayush Aniket 2025-8-29
PCA scores are uncorrelated because they come from the eigen-decomposition of the covariance matrix. When you rotate the loadings (e.g. varimax), the rotation matrix is orthogonal, so the axes remain orthogonal, but the scores no longer stay uncorrelated. This is expected as rotation trades uncorrelated scores for more interpretable loadings.
Hence, if you need uncorrelated variables, use the original PC scores, and if you need interpretability, use the rotated ones (and accept correlation).

类别

Help CenterFile Exchange 中查找有关 Dimensionality Reduction and Feature Extraction 的更多信息

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by