Analyse Factorielle Des Correspondances (AFC) : Chapitre 1
Analyse Factorielle Des Correspondances (AFC) : Chapitre 1
’analyse factorielle des correspondances (AFC), ou analyse des correspondances simples, est une
L méthode exploratoire d’analyse des tableaux de contingence. Elle a été développée essentielle-
ment par J.-P. Benzecri durant la période 1970-1990.
L’AFC peut être considérée comme une ACP particulière dotée de la métrique du X2 (Khi-2) qui
ne dépend que du profil des colonnes du tableau. L’analyse permet, dans le plan des deux premiers
axes factoriels, une représentation simultanée, souvent fort suggestive des ressemblances entre les
colonnes ou les lignes du tableau et de la proximité entre lignes et colonnes.
Dans ce type d’Analyse Factorielle, nous allons étudier sur N individus les «liaisons» entre deux
variables X et Y. Chaque variable détermine deux partitions de l’ensemble des individus selon les
modalités déterminées choisies pour chacune d’elles. On note souvent I l’ensemble des modalités de
la variable X et J celui des modalités de Y. Le cardinal de I est noté n et celui de J est noté m. Pour
chercher les liaisons entre X et Y nous allons croiser les deux partitions pour obtenir un tableau de
contingence indexé par I × J ( on définit un ordre sur I et J, qui peut être éventuellement arbitraire,
afin de pouvoir construire ce tableau). Dans la case associée à la i-ème ligne et à la j-ème colonne on
écrit l’effectif des individus ayant la i-ème modalité pour la variable X et la j-ème modalité pour la
variable Y, celui-ci est noté kij .
On pose
n
X m
X
k.j = kij et ki. = kij
i=1 j=1
Nuage NI
Pour chaque i ∈ I tel que pi. 6= 0, on définit un point f i de Rm de composantes :
f
i1
pi. i
f
i2 f1
fi
pi. 2
· · · · · ·
fi = f = i
ij fj
pi. · · ·
···
fm i
f
im
pi.
Ces composantes sont les proportions (ou fréquences) conditionnelles de la i-ème modalité de X
individus qui ont la j-ème modalité pour Y.
Les points f i du nuage NI sont appelés profils-lignes.
A chaque point f i on associe le poids pi. . (afin de prendre en compte l’importance de chaque classe).
On obtient ainsi les points pondérés (f i , pi. ) du nuage NI .
Exemple
Prenons un exemple de résultats scolaire : on relève les notes mathématiques et d’anglais d’une
classe de sixième, le tableau de données est le suivant :
Numéro 1 2 3 4 5 6 7 8 9 10 11 12 13
math. 9 13 11 10 12 16 18 12 15 18 13 9 17
angl. 9 7 8 10.5 11 12 16.5 9.5 13 16.5 12 3 17
14 15 16 17 18 19 20 21 22 23 24 25 26 27
13 10 10 15 10 12 10 16 11 10 8 11 14 14
12.5 7.5 6.5 13.5 7.5 9 12 17 10 14.5 7.5 12 8.5 11.5
Nous allons définir des «classes» en mathématiques et en anglais, l’écart type de l’anglais étant plus
élevé que celui des maths nous allons définir, par exemple, 5 classes en anglais et 4 en maths :
Classes en maths : [0; 5[, [5; 10[, [10; 15[, [15; 20],
classes en anglais : [0; 4[, [4; 8[, [8; 12[, [12; 16[, [16; 20]
Le tableau complet de contingence (ou tableau complet des effectifs), de terme général kij est le
suivant :
XXX
XXX Y : math 1 :CM1 2 :CM2 3 :CM3 4 :CM4
XX
XXX marge
X : anglais X [0 ;5[ [5 ;10[ [10 ;15[ [15 ;20[
1 :CA1 [0 ;4[ 0 1 0 0 k1. = 1
2 :CA2 [4 ;8[ 0 1 4 0 k2. = 5
3 :CA3 [8 ;12[ 0 1 8 0 k3. = 9
4 :CA4 [12 ;16[ 0 0 5 3 k4. = 8
5 :CA5 [16 ;20[ 0 0 0 4 k5. = 4
marge k.1 = 0 k.2 = 3 k.3 = 17 k.4 = 7 effectif total=27
Remarque : La première classe de math contient 0 individus. Dans ce cas, généralement, on la sup-
prime, nous la gardons ici pour ne pas changer les indices, mais nous ne l’utiliserons pas dans les
calculs.
Ce tableau nous montre, par exemple, que 8 élèves ont leur note d’anglais entre 12 (compris) et 16
(non compris) puisque K4. = 8.
kij
Le tableau complet des fréquences, de terme général fij = , est :
N
XXX
XXXY : math 1
XX
XXX 2 3 4 fréquence marginale
X : anglais X
1 1
1 0 0 0 f1. = = p1.
27 27
1 4 5
2 0 0 f2. = = p2.
27 27 27
1 8 9
3 0 0 f3. = = p3.
27 27 27
5 3 8
4 0 0 f4. = = p4.
27 27 27
4 4
5 0 0 0 f5. = = p5.
27 27
0 3 17 7
fréquence marginale f.1 = = f.2 = = f.3 = = f.4 = = poids total=1
27 27 27 27
p.1 p.2 p.3 p.4
Dans la suite de ce chapitre nous notons F la matrice à 5 lignes et 3 colonnes (nous supprimons
la colonne ne comportant que des zéros) représentant le tableau des fréquences.
anglais).
5
f43 5 8
f34= = 27 = , le poids du point f 4 est p4. = .
p4. 8 8 27
27
Remarque : La somme des composantes d’un point quelconque de NI (respectivement de NJ ),
étant égale à 1, tous les points de NI (respectivement de NJ ) sont situés dans un hyperplan de Rm
(respectivement de Rn ).
Dans notre exemple, où NI peut être représenté dans R3 , les points seront donc dans un plan de R3 .
0 si j 6= k
b(ej , ek ) = 1
si j = k
p.j
3
27 0 0
17
rappelons que p.1 = 0
0 0
27
7
0 0
27
Le carré de la distance entre f 2 et f 3 est calculée par :
1 1 4 8
X (fj2 − fj3 )2 ( − )2 ( − )2
2 2 3
dm (f , f ) = = 5 9 + 5 9 = 0.0825.
p.j 3 17
j∈J
27 27
Rappelons que la métrique de distance dm , ici sur R3 car m = 3, est donnée par l’inverse de la marge
ligne du tableau des fréquences.
Propriété importante de cette métrique : la distance entre deux points f r et f s de NI ne change
pas si on remplace deux colonnes identiques du tableau des fréquences NI par une colonne égale à
la somme des éléments de même ligne et le poids associé par la somme des poids des éléments de
même ligne.
En effet, le carré de la distance entre f r et f s (pour r 6= s) est :
dm (f r , f s ) = b(f r − f s , f r − f s ) soit encore :
X (fjr − fjs )2 (f1r − f1s )2 (f r − fhs )2 (f r − fks )2
2 r s
dm (f , f ) = = + ··· + h + ··· + k + ··· +
p.j p.1 p.h p.k
j∈J
(fmr − f s )2
m
or par hypothèse, ∀r, ∀s fhr = fhs et
p.m
(f r − fhs )2 (fkr − fks )2 (f r − fhs )2
p.h = p.k et h + =2 h . (a)
p.h p.k p.h
Si on remplace les colonnes d’indice h et k du tableau des fréquence par une colonne d’élément gé-
nérique égal à la somme des éléments de même ligne et les poids p.h et p.k par le poids p.h + p.k ,
l’expression (a) devient :
Les autres éléments du calcul de la distance n’étant pas affectés par la transformations celle-ci reste
la même.
Exemple : soit le tableau de contingence suivant concernant deux variables X et Y mesurées sur 10
individus :
H
HH Y
HH 1 2 3 ki.
X H
1 1 1 0 2
2 2 2 0 4
3 1 1 1 3
4 0 0 1 1
k.j 4 4 2 10
Il comporte deux colonnes égales (les colonnes 1 et 2) le tableau des fréquences correspondant est :
H
HH Y
HH 1 2 3 fréquence marginale pi.
X H
1 0.1 0.1 0 p1. = 0.2
2 0.2 0.2 0 p2. = 0.4
3 0.1 0.1 0.1 p3. = 0.3
4 0 0 0.1 p4. = 0.1
fréquence marginale p.j p.1 = 0.4 p.2 = 0.4 p.3 = 0.2 fréquence totale=1
Le tableau des profils-lignes du nuage NI est :
f1′i f2′i
f ′1 1 0
f ′2 1 0
2 1
f ′3
3 3
f ′4 0 1
8 2
poids p′.j p′.1 = p′.2 =
10 10
On a maintenant :
2 2
( )2 ( )2 40 40 100
d2m (f ′3 , f ′4 ) = 3 + 3 = + = .
8 2 72 72 36
10 10
Remarque : Le rÙle des variables X et Y dans l’étude étant symétrique on pourra effectuer les
mêmes simplifications sur le nuage NJ .
Métrique du X2 et inertie
Rappelons que nous avons appelé la métrique associée à la distance dm définie au paragraphe
précédent «métrique du X2 », voyons quelle relations lie le calcul du test du X2 (test d’indépendance
de 2 caractères) à l’inertie des nuages NI et NJ par rapport au barycentre G, calculée avec la métrique
X2 . On définit le nombre X2 par :
X X (N fij − N fi. f.j )2
X2 =
N fi. f.j
i∈I j∈J
où N est l’effectif total des individus sur lesquels sont étudiés les deux caractères ; N fij est l’effectif
réel des individus appartenant à la fois à la classe d’indice i ∈ I et à la classe d’indice j ∈ J et
N fi. f.j est l’effectif théorique des individus dans l’hypothèse où les deux caractères étudiés seraient
indépendants (la probabilité de l’événement d’indice ij serait alors le produit des probabilités des évé-
nements d’indices respectivement i et j).
Dans le cadre de l’AFC, calculons l’inertie d’un point f i du nuage NI par rapport au barycentre G de
vecteur associé g, pour cela calculons tout d’abord les coordonnées de G.
Calcul des coordonnées du barycentre G du nuage NI dont chacun des points d’indice i est affecté du
poids pi. .
X fij X
G est un point de Rm , sa j-ème coordonnée est pi. = fij = p.j
pi.
i∈I i∈I
Donc les coordonnées du barycentre du nuage NI sont égales à la marge des poids de NI .
3 17 7
Dans notre exemple les coordonnées de G sont donc ( , , ).
27 27 27
Le carré de la distance de f i à g pour la métrique dm est :
fij 2
X ( p − p.j ) X (fij − p.j pi. )2
i.
dm (f i , g) = =
p.j p2i. p.j
j∈J j∈J
L’inertie du point f i affecté du poids pi. par rapport à G (ou g) est donc :
X (fij − p.j pi. )2 X (fij − p.j pi. )2
× p i. =
p2i. p.j pi. p.j
j∈J j∈J
or, ∀i ∈ I, pi. = fi. , et ∀j ∈ J, p.j = f.j l’inertie totale du nuage NI par rapport à G est donc :
X (fij − f.j fi. )2
, ce qui montre la propriété :
fi. f.j
j∈J
X2 = N × Inertieg NI
X2 = N × Inertieg NJ
On a donc recours à l’artifice de calcul suivant : nous remarquons tout d’abord que F t Dn−1 F est sy-
−1 en D 2 D 2 . −1 −1
métrique, nous allons décomposer la matrice Dm m m
−1 −1
On a alors : A = F t Dn−1 F Dm 2 Dm 2 .
Le but du calcul est d’obtenir les valeurs propres et les vecteurs propres de A. Soit λ une valeur propre
de A et U la matrice colonne du vecteur propre associé à λ.
−1 −1
La relation AU = λU s’écrit F t Dn−1 F Dm 2 Dm 2 U = λU .
−1
Multiplions cette expression à gauche par Dm 2 , il vient :
−1 −1 −1 −1 −1
Dm 2 AU = Dm 2 F t Dn−1 F Dm 2 Dm 2 U = Dm 2 λU
−1 −1 −1
ce qui montre que Dm 2 U est la matrice colonne du vecteur propre de Dm 2 F t Dn−1 F Dm 2 relative-
−1
ment à la valeur propre λ (l’intérêt de ce calcul est que, Dn−1 et Dm 2 étant diagonales, la matrice
−1 −1
Dm 2 F t Dn−1 F Dm 2 est symétrique, ses valeurs propres et vecteurs propres se calculent plus rapide-
ment).
−1 −1 −1 −1
Certains auteurs décomposent aussi Dn−1 en Dn 2 Dn 2 et effectuent le produit de la matrice Dn 2 F Dm 2
fij
de terme général √ p par sa tranposée ; on a alors :
fi. f.j
−1 −1 −1 −1 −1 −1
Dm 2 AU = Dm 2 F t Dn 2 Dn 2 F Dm 2 Dm 2 U.
−1 −1
On obtient ainsi, puisque Dn 2 et Dm 2 sont leurs transposées, une décomposition analogue à celle de
l’ACP.
−1 −1
Pour calculer les valeurs propres et les vecteurs propres de A nous calculons donc ceux de Dm 2 F t Dn−1 F Dm 2 =
−1 −1 1
Dm 2 ADm 2 puis nous multiplions les vecteurs propres obetnus par Dm 2
(les valeurs propres sont les
mêmes).
Les calculs effectués avec le logiciel de calculs mathématiques Math. Lab. donnent les résultats sui-
vants en écriture décimale au dix-millième ( la matrice étudiée étant de faible dimension, nous effec-
tuons les calculs directment, sans utiliser la technique de symétrisation de A) :
0.0370 0 0 27 0 0 0 0
0.0370 0.1481 0 0 5.4 0 0 0
F = 0.0370 0.2963 0 ; Dn−1 = 0 0 3 0 0 ;
0 0.1852 0.1111 0 0 0 3.375 0
0 0 0.1481 0 0 0 0 6.75
9 0 0 0.4370 0.0993 0
−1
Dm = 0 1.5883 0 ; A = F t Dn−1 F Dm
−1
= 0.5530 0.7904 0.2679
0 0 3.8565 0 0.1103 0.7321
Les valeurs propres de A sont : 0.3033, 0.6562,
1.
−0.5840 −0.2488 −0.1610
La matrice des vecteurs propres de A est : 0.7862 −0.5491 −0.9126
−0.2022 0.7979 −0.3758
10
Nous remarquons qu’il apparait une valeur propre «paraiste» égale à1, qui correspond au dernier vec-
teur propre, colinéaire à g, nous reviendrons sur ce cas lorsque nous traiterons le cas des nuages N′I
centrés par rapport à G.
Cette valeur propre ne sera pas prise en compte dans le calcul de l’inertie autour de G et nous obte-
nons dans notre exemple les résultats suivants :
L’inertie totale est : 0.3033+0.6562=0.9595 ;
La première valeur propre est 0.6562 ;
0.6562
Le premier axe factoriel exprime donc 68% de l’inertie ( × 100 ≈ 68) ;
0.9595
0.3033
Le deuxième axe factoriel exprime donc 32% de l’inertie ( × 100 ≈ 32).
0.9595
Le premier axe factoriel représente la totalité de l’intertie ce qui était prévisible puisque les profils-
lignes de NI sont coplanaires dans R3 (dans le cas général ils appartiennet à un hyperplan de Rn ).
−1 −1
Si nous effectuons le même calcul sur la matrice Dm 2 ADm 2 les valeurs propres données par le logi-
ciel de calcul numérique Math. Lab sont
dans cet ordre : 0.3030, 1, 0.6562.
−0.8540 −0.3333 −0.3995
La matrice des vecteurs propres est : −0.4830 −0.7935 −0.3703
0.1936 −0.5082 0.8386
1
Si l’on effectue sans précaution le produit de cette matrice par Dm 2
on ne trouve pas les vecteurs
propres de A.
En effet, il faut remarquer que les valeurs propres ne sont pas fournies dans le même ordre que pré-
cédemment. Nous avons, en effet, effectué les calculs avec un logiciel de mathématiques générales,
un logiciel de statistiques nous aurait délivré les valeurs propres par ordre décroissant et ordonné les
vecteurs propres en conséquence.
1
Il faut donc réordonner la matrice des vecteurs propres avant de la multiplier par Dm 2
. Nous laissons
au lectuer le soin d’effectuer la vérification (attention : les vecteurs propres ainsi obtenues ne sont
pas obligatoirement égaux aux vecteurs propres de A obtenus par un autre procédé mails ils leur sont
colinéaires).
12
(Les indices 0,1 et 2 choisis de telle sorte que le vecteur u0 corresponde à la valeur propre 0, u1 à
0.6560 et u2 à 0.3028.)
Le lecteur peut vérifier que u0 , (de matrice colonne U0 ), est colinéaire au vecteur g défini par G.
Nous allons maintenant normer u0 , u1 et u2 pour la métrique dm .
0.1111
U0
kU0 k2 = U0t Dm −1
U0 = 2.1009; = 0.6296
kU0 k
0.2593
−0.1333
U1
kU1 k2 = U1t Dm −1
U1 = 3.4930; = −0.2937
kU1 k
0.4269
−0.2846
U2
kU2 k2 = U2t Dm −1
U2 = 4.2066; = 0.3834
kU2 k
−0.0988
Faisons quelques remarques sur ces résultats :
• le vecteur u0 , après normalisation, est égal au vecteur g ;
• la matrice F ′ étant centrée les vecteurs colonnes qui la composent ont la somme de leurs com-
posantes égale à 0, les deux vecteurs u1 et u2 appartiennent à l’espace engendré par ces vecteurs
colonnes, la somme de leurs composantes est aussi égale à 0 : ils appartiennent à l’hyperplan d’équa-
tion x+y+z=0.
Pour obtenir la matrice des composantes principales CPI il suffit de projeter les individus (c’est à
dire les vecteurs dont les composantes sont les profils-lignes du nuage centré N′I , ces vecteurs sont
les n lignes de la matrice Dn−1 F ′ ) sur les axes principaux définis par les vecteurs normés u0 , u1 , u2 .
Cette projection sera obtnue par produit scalaire pour la métrique dm :
CPI = Dn−1 F ′ Dm
−1
V ECI
où V ECI est la matrice des vecteurs propres normés correspondants respectivement aux valeurs
propres 0.3028, 0, 0.6560.
−0.2846 0.1111 −0.1333
V ECI = 0.3834 0.6296 −0.2937 = (U2 U0 U1 )
−0.0988 0.2593 0.4269
On a
−2.5597 0.0000 −1.1991
−0.0256 0.0005 −0.6132
CPI = 0.2566 0.0000 −0.5476
0.2374 0.0000 0.3260
−0.3798 0.0000 1.6462
Nous remarquons que la deuxième composante principale est nulle, ce qui est normal puisque tous
les profils-lignes de NI appartiennent à un plan orthogonal à g (ce dernier est colinéaire àu0 ), le pre-
mier facteur correspond à la projection sur u2 des coordonnées des classes d’anglais la troisième à la
projection sur u1 .
Afin donc de donner les résultats de faCcon bien claire nous allons réordonner la matrice des coor-
données des cinq classes d’anglais :
−1.1991 −2.5596
−0.6134 −0.0254
CPI réduite et réordonnée : −0.5478 0.2468
0.3260 0.2373
1.6463 −0.3800
Ces résultats sont égaux au signe des vecteurs colonnes et au centième près : le sens des axes facto-
riels est indéfini car les vecteurs propres sont seulement normés.
(F ′ Dm
−1 ′t −1
F Dn )W = λW
Rappelons que d’après notre étude en ACP les valeurs propres non nulles sont les mêmes que celles
de F ′t Dm
−1 F ′t D −1 .
n
Considérons de nouveau la matrice F ′t Dn−1 F ′ Dm
−1 de valeur propre λ et de vecteur propre corres-
(F ′t Dn−1 F ′ Dm
−1
)U = λU
F ′ Dm
−1 ′ −1
F Dn (F ′ Dm
−1
U ) = λ(F ′ Dm
−1
U ).
14
Chaque ligne de cette dernière matrice représente les coordonnées sur les deux axes principaux
des 3 classes d’effectifs non nuls mathématiques.