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 37 38 39 40
| function [coord v f]= ACP(data)
reponse=data(:,1);
data(:,1)=[];
[m n]=size(data);
%vecteur des moyennes
moy = mean(data)' ;
%vecteur des ecarts-types
ect=std(data(:,:))' ;
%Centrage des données
vunit=linspace(1,1,m) ;
y=data-vunit'*moy';
%Matrice diagonale des 1/ect
ds=diag(ect)^-1 ;
%Matrice des données centrées et reduites
z=y*ds;
%Matrice des corrélations
v=(z'*z)/m;
%Vecteurs propres: f %Valeurs propres: h
[f h] = eigs(v, n);
%Coordonnées des individus sur les axes
coord=[reponse z*f];
y=sum(h);
%percent_explained=100*h/sum(h);
percent_explained=100*h/sum(y);
pareto(sum(percent_explained))
% Contribution relative de la jième variable a la variance de l'axe du
% facteur alpha
cont=f.^2;
moy_cont=mean (cont); |
Partager