This is follow-up from a previous question: How to separate groups using PCA?.
I have $25$ normals and $12$ patients. For each of them I have a vector representing a spectrogram (length $2000$).
So I have a matrix $Z$ of size $[25\times2000;12\times 2000]$.
I calculate:
[coeffZ, score, latent, tsquared, explained, mu]=pca(Z);
and bar(explained)
shows me that the first $3$ PCs explain most of the variance.
I also have a behavioral score (from testing) for each of the subjects ($[37\times 1]$). It was suggested that I see if the first 3 PCs can predict the behavioral score using multiple correlation coefficient. Specifically this: http://en.wikipedia.org/wiki/Multiple_correlation
Does this make sense? Does anybody have an idea of how I can implement this in Matlab?
@ username
(without a space) somewhere in the comment. I noticed your comments only by chance (opened this question to check if there are new comments...). I can update my answer to address your your comments, but how did you run pca() if you don't have statistics toolbox? $\endgroup$