After extracting the Principle Components of my data, I apply Gaussian Mixture Models for clustering. I used a subset of the orthogonal basis of the Principle Components and projected my data onto this new subspace. Subsequently I used the projected data as the input to the Gaussian-Mixture-Models-Algorithm. So far so good … For better interpretability, I would like to rotate the outcome of the Principle Components Analysis. I scaled the unit-length Principle Components [Eigenvectors] with their corresponding Eigenvalues to get the Loadings [Eigenvectors * sqrt(Eigenvalue)]. I rotate the Loadings with the varimax-rotation to get the rotated Loadings. After rotation my rotated Loadings are not orthogonal to each other anymore. Therefore, I do not have an orthogonal basis on which I could project my data. I assume this is just what the varimax-rotation is doing … giving no orthogonal output in the end. Also if I take all Loadings and not just a subset to rotate, the total variance of the projected data is not equal to the original total variance of my data, which does not supprise my as we do not have an orthogonal basis.
Here a clarifying link.
- Is there a way to extract the contribution of the Input-Loadings to the Output-Rotated Loadings? I’m using Matlab, rotatefactors().
- I guess after getting no orthogonal basis after application of the rotation it does not make sense to project the data onto this space and compute the Gaussian Mixture Model with it.
Thank you very much for any insights. Based on my problems I assume I have to calculate the Gaussian Mixture Model with the original Principle Components and disregard the rotated ones. Nonetheless I would like to use the rotated ones for interpretation, but I can't figure out how to get down to the contributions of the input to each rotated Loading.