La notion de covariance d'un échantillon (et donc celle d'ACP) n'est de base définie que pour des données en 2D, et non pas en 3D. D'ailleurs le code de pca3 le montre bien:
Pour une matrice data en 2D
1 2 3
| PC = PC(:,rindices);
% project the original data set
signals = PC'* data; |
Les PC sont les vecteurs propres, ie les poids des combinaisons linéaires définissant les facteurs, et signals sont les combinaisons linéaires en question (les facteurs, ayant autant d'observations que le signal initial). Cela revient à dire que les signals sont les vecteurs propres de data' * data (éssociés à des valeurs propres non nulles).
Si cette notion est obscure, il faut revoir la définition de l'ACP.
Finalement, le code pca3 est complétement inutile puisque
[PC,signal,V]= princomp(data)
fournit exactement le même résultat.
Enfin, il faut se demander comment passer de données 3D à celles 2D fournies à l'ACP. Probablement l'une des alternatives suivantes:
- Faire la moyenne sur une dimension (par exemple la moyenne du vecteur pour chaque individu/expérience). ici on perds une dimension
- Aplatir une dimension : par exemple étudier les covariance entre chaque paires (expérience, échantillon) sur les personnes. Ici on démultiplie le nombre de variables ou d'individus suivant l'aplatissement réalisé
Partager