Précédent   Forum des professionnels en informatique > Environnements de développement > MATLAB
MATLAB Forum d'entraide sur MATLAB. Avant de poster -> FAQ MATLAB
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/01/2012, 11h43   #1
Invité de passage
 
Femme Hela Rezgui
Étudiant
Inscription : août 2011
Messages : 5
Détails du profil
Informations personnelles :
Nom : Femme Hela Rezgui
Localisation : France, Finistère (Bretagne)

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : août 2011
Messages : 5
Points : 1
Points : 1
Par défaut Calcul de contribution absolue et relative ?

Bonjouur,

S'il vous plait, quelqu'un peut me répondre comment on peut calculer la contribution (absolue et relative) d'une variable aux axes (composantes principales) obtenus suite à une Analyse en Composantes Principale.

Je suis débutante avec matlab, et je viens de programmer la fonction ACP et je veux calculer la contribution de chaque variable d'origine aux nouvelles composantes pour enfin choisir celles à forte contribution. Je n'ai trouvé la formule nulle part !!!

Merci pour votre aide.

-- Code Matlab:

Code :
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);
hrezgui est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h52.


 
 
 
 
Partenaires

Hébergement Web