Analyse ACP des Données Climatiques
Analyse ACP des Données Climatiques
Principales
ACP avec Python
J. DABOUNOU - FST DE SETTAT
UNIVERSITE HASSAN Ier
Mars 2020
Exercice 1 : Le tableau suivant présente pour différentes villes, les précipitations p (en cm), les
températures maximale tmax et minimale tmin (en˚C), mesurées en 2012:
p tmax tmin
a. Calculez les moyennes et les écart-types de p, tmax et tmin. Ajaccio 12,04 23,7 5,9
Donnez la matrice X des données centrées réduites. Brest 17,18 15,5 -1,8
Dunkerque 11,83 13,1 2,8
b. Calculez la matrice des corrélations Σ. Nancy 6,23 13,5 -2,4
Nice 16,99 21,1 7,2
c. Déterminer, éventuellement en utilisant un logiciel, Toulouse 3,87 20,3 -0,9
les matrices D et P telles que Σ = PDPt, avec P matrice orthogonale et D matrice diagonale.
d. Quelles sont les valeurs et vecteurs propres de Σ ?
e. Montrer que la matrice P est inversible et P−1 = Pt.
f. Calculer la matrice des composantes principales C et représenter les villes dans le plan principal.
g. Interpréter la position des villes dans le plan principal et commenter.
h. Calculer les corrélations linéaires entre les variables initiales et les deux premières composantes
principales.
i. Réaliser un tableau qui synthétise la qualité de représentation et la contribution des individus aux
axes factoriels et leur contribution à l’inertie totale ainsi que la qualité de représentation des
variables aux axes factoriels.
j. Représenter les résultats sur le cercle des corrélations.
k. Factoriser la matrice de données.
J. DABOUNOU - FST DE SETTAT ACP001 - 1
Calculez les moyennes et les écart-
types de p, tmax et tmin.
Donnez la matrice X des données
centrées réduites
Données à analyser :
p tmax tmin
Ajaccio 12,04 23,7 5,9
Brest 17,18 15,5 -1,8
Dunkerque 11,83 13,1 2,8
Nancy 6,23 13,5 -2,4
Nice 16,99 21,1 7,2
Toulouse 3,87 20,30 -0,90
Moyenne 11,36 17,87 1,80
Ecart-type 4,98 4,04 3,76
1 Corr(𝐕1 , 𝐕2 ) ⋯ Corr(𝐕1 , 𝐕J )
1 t Corr(𝐕2 , 𝐕1 ) ⋱
Corr 𝐗 = 𝐗 .𝐗 =
I ⋮ ⋱ ⋮
Corr(𝐕J , 𝐕1 ) ⋯ 1
Les composantes que donne l’ACP dépendent des unités de mesure. On doit souvent
opter pour une solution selon la situation spécifique du problème. On peut par
exemple :
Σ étant ici égale à la matrice des corrélations. Le graphique suivant illustre cette
matrice.
Un des objectifs de l’ACP est de déterminer une nouvelle base orthogonale et une
nouvelle matrice Y avec de nouvelles composantes pour lesquelles ΣY = Yt Y est
diagonale.
Les vecteurs propres de Σ forment la matrice de passage P et les valeurs propres sont
les covariances des nouvelles variables Yj.
Comme Σ est symétrique et semi-définie positive, les valeurs propres sont toutes
positives ou nulles et les vecteurs propres sont deux à deux orthogonaux.
Le plus souvent, les logiciels donnent les valeurs propres classées en ordre
décroissant.
Soient donc les valeurs propres : 1 = 1.83 ; 2 = 0.92 ; 3 = 0.25 et les vecteurs
propres :
0.46 0.79 0.41
u1 = 0.56 ; u2 = −0.61 ; u3 = 0.56
0.69 −0.03 −0.72
On en déduit que le rang de Σ est égal à 3. Σ est donc inversible.
L’ACP consiste à trouver les directions de variance maximale dans ces données afin de
les projeter sur un sous-espace dimensionnel plus petit tout en conservant l’essentiel
des informations.
u1 définit le premier axe principal dans R3. Puisque X est centrée, l’origine O des axes
de R3 passe par le centre de gravité des 6 points Mi définis par les lignes de la matrice
X.
La projection du point Mi sur cet axe, notée Hi1 est donnée par OHi1 = <OMi , u1> où
OMi est le vecteur défini par la ième ligne de la matrice X.
R3 D1
Ainsi, OH11, OH12, OH13, OH14, OH15, OH16 déterminent
la projection des 6 points M1,…, M6 sur le premier axe Mi
principal et on a :
u1 H1i
O
OH21i = <Xu1 , Xu1 > = ut1 Xt Xu1 = 6 1
i=1,6
R3
D1
D2
Mi
u2
u1H1i
O
C = [ F1 F2 … Fr ]
F1 F2 F3
Ajaccio 1.63 -0.81 0.07 Pour k=1,2,3 :
Brest -0.45 1.31 0.84
Dunkerque -0.43 0.79 -0.81 F2ki = 6 k
Nancy -1.85 -0.12 -0.21 i=1,6
Nice 1.96 0.37 -0.13
Toulouse -0.85 -1.54 0.24
k 1.83 0.92 0.25
Il s’agit du plan :
- qui est globalement le plus proche des points représentant les individus
- tel que les points projetés dessus visualisent le mieux possible (par rapport à tout autre
plan) la disposition des individus dans l’espace RJ.
M1 Mi
M3 M2
F2(30.51%)
F1(61.17%)
En observant les données, on voit que le 1er axe évolue globalement dans le sens
croissant de tmin. Les villes qui ont les tmin les plus basses se trouvent à gauche, ceux
qui ont des tmin élevées se trouvent à droite.
J. DABOUNOU - FST DE SETTAT ACP001 - 25
Interpréter le plan factoriel
2ème axe:
- Toulouse, ensuite Ajaccio en bas
de l’axe
- Brest ensuite Dunkerque en haut
de l’axe
p tmax tmin
Ajaccio 12.04 23.7 5.9
Brest 17.18 15.5 -1.8
Dunkerque 11.83 13.1 2.8
Nancy 6.23 13.5 -2.4
Nice 16.99 21.1 7.2
Toulouse 3.87 20.30 -0.90
Moyenne 11.36 17.87 1.80
Ecart-type 4.98 4.04 3.76
En observant les données, on voit que le 2ème axe évolue globalement dans le sens
croissant de p et, relativement, dans le sens décroissant des tmax.
F1 F2 F3
p 0.62 0.76 0.21
tmax 0.76 -0.59 0.28
tmin 0.93 -0.03 -0.36
On constate alors que F1 est corrélée à toutes les variables, mais très particulièrement
à tmin. F2 est corrélée à p et inversement corrélé à tmax. Nous allons visualiser ces
corrélations sur le plan factoriel.
J. DABOUNOU - FST DE SETTAT ACP001 - 28
Interpréter le plan factoriel
La projection des variables sur le plan factoriel permet de visualiser de façon plus
claire les corrélations que nous avons, d’une certaine manière, constaté en revenant
aux données.
M1
M5
c O4
c2,52,4 O5
4 5
O c1,4 c1,5
M3
M2
J. DABOUNOU - FST DE SETTAT ACP001 - 31
Qualité de représentation
Nous avons :
OO24
cos2(4)=
OM24
(u1 , u2) constitue une base orthonormée du plan factoriel. Donc on a :
OO24 = c1,4
2 2
+ c2,4
et ainsi :
2 2
2
c1,4 + c2,4
cos (4)=
OM24
De façon générale, la qualité de la projection de l’individu i sur le plan factoriel est caractérisée
par :
2 2
2
c1,i + c2,i
cos (i)=
OM2i
où c1,i et c2,i sont les ièmes composantes principales respectivement sur le premier et le
deuxième axe principal.
L’interprétation des individus à partir du plan factoriel ne peut être valide que pour ceux
possèdent un cosinus carré proche de 1.
M3
M2
X5
c O4
c2,52,4 O5
14
4
O c1,4 5 c1,5
X3
X2
On définit aussi la qualité de représentation d’un individu dans un sous-espace (uk)kK, K{1,2,…
r} où r désigne le nombre de valeurs propres non nulles. On a ainsi :
2
c
kK k,i
cos2(K)= = Qlt(Xi , Fk)
OX2i
kK
En particulier, si K={1,2,… r} alors
2
c
kK k,i
cos2( K)= = Qlt(Xi , Fk) = 1
OX2i
kK
J. DABOUNOU - FST DE SETTAT ACP001 - 34
Contribution
Maintenant, nous allons analyser la contribution des individus à la construction d’un axe factoriel.
Considérons, pour commencer, le premier axe factoriel. Il est caractérisé par le fait de représenter
l’inertie 1, qui est valeur propre de XtX. Et on a :
I
1 = 2
c1,i
i=1
2
A noter que c1,i représente l’inertie de l’individu Xi expliquée par le premier axe principal. Il est
ainsi naturel de définir la contribution de l’individu i au premier axe principal par le rapport :
2
c1,i
Contrib(Xi , F1) =
1
D’un autre côté, F1 est constituée des coordonnées de la projection du nuage de points
représentant les individus sur le premier axe principal.
Donc F1 = X . u1.
où X =
Posons aussi u1 = (u1,1, u1,2, … , u1,J) ou les u1,j sont des nombres réels.
On rappelle que l’on suppose X centrée réduite. Sinon on commence par la rendre ainsi. On peut
écrire : X = (V1 , V2 , … , VJ), où les Vj sont des vecteurs colonnes représentant les variables.
Ce qui donne : F1 = X . u1 = u1,1 V1 + u1,2 V2 + … + u1,J VJ.
De la même manière : F2 = X . u2 = u2,1 V1 + u2,2 V2 + … + u2,J VJ.
Ce qui permet d’écrire les composantes principales F1 et F2 en fonction des variables de départ.
Cela nous montre comment se combinent les variables initiales dans des variables latentes qui
nous renseignent mieux sur la variabilité entre les individus.
J. DABOUNOU - FST DE SETTAT ACP001 - 39
Composantes principales et variables
Dans le cas de notre exemple, on obtient :
Ce qui donne : F1 = X . u1 = 0.73 p + 0.40 tmax + 0.56 tmin
et : F2 = X . u2 = 0.62 p - 0.73 tmax - 0.29 tmin.
Ces expressions réaffirment les liaisons que nous avons déjà constatées entre les variables et les
composantes principales.
Comme sur le plan factoriel, on voit que toutes les variables ont le même signe de corrélation (ici
positif) avec F1. On dit concernant F1 qu’il s’agit d’un facteur taille.
F2 est positivement corrélé à p et négativement corrélé à tmin avec des coefficients importants et
négativement corrélé à tmin avec des coefficients plus faibles.
Il nous renseigne essentiellement sur l’écart pour une ville entre
les précipitations et la température maximale. Il s’agit d’un
facteur de forme.
Cela nous permet d’obtenir les facteurs latents qui permettent
de mieux analyser la variabilité entre les résultats obtenus pour
chaque ville.
1
• v1 vecteur propre de XXt associé à une valeur propre
I
1
• étant la plus grande des valeurs propres de XXt .
I
1
Donc : trace(XXt) = 1 + 2 + … + r
I
où 1, 2, …, r >0 sont les valeurs propres non nulles de XXt.
Les vecteurs propres unitaires associés v1, v2, …, vr sont deux à deux orthogonaux.
1 1 1
On a XXt v1 = 1 v1. Donc Xt XXt v1 = Xt 1 v1. Ce qui s’écrit : XtX (Xt v1) = 1 (Xt v1).
I I I
1
Donc Xt v1 est vecteur propre de XtX et 1 la valeur propre associée.
I
1 1
En développant un peu, on voit que les valeurs propres de XtX et de XXt sont égales:
I I
Le calcul donne :
0.04 0.57 0.47 0.14 1.44 1.09
0.34 -0.43 -0.14 1.17 -0.59 -0.96
0.17 -0.30 -0.13 0.10 -1.18 0.27
𝐗= Xappr =
-0.39 -0.39 -0.52 -1.03 -1.08 -1.12
0.48 0.36 0.55 1.13 0.80 1.44
-0.65 0.19 -0.22 -1.50 0.60 -0.72
0.49 0.46 0.56 0.69 -0.34 0.79 -0.61 -0.03 0.06 0.41 0.56 -0.72
-0.14 0.56 0.69
1
𝐗 = 1 -0.13 + 2 0.34 + 3 -0.66
6 -0.56 -0.05 -0.17
0.59 0.16 -0.11
-0.25 -0.66 0.20