cours add-r1-part2
DESCRIPTION
TRANSCRIPT
Arthur CHARPENTIER - Analyse des donnees
Analyse des donnees (2)
L’Analyse Factorielle des Correspondances
(simple) AFCS
Arthur Charpentier
http ://perso.univ-rennes1.fr/arthur.charpentier/
blog.univ-rennes1.fr/arthur.charpentier/
Master 2, Universite Rennes 1
1
Arthur CHARPENTIER - Analyse des donnees
De l’ACP a l’AFC
L’ACP est utilise pour tudier les donnes multidimensionnelles, lorsque toutes lesvariables observes sont de type numrique et que l’on veut voir s’il y a des liaisonsentre ces variables.
L’AFC est l’etude de la correspondance entre deux variables qualitatives, croisesdans un tableau de contingence.
L’ACM est une gnralisation de l’analyse factorielle des correspondances (AFC),quand il y a plus de deux variables qualitatives.
Pour rappel, X est une variable qualitative si elle prend des modalites{x1, · · · , xm} non (necessairement) ordonnee.
2
Arthur CHARPENTIER - Analyse des donnees
Le but est de trouver des liaisons pouvant exister entre des modalites de variables,• la base epoux comprend, pour tous les mariages survenus en 1994,◦ la profession (CSP) de l’epoux◦ la profession (CSP) de l’epouse
• la bse nat-prof est basee sur des donnees de 1999, contenant◦ de la nationalite◦ de la profession (CSP)
3
Arthur CHARPENTIER - Analyse des donnees
Exemple introductif, la base epouxAgr(F) Art(F) Cad(F) PrI(F) Emp (F) Ouv(F) Ret(F) Ina(F) Inc(F) Tot
Agricuteur (M) 378 65 159 908 1944 424 12 1000 52 4942
Artisan-Commercant (M) 21 1288 862 2441 4415 426 45 2999 122 12619
Cadres (M) 22 495 8634 10600 6486 426 57 5168 174 32062
Prof. Intermediaire (M) 43 662 3935 19315 20323 1999 86 9012 349 55724
Employe (M) 34 519 1579 7988 22799 2113 83 10389 395 45899
Ouvrier (M) 116 917 1203 9156 40263 10376 158 22921 913 86023
Retraite (M) 12 111 133 321 765 150 1203 943 56 3694
Inactif (M) 10 134 635 2005 2760 494 28 5913 47 12026
Inconnu (M) 0 8 26 90 236 35 3 151 208 757
Total 636 4199 17166 52824 99991 16443 1675 58496 2316 253746
Le tableau “theorique”, sous hypothese d’independance, seraitAgr(F) Art(F) Cad(F) PrI(F) Emp (F) Ouv(F) Ret(F) Ina(F) Inc(F) Tot
Agricuteur (M) 12,4 81,8 334,3 1028,8 1947,4 320,2 32,6 1139,3 45,1 4942
Artisan (M) 31,6 208,8 853,7 2627 4972,6 817,7 83,3 2909,1 115,2 12619
Cadres (M) 80,4 530,6 2169 6674,6 12634,3 2077,7 211,6 7391,2 292,6 32062
PrInt (M) 139,7 922,1 3769,7 11600,4 21958,6 3611 367,8 12846 508,6 55724
Employ (M) 115 759,5 3105,1 9555,1 18086,9 2974,3 303 10581,1 418,9 45899
Ouvrie (M) 215,6 1423,5 5819,5 17908 33898,2 5574,4 567,8 19830,9 785,2 86023
Retrai (M) 9,3 61,1 249,9 769 1455,7 239,4 24,4 851,6 33,7 3694
Inacti (M) 30,1 199 813,6 2503,5 4739 779,3 79,4 2772,4 109,8 12026
Inconn (M) 1,9 12,5 51,2 157,6 298,3 49,1 5 174,5 6,9 757
Total 636 4199 17166 52824 99991 16443 1675 58496 2316 253746
4
Arthur CHARPENTIER - Analyse des donnees
Ce qui donne les contributions au χ2 suivantesAgr(F) Art(F) Cad(F) PrI(F) Emp (F) Ouv(F) Ret(F) Ina(F) Inc(F) Tot
Agricu (M) 10791,5 3,4 91,9 14,2 0 33,6 13 17 1,1 10965,8
Artcom (M) 3,6 5577,2 0,1 13,2 62,5 187,7 17,6 2,8 0,4 5865
Cadres (M) 42,4 2,4 19269,7 2308,6 2992 1313 113 668,7 48,1 26758
PrInt (M) 66,9 73,4 7,2 5130,4 121,8 719,6 215,9 1144,3 50,1 7529,7
Employ (M) 57,1 76,2 750 257 1227,6 249,4 159,7 3,5 1,4 2781,9
Ouvrie (M) 46 180,2 3662,2 4277,3 1195,1 4136 295,8 481,5 20,8 14294,9
Retrai (M) 0,8 40,7 54,7 261 327,7 33,4 56968,1 9,8 14,7 57710,9
Inacti (M) 13,5 21,2 39,2 99,3 826,4 104,4 33,3 3557,9 35,9 4731
Inconn (M) 1,9 1,6 12,4 29 13 4 0,8 3,2 5852,6 5918,5
Total 11023,7 5976,4 23887,5 12389,9 6766,2 6781,1 57817,3 5888,7 6025 136555,8
Les contributions au χ2 sont dans le tableau globales. On pourrait les relativiserpar ligne ou par colonne. Pour cela, regardons deja les fequences moyennes parligne, et par colonne,
5
Arthur CHARPENTIER - Analyse des donnees
Agr(F) Art(F) Cad(F) PrI(F) Emp (F) Ouv(F) Ret(F) Ina(F) Inc(F) Tot
Agricu (M) 59,4 1,5 0,9 1,7 1,9 2,6 0,7 1,7 2,2 1,9
Artcom (M) 3,3 30,7 5 4,6 4,4 2,6 2,7 5,1 5,3 5
Cadres (M) 3,5 11,8 50,3 20,1 6,5 2,6 3,4 8,8 7,5 12,6
PrInt (M) 6,8 15,8 22,9 36,6 20,3 12,2 5,1 15,4 15,1 22
Employ (M) 5,3 12,4 9,2 15,1 22,8 12,9 5 17,8 17,1 18,1
Ouvrie (M) 18,2 21,8 7 17,3 40,3 63,1 9,4 39,2 39,4 33,9
Retrai (M) 1,9 2,6 0,8 0,6 0,8 0,9 71,8 1,6 2,4 1,5
Inacti (M) 1,6 3,2 3,7 3,8 2,8 3 1,7 10,1 2 4,7
Inconn (M) 0 0,2 0,2 0,2 0,2 0,2 0,2 0,3 9 0,3
Total 100 100 100 100 100 100 100 100 100 100
Agr(F) Art(F) Cad(F) PrI(F) Emp (F) Ouv(F) Ret(F) Ina(F) Inc(F) Tot
Agricu (M) 7,6 1,3 3,2 18,4 39,3 8,6 0,2 20,2 1,1 100
Artcom (M) 0,2 10,2 6,8 19,3 35 3,4 0,4 23,8 1 100
Cadres (M) 0,1 1,5 26,9 33,1 20,2 1,3 0,2 16,1 0,5 100
PrInt (M) 0,1 1,2 7,1 34,7 36,5 3,6 0,2 16,2 0,6 100
Employ (M) 0,1 1,1 3,4 17,4 49,7 4,6 0,2 22,6 0,9 100
Ouvrie (M) 0,1 1,1 1,4 10,6 46,8 12,1 0,2 26,6 1,1 100
Retrai (M) 0,3 3 3,6 8,7 20,7 4,1 32,6 25,5 1,5 100
Inacti (M) 0,1 1,1 5,3 16,7 23 4,1 0,2 49,2 0,4 100
Inconn (M) 0 1,1 3,4 11,9 31,2 4,6 0,4 19,9 27,5 100
Total 0,3 1,7 6,8 20,8 39,4 6,5 0,7 23,1 0,9 100
On peut aussi regarder en relativisant, globalement
6
Arthur CHARPENTIER - Analyse des donnees
Agr(F) Art(F) Cad(F) PrI(F) Emp (F) Ouv(F) Ret(F) Ina(F) Inc(F) Tot
ColPct 30,5 0,8 0,5 0,9 1 1,3 0,4 0,9 1,2 1
Agricu (M) 0,7 6,2 1 0,9 0,9 0,5 0,5 1 1,1 1
Artcom (M) 0,3 0,9 4 1,6 0,5 0,2 0,3 0,7 0,6 1
Cadres (M) 0,3 0,7 1 1,7 0,9 0,6 0,2 0,7 0,7 1
PrInt (M) 0,3 0,7 0,5 0,8 1,3 0,7 0,3 1 0,9 1
Employ (M) 0,5 0,6 0,2 0,5 1,2 1,9 0,3 1,2 1,2 1
Ouvrie (M) 1,3 1,8 0,5 0,4 0,5 0,6 49,3 1,1 1,7 1
Retrai (M) 0,3 0,7 0,8 0,8 0,6 0,6 0,4 2,1 0,4 1
Inacti (M) 0 0,6 0,5 0,6 0,8 0,7 0,6 0,9 30,1 1
Inconn (M) 1 1 1 1 1 1 1 1 1 1
Pour etudier cette matrice, une idee est d’utiliser la decomposition en valeurssingulieres. Pour cela on generalise la propriete de diagonalisation d’une matricea une matrice non necessairement carree.
Soit M une matrice m× n, alors il existe une factorisation de la formeM = UΣV ′ ou• U est une matrice unitaire m×m, i.e. U ′U = UU ′ = I, i.e. U−1 = U ′,• Σ est une matrice m× n dont les coefficients diagonaux sont des reels positifs
ou nuls et tous les autres sont nuls (c’est donc une matrice “diagonale” dont onimpose que les coefficients soient positifs ou nuls)
7
Arthur CHARPENTIER - Analyse des donnees
• V est une matrice unitaire n× nAussi,• U contient un ensemble de vecteurs de base orthonorms pour M, dits “de
sortie”• Σ contient les valeurs “singulires” de la matrice M• V contient un ensemble de vecteurs de base orthonorms pour M, dits “d’entre”
ou “d’analyse”On notera que
M ′M = V Σ′U ′ UΣV ′ = V (Σ′Σ)V ′ et MM ′ = UΣV ′ V Σ′U ′ = U(ΣΣ′)U ′.
Par exemple, si
M =
1 0 0 0 2
0 0 3 0 0
0 0 0 0 0
0 4 0 0 0
,
8
Arthur CHARPENTIER - Analyse des donnees
la decomposition en valeurs singulieres de M est alors
U =
0 0 1 0
0 1 0 0
0 0 0 −1
1 0 0 0
, Σ =
4 0 0 0 0
0 3 0 0 0
0 0 2.236 0 0
0 0 0 0 0
,
et V ′ =
0 1 0 0 0
0 0 1 0 0
0.447 0 0 0 0.894
0 0 0 1 0
−0.894 0 0 0 0.447
Remarque Assez souvent, on ne renvoit pas Σ mais simplement le vecteurσ = [σi] = [Σi,i].
Remarque Il est aussi parfois possible de se contenter d’une matrice n× n, Σ
9
Arthur CHARPENTIER - Analyse des donnees
qui sera diagonale, et V qui sera alors une matrice n×m ou on enleve le surplusde lignes ou de colonnes. En effet, cette derniere ligne/colonne n’intervient quepour normaliser la matrice.> M <- matrix(c(1,0,0,0,0,0,0,4,0,3,0,0,0,0,0,0,2,0,0,0), 4,5)
> M
[,1] [,2] [,3] [,4] [,5]
[1,] 1 0 0 0 2
[2,] 0 0 3 0 0
[3,] 0 0 0 0 0
[4,] 0 4 0 0 0
> svd(M)
$d
[1] 4.000000 3.000000 2.236068 0.000000
$u
[,1] [,2] [,3] [,4]
[1,] 0 0 1 0
[2,] 0 1 0 0
[3,] 0 0 0 -1
[4,] 1 0 0 0
10
Arthur CHARPENTIER - Analyse des donnees
$v
[,1] [,2] [,3] [,4]
[1,] 0 0 0.4472136 0
[2,] 1 0 0.0000000 0
[3,] 0 1 0.0000000 0
[4,] 0 0 0.0000000 1
[5,] 0 0 0.8944272 0
Par convention, on range les termes Σi,i par ordre dcroissant, de telle sorte que Σest dtermine de faon unique par M , alors que U et V ne le sont pas.
Remarque Si M est une matrice carree, M = UΣV ′ = V ΛV ′ ou Λ est unematrice diagonale composee des valeurs propres, et v contient les vecteurspropres. On peut alors etendre la notion de valeurs propres et de vecteurs propresau cas m× n.
Un rel positif λ est appel valeur singuliere de M si et seulement s’il existe unvecteur unitaire u dans Rm et un vecteur unitaire v dans Rn tel que
Mv = λu et M ′u = λv
11
Arthur CHARPENTIER - Analyse des donnees
Exemple introductif, la base epoux
en enlevant
0 1 2 3 4 5 6
−1.
5−
1.0
−0.
50.
00.
51.
0
Axe 1
Axe
2
Agricu_M
Artcom_M
Cadres_M
PrInt_M
Employ_M
Ouvrie_M
Retrai_M
Inacti_M
Inconn_MAgricu_F
Artcom_F
Cadres_F
PrInt_F
Employ_F
Ouvrie_F
Retrai_F
Inacti_FInconn_F
●
0 1 2 3 4 5 6 7−
3−
2−
10
12
3
CA factor map
Dim 1 (43.01%)
Dim
2 (
30.6
7%)
●
●
●
●
●
●
●
●
●
Agricu_MArtcom_M
Cadres_M
PrInt_MEmploy_MOuvrie_M
Retrai_MInacti_MInconn_MAgricu_F
Artcom_F
Cadres_F
PrInt_F
Employ_FOuvrie_F
Retrai_F
Inacti_FInconn_F
12
Arthur CHARPENTIER - Analyse des donnees
Exemple introductif, la base epoux
En enlevant les modalites retraites
−1.5 −1.0 −0.5 0.0 0.5 1.0
01
23
4
Axe 1
Axe
2
Agricu_M
Artcom_MCadres_M PrInt_MEmploy_MOuvrie_MInacti_MInconn_M
Agricu_F
Artcom_FCadres_F PrInt_F Employ_FOuvrie_FInacti_FInconn_F
●
−2 −1 0 1 2 30
12
34
5
CA factor map
Dim 1 (53.55%)
Dim
2 (
14.2
6%)
●
● ●●●●●
●
Agricu_M
Artcom_MCadres_MPrInt_MEmploy_MOuvrie_MInacti_MInconn_M
Agricu_F
Artcom_FCadres_FPrInt_FEmploy_FOuvrie_FInacti_FInconn_F
13
Arthur CHARPENTIER - Analyse des donnees
Exemple introductif, la base epoux
En enlevant les modalites agriculteurs
−1.5 −1.0 −0.5 0.0 0.5 1.0
−0.
50.
00.
5
Axe 1
Axe
2
Artcom_MCadres_M
PrInt_M
Employ_M
Ouvrie_M
Inacti_MInconn_MArtcom_F
Cadres_F
PrInt_F
Employ_F
Ouvrie_FInacti_FInconn_F ●
−0.5 0.0 0.5 1.0
−0.
50.
00.
51.
0
CA factor map
Dim 1 (62.24%)
Dim
2 (
11.4
1%)
●●
●
●
●
●
●
Artcom_M Cadres_M
PrInt_M
Employ_M
Ouvrie_M
Inacti_MInconn_M Artcom_F Cadres_F
PrInt_F
Employ_F
Ouvrie_FInacti_FInconn_F
14
Arthur CHARPENTIER - Analyse des donnees
Exemple introductif, la base nat-profCS Esp. It. Ptg UE Alg. Mrc Tns Turc Autr Fr(N) Fr(A)
Agriculteurs 645 491 1045 3164 298 1859 269 756 1422 625176 7042
Artisans 2942 4890 15413 3485 5429 4190 2687 4315 8205 673502 36024
Commercants 1608 3868 4122 7608 8758 5689 2580 2210 11517 638463 38546
Chefs Entreprise 378 918 1315 1862 506 432 215 248 1707 158884 6536
Prof Liberales 403 567 442 4198 1352 547 430 57 3924 324568 18846
Cadres Public 2285 3027 1719 13571 4225 2431 1204 451 19991 1174234 53772
Cadres Entrepr 2765 4515 4095 20922 3711 2860 1367 401 16890 1417477 58088
ProfInt Public 2237 2021 3231 14440 7637 5067 1497 897 17188 2265795 80185
Prof Int Entrepr 3152 4649 8123 14588 6249 4347 1898 1066 16497 1709697 72406
Techniciens 1703 1963 4980 3709 3554 2784 777 766 6994 878747 37703
Contremaitres 1889 2789 9543 1817 2503 1622 849 756 3063 528347 23160
Employes Public 3200 2508 14076 4606 16605 10886 3710 1551 25211 2671462 112401
Employes Entrepr 3352 3286 10208 10854 8831 5489 1809 1503 16418 2021925 94354
Employes Commerc 2315 2333 10189 3644 8194 7239 2458 2411 13158 1008498 55046
Personnels Serv 10158 5965 70077 6652 24236 21773 7403 3681 49904 1353982 95530
Ouvriers Qualif 15516 19235 111719 9922 60338 52933 21611 27846 60207 3581986 191803
Ouvriers Non Qual 8625 9118 80247 5057 50597 52370 15794 31240 62212 2170976 125124
Ouvriers Agricol 2061 412 8902 931 1594 17601 1742 3027 1535 251897 7564
Anc Agriculteurs 1421 3199 505 2544 180 119 13 36 1291 1051097 19750
Anc Artisans 2645 5395 1117 5626 3307 842 550 185 3582 874630 48065
Anc Cadre Prof Int 4063 7560 2210 20573 4374 1443 802 274 10804 2102956 95064
Anc Employe Ouvr 44237 56806 38730 19745 62689 22858 7193 3100 29445 5720700 352718
Chomeurs Jam Trav 482 487 1532 785 13868 13165 3682 4810 19299 270547 22884
InactDiv 42112 54630 151843 97623 176181 267759 73034 114002 323256 19423134 703870
15
Arthur CHARPENTIER - Analyse des donnees
Exemple introductif, la base nat-profCS Esp. It. Ptg UE Alg. Mrc Tns Turc Autr Fr(N) Fr(A)
Agriculteurs 1758 2202 6095 3050 5215 5557 1685 2256 7943 580544 25862
Artisans 2084 2610 7224 3615 6181 6585 1998 2674 9413 688048 30651
Commercants 1985 2486 6881 3443 5888 6273 1903 2547 8967 655400 29196
ChefsEntreprise 474 593 1642 822 1405 1497 454 608 2140 156400 6967
ProfLiberales 973 1218 3373 1688 2886 3075 933 1248 4395 321236 14310
CadresPublic 3496 4378 12120 6065 10370 11049 3351 4486 15793 1154377 51424
CadresEntrepr 4197 5257 14551 7282 12451 13265 4024 5387 18962 1385974 61741
ProfIntPublic 6571 8230 22781 11400 19493 20768 6300 8433 29687 2169870 96661
ProfIntEntrepr 5045 6318 17490 8752 14965 15944 4836 6474 22791 1665848 74209
Techniciens 2584 3236 8957 4482 7664 8165 2477 3316 11672 853124 38004
Contremaitres 1578 1976 5470 2737 4681 4987 1513 2025 7128 521032 23210
EmployesPublic 7847 9828 27205 13614 23278 24801 7523 10071 35450 2591172 115429
EmployesEntrepr 5963 7468 20673 10345 17689 18846 5716 7653 26939 1969024 87714
EmployesCommerc 3054 3825 10588 5298 9059 9652 2928 3919 13797 1008442 44923
PersonnelsServ 4515 5655 15655 7834 13395 14272 4329 5795 20400 1491087 66424
OuvriersQualif 11370 14240 39419 19726 33729 35936 10900 14592 51367 3754580 167256
OuvriersNonQual 7149 8954 24786 12403 21208 22595 6854 9175 32298 2360772 105165
OuvriersAgricol 814 1019 2822 1412 2414 2572 780 1044 3677 268740 11972
AncAgriculteurs 2957 3704 10252 5130 8772 9346 2835 3795 13360 976502 43500
AncArtisans 2590 3243 8978 4493 7682 8185 2483 3324 11700 855170 38095
AncCadreProfInt 6160 7715 21357 10688 18274 19470 5906 7906 27830 2034199 90618
AncEmployeOuvr 17407 21801 60349 30200 51638 55016 16688 22340 78641 5748081 256060
ChomeursJamTrav 962 1205 3337 1670 2855 3042 923 1235 4348 317807 14157
InactDiv 58662 73471 203379 101775 174022 185407 56238 75286 265023 19371250 862932
16
Arthur CHARPENTIER - Analyse des donnees
Exemple introductif, la base nat-profCS Esp. It. Ptg UE Alg. Mrc Tns Turc Autr Fr(N) Fr(A)
Agriculteurs 705 1329 4184 4 4636 2460 1190 998 5353 3431 13695
Artisans 354 1993 9284 5 92 871 238 1007 155 308 942
Commercants 72 769 1106 5037 1399 54 241 45 725 438 2994
ChefsEntreprise 19 178 65 1317 575 758 126 213 88 39 27
ProfLiberales 334 348 2547 3734 815 2078 271 1137 50 35 1438
CadresPublic 419 417 8926 9289 3642 6722 1376 3630 1116 342 107
CadresEntrepr 489 105 7514 25551 6135 8162 1754 4614 226 716 216
ProfIntPublic 2859 4684 16778 810 7211 11871 3661 6735 5262 4241 2808
ProfIntEntrepr 710 441 5016 3891 5077 8435 1785 4518 1738 1154 44
Techniciens 300 501 1766 133 2204 3547 1167 1961 1875 770 2
Contremaitres 61 334 3032 310 1013 2270 291 795 2319 103 0
EmployesPublic 2752 5452 6336 5960 1913 7807 1932 7207 2958 2488 79
EmployesEntrepr 1143 2342 5297 25 4436 9467 2671 4942 4109 1421 503
EmployesCommerc 179 582 15 517 83 603 75 580 30 0 2281
PersonnelsServ 7051 17 189191 178 8774 3943 2183 771 42671 12607 12754
OuvriersQualif 1512 1752 132606 4873 20991 8039 10525 12039 1521 7934 3603
OuvriersNonQual 305 3 124102 4351 40726 39235 11662 53064 27705 15259 3788
OuvriersAgricol 1911 362 13104 164 279 87811 1186 3763 1248 1056 1623
AncAgriculteurs 798 69 9267 1304 8416 9110 2809 3723 10903 5698 12967
AncArtisans 1 1427 6883 286 2492 6588 1505 2964 5632 443 2609
AncCadreProfInt 714 3 17166 9144 10573 16691 4411 7367 10417 2324 218
AncEmployeOuvr 41354 56206 7745 3619 2365 18797 5402 16570 30776 130 36487
ChomeursJamTrav 240 428 976 469 42482 33690 8252 10347 51410 7028 5379
InactDiv 4669 4831 13059 169 27 36579 5016 19910 12795 139 29320
17
Arthur CHARPENTIER - Analyse des donnees
Exemple introductif, la base nat-prof
●
−0.2 0.0 0.2 0.4 0.6 0.8 1.0
−0.
4−
0.2
0.0
0.2
0.4
0.6
CA factor map
Dim 1 (61.9%)
Dim
2 (
18.4
%)
●
●
●●
●
●●●
●●
●
●● ●
●
●
●
●
●
●
●
●
●
●
Agriculteurs
ArtisansCommercantsChefsEntrepriseProfLiberalesCadresPublicCadresEntreprProfIntPublic
ProfIntEntreprTechniciens
Contremaitres
EmployesPublicEmployesEntreprEmployesCommerc
PersonnelsServ
OuvriersQualifOuvriersNonQual
OuvriersAgricol
AncAgriculteurs
AncArtisansAncCadreProfInt
AncEmployeOuvr
ChomeursJamTrav
InactDiv
EspagnolItalien
Portugais
AutresUE
Algerien
Marocain
Tunisien
Turc
Autres
FrancaisNaissance
Francaisacquis
−1.0 −0.5 0.0 0.5
−1.
0−
0.5
0.0
0.5
Axe 1A
xe 2
Agriculteurs
ArtisansCommercantsChefsEntrepriseProfLiberalesCadresPublicCadresEntreprProfIntPublicProfIntEntreprTechniciensContremaitresEmployesPublicEmployesEntreprEmployesCommerc
PersonnelsServOuvriersQualif
OuvriersNonQual
OuvriersAgricol
AncAgriculteursAncArtisansAncCadreProfInt
AncEmployeOuvr
ChomeursJamTrav
InactDiv
EspagnolItalien
Portugais
AutresUE
Algerien
Marocain
Tunisien
Turc
Autres
FrancaisNaissance
Francaisacquis
Si les seules variables qui nous interesent sont l’emploi et les travailleursetrangers, on peut enlever les lignes des retraites et sans professions, en enleverles deux dernieres colonnes.
18
Arthur CHARPENTIER - Analyse des donnees
Exemple introductif, la base nat-prof
●
−0.5 0.0 0.5 1.0
−0.
50.
00.
51.
0
CA factor map
Dim 1 (71.57%)
Dim
2 (
12.4
%)
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
Agriculteurs
Artisans
Commercants
ChefsEntrepriseProfLiberales
CadresPublicCadresEntreprProfIntPublic
ProfIntEntreprTechniciens
Contremaitres
EmployesPublicEmployesEntreprEmployesCommerc
PersonnelsServ
OuvriersQualifOuvriersNonQual
OuvriersAgricol
EspagnolItalienPortugais
AutresUE
Algerien
Marocain
Tunisien
Turc
Autres
−1.5 −1.0 −0.5 0.0 0.5 1.0−
0.5
0.0
0.5
1.0
Axe 1
Axe
2
Agriculteurs
Artisans
CommercantsChefsEntreprise
ProfLiberalesCadresPublic
CadresEntreprProfIntPublicProfIntEntrepr
Techniciens
Contremaitres
EmployesPublicEmployesEntreprEmployesCommerc
PersonnelsServ
OuvriersQualifOuvriersNonQual
OuvriersAgricol
EspagnolItalien Portugais
AutresUE
Algerien
Marocain
Tunisien
Turc
Autres
19
Arthur CHARPENTIER - Analyse des donnees
Un peu de formalisme
Dans l’analyse des correspondances simples, on etudie la population suivant deuxcriteres X et Y .
X peut prendre les modalites {x1, · · · , xI} et Y les modalites {y1, · · · , yJ}.Definition 1. On appelle tableau de contingence la matrice K, I × J , K = [ni,j ]ou ni,j est le nombre d’individus dont les modalites sont xi et yj.
On parle parfois aussi de tri-croise.
Example Considerons l’exemple ou X designe la couleur des cheveux, et Y lacouleur des yeux, de la base HairEyeColor,> data(HairEyeColor)
> HairEyeColor[,,Sex="Female"]
Eye
Hair Brown Blue Hazel Green
Black 36 9 5 2
Brown 66 34 29 14
Red 16 7 7 7
Blond 4 64 5 8
20
Arthur CHARPENTIER - Analyse des donnees
Definition 2. Les effets marginaux sont notes
ni,· =∑j
ni,j et n·,j =∑i
ni,j
L’effectif total de la population est alors n =∑i
ni,· =∑j
n·,j =∑i,j
ni,j .
> apply(HairEyeColor[,,Sex="Female"],2,sum)
Brown Blue Hazel Green
122 114 46 31
> apply(HairEyeColor[,,Sex="Female"],1,sum)
Black Brown Red Blond
52 143 37 81
Remarque On peut aussi bien travailler sur les effectifs que sur les frequences.
21
Arthur CHARPENTIER - Analyse des donnees
On pose alors F =1nK = [fi,j ], ou fi,j =
ni,jn
.
> HairEyeColor[,,Sex="Female"]/sum(HairEyeColor[,,Sex="Female"])
Eye
Hair Brown Blue Hazel Green
Black 0.11501597 0.02875399 0.01597444 0.006389776
Brown 0.21086262 0.10862620 0.09265176 0.044728435
Red 0.05111821 0.02236422 0.02236422 0.022364217
Blond 0.01277955 0.20447284 0.01597444 0.025559105
De la meme maniere, on peut definir les effets marginaux
fi,· =∑j
fi,j et f·,j =∑i
fi,j
22
Arthur CHARPENTIER - Analyse des donnees
Petits rappels de probabilite
Si X et Y sont deux variables dont les modalites sont {x1, · · · , xI} et Y lesmodalites {y1, · · · , yJ}, on note
pi,j = P(X = xi, Y = yj) la loi jointe.
Alors les lois marginales sont
pi· = P(X = xi) =∑j
P(X = xi, Y = yj) =∑j
pi,j ,
p·j = P(Y = yj) =∑i
P(X = xi, Y = yj) =∑i
pi,j ,
d’apres la formule des probabilites totales.
23
Arthur CHARPENTIER - Analyse des donnees
Petits rappels de probabilite
On definira aussi les lois conditionnelles
pi|j = P(X = xi|Y = yj) =P(X = xi, Y = yj)
P(Y = yj)=pi,jp·j
,
pj|i = P(Y = yj |X = xi) =P(X = xi, Y = yj)
P(X = xi)=pi,jpi·
.
Rappelons egalement que X et Y sont independante si et seulement si pour touti, j
pi,j = P(X = xi, Y = yj) = P(X = xi)× P(Y = yj) = pi· × p·j .
24
Arthur CHARPENTIER - Analyse des donnees
Retour aux effectifs et frequences (empiriques)Definition 3. On appelera profils lignes les frequences conditionnalles
fj|i =fi,jfi,·
,
Li = [f1|i, · · · , fj|i, · · · , fj|I ].
> HairEyeColor[,,Sex="Female"]/apply(HairEyeColor[,,Sex="Female"],1,sum)
Eye
Hair Brown Blue Hazel Green
Black 0.69230769 0.1730769 0.09615385 0.03846154
Brown 0.46153846 0.2377622 0.20279720 0.09790210
Red 0.43243243 0.1891892 0.18918919 0.18918919
Blond 0.04938272 0.7901235 0.06172840 0.09876543
Definition 4. On appelera profil ligne moyen le vecteur
L =∑i
fi,·Li
> M <- HairEyeColor[,,Sex="Female"]/apply(HairEyeColor[,,Sex="Female"],1,sum)
25
Arthur CHARPENTIER - Analyse des donnees
> (P <- apply(HairEyeColor[,,Sex="Female"],1,sum)/sum(HairEyeColor[,,Sex="Female"]))
Black Brown Red Blond
0.1661342 0.4568690 0.1182109 0.2587859
> (L=t(P)%*%M)
Eye
Brown Blue Hazel Green
[1,] 0.3897764 0.3642173 0.1469649 0.09904153
Rappelons que, par contruction, les profils lignes sont des points du simplexe deRJ .
26
Arthur CHARPENTIER - Analyse des donnees
Definition 5. On appelle profils colonnes les frequences conditionnalles
fj|i =fi,jfi,·
,
Cj = [f1|j , · · · , fi|j , · · · , fI|j ].
27
Arthur CHARPENTIER - Analyse des donnees
> t(t(HairEyeColor[,,Sex="Female"])/apply(HairEyeColor[,,Sex="Female"],2,sum))
Eye
Hair Brown Blue Hazel Green
Black 0.29508197 0.07894737 0.1086957 0.06451613
Brown 0.54098361 0.29824561 0.6304348 0.45161290
Red 0.13114754 0.06140351 0.1521739 0.22580645
Blond 0.03278689 0.56140351 0.1086957 0.25806452
28
Arthur CHARPENTIER - Analyse des donnees
Notons que l’on peut obtenir un profil colonne moyen
C =∑j
f·,jCj
> M <- t(t(HairEyeColor[,,Sex="Female"])/apply(HairEyeColor[,,Sex="Female"],2,sum))
> (P <- apply(HairEyeColor[,,Sex="Female"],2,sum)/sum(HairEyeColor[,,Sex="Female"]))
Brown Blue Hazel Green
0.38977636 0.36421725 0.14696486 0.09904153
> (C=M%*%P)
Hair [,1]
Black 0.1661342
Brown 0.4568690
Red 0.1182109
Blond 0.2587859
29
Arthur CHARPENTIER - Analyse des donnees
Hypothese d’independance, et chi-deux
Les variables X et Y sont independantes si une des conditions suivante estsatisfaite• tous les profils lignes sont egaux, L1 = · · · = LI = L
• tous les profils colonnes sont egaux, C1 = · · · = CJ = C
• pour tout i et pour tout j
fi,j = fi,·f·,j = f⊥i,j ou ni,j =ni,·n·,jn
= n⊥i,j
Notons queni,·n·,jn
est parfois appele effectif theorique, sous hypothesed’independance.> C%*%L
Eye
Hair Brown Blue Hazel Green
Black 0.06475518 0.06050894 0.02441589 0.01645418
Brown 0.17807674 0.16639958 0.06714369 0.04524901
Red 0.04607580 0.04305444 0.01737284 0.01170779
Blond 0.10086864 0.09425430 0.03803244 0.02563056
30
Arthur CHARPENTIER - Analyse des donnees
> HairEyeColor[,,Sex="Female"]/sum(HairEyeColor[,,Sex="Female"])
Eye
Hair Brown Blue Hazel Green
Black 0.11501597 0.02875399 0.01597444 0.006389776
Brown 0.21086262 0.10862620 0.09265176 0.044728435
Red 0.05111821 0.02236422 0.02236422 0.022364217
Blond 0.01277955 0.20447284 0.01597444 0.025559105
Definition 6. On appelera distance du chi-deux entre X et Y , la quantite
χ2 = nϕ = n∑i,j
(fi,j − f⊥i,j)2
f⊥i,j︸ ︷︷ ︸contribution au χ2
= =∑i,j
(ni,j − n⊥i,j)2)n⊥i,j
= n
∑i,j
n2i,j
ni,·n·,j− 1
.
31
Arthur CHARPENTIER - Analyse des donnees
Hypothese d’independance, et chi-deux
Cette grandeur est souvent utilisee comme test d’independance. En effet, sousl’hypothese H0 : X ⊥⊥ Y , χ2 suit une loi du chi-deux a (I − 1)(J − 1) degres deliberte.
> (Chi2 <- (HairEyeColor[,,Sex="Female"]/sum(HairEyeColor[,,Sex="Female"])-C%*%L)^2/C%*%L)
Eye
Hair Brown Blue Hazel Green
Black 0.0390107445 0.016664917 0.002918510 6.156021e-03
Brown 0.0060362404 0.020058724 0.009690584 5.988995e-06
Red 0.0005518279 0.009942881 0.001434067 9.699490e-03
Blond 0.0769286421 0.128886699 0.012793165 1.991869e-07
> sum(Chi2)
[1] 0.3407787
> sum(M1/M2)*sum(HairEyeColor[,,Sex="Female"])
[1] 106.6637
> chisq.test(HairEyeColor[,,Sex="Female"])
Pearson’s Chi-squared test
32
Arthur CHARPENTIER - Analyse des donnees
data: HairEyeColor[, , Sex = "Female"]
X-squared = 106.6637, df = 9, p-value < 2.2e-16
Warning message:
In chisq.test(HairEyeColor[, , Sex = "Female"]) :
l’approximation du Chi-2 est peut-tre incorrecte
33
Arthur CHARPENTIER - Analyse des donnees
Le but de l’AFC
Les objectifs de l’analyse factorielle des correspondances (AFC) sont de• comparer les profils-lignes entre eux,• comparer les profils-colonnes entre eux,• reperer les cases du tableau ou les effectifs observs ni,j sont nettement
differents des effectifs theoriques (sous hypothese d’independance) n⊥i,j , pourmettre en vidence les modalits xi et yj qui s’attirent (cas ou ni,j > n⊥i,j) etcelles qui se repoussent (cas ou ni,j < n⊥i,j)
L’AFC est une methode faisant apparatre les carts la situation d’indpendance,au niveau des lignes, des colonnes, ou des cases du tableau de contingence.
34
Arthur CHARPENTIER - Analyse des donnees
Utiliser la distance du chi-deux
L’idee pour comparer des profils lignes ou des profils colonnes sera d’utiliser ladistance du χ2. La distance entre deux profils lignes Li1 et Li2 sera alors
d(Li1 , Li2) =∑j
1f·,j
(fi1,jfi1,·
− fi2,jfi2,·
)2
Pour utiliser ce que nous avions vu sur l’analyse d’un nuage de points, onrepresente chaque modalite xi par un vecteur de RJ xi = [xji ] ou
xji =fj|i√f·,j
=fi,j
fi,·√f·,j
de telle sorte que la distance euclidienne
d(xi1 , xi2) = d(Li1 , Li2).
De maniere duale, on peut aussi s’interesser a la variable Y .
35
Arthur CHARPENTIER - Analyse des donnees
Un peu decriture matricielle
Si K designe la matrice associee au tableau de contingence, K = [ni,j ], on note
DX = diag(n1,·, · · · , nI,·) et DY = diag(n·,1, · · · , n·,J).
On peut alors obtenir facilment les profils lignes et colonnes, en notant que
L = D−1X K et C = KD−1
Y .
=⇒ on peut alors etudier le nuage des profils lignes, dans RJ , ou a chaque pointon associe un poids egal a sa frequence marginale : la matrice des poids est alors1nDX .
Le centre de gravite du nuage est le profil ligne moyen
L =1n
(D−1X K
)′DX1.
36
Arthur CHARPENTIER - Analyse des donnees
On fait alors une ACP sur ce nuage de points munis, de cette metrique. En effet
d(Li1 , Li2) = ‖Li1 , Li2‖nD−1Y.
Cette ponderation n/n·,j permet de donner une meme importance aux“variables”, i.e. aux colonnes j. En effet, supposons que l’on regroupe deuxmodalites j1 et j2. L’effectif de cette nouvelle modailite, notee j0 est alorsnj0 = nj1 + nj2 . Si l’on mesure d(Li, Li′) dans les deux cas, on notera que
n
n·,j1
(ni,j1ni,·− ni′,j1
ni′,·
)2
+n
n·,j2
(ni,j2ni,·− ni′,j2
ni′,·
)2
=n
n·,j0
(ni,j0ni,·− ni′,j0
ni′,·
)2
=n
n·,j1 + n·,j2
(ni,j1 + n·,j2
ni,·− ni′,j1 + n·,j2
ni′,·
)2
c’est a dire que la distance entre deux profils ligne reste inchangee.
37
Arthur CHARPENTIER - Analyse des donnees
Notons que l’inertie totale du nuage des profils lignes est
I =∑i
ni,·nd(Li, L) =
∑i,j
ni,·n
(ni,ini,·− n·,j
n
)2
=χ2
n,
i.e. l’inertie mesure la distance a l’independance.
L’AFC consiste a faire deux ACP,• sur les profils lignes,◦ sur le tableau de donnees X = D−1
X K
◦ avec pour metrique M = nD−1Y
◦ et pour matrice de poids D =1nDX
• sur les profils colonnes,◦ sur le tableau de donnees X = D−1
Y K ′
◦ avec pour metrique M = nD−1X
◦ et pour matrice de poids D =1nDY
38
Arthur CHARPENTIER - Analyse des donnees
Les axes principaux
Une fois construits les nuages, on peut rechercher les axes (et facteurs)principaux.
Le nuage des profiles lignes etant dans le simplexe de RJ , il existe une valeurpropres “trivial”, orthogonal a cet hyperplan, assoce a l valeur propre (notee)λ0 = 0.
Les J − 1 autres axes principaux sont notes uα, α = 1, · · · , J − 1, et verifient
DY−1K ′D−1X Kuα = λαuα, pour α = 1, · · · , J − 1.
On notera ∆uα ces axes.
Les facteurs principaux sont cα = [cαi ], ou cαi = x′iuα.
Pour les profils colonnes, les I − 1 axes principaux (non triviaux) sont notes vα,α = 1, · · · , I − 1, et verifient
DX−1KD−1Y K ′vα = λαvα, pour α = 1, · · · , J − 1.
39
Arthur CHARPENTIER - Analyse des donnees
On notera que les deux analyses donnent les memes valeurs propres. De plus, lesfacteurs propres de l’un sont les composantes principales de l’autre.
Pour resumer, les coordonnees des projections des lignes et des colonness’obtiennent en cherchant les vecteurs propres des produits des deux tableaux deprofils ligne et colonne.
Et surtout, il est possible de projeter les deux nuages sur une memerepresentation
> bd=as.data.frame(HairEyeColor[,,Sex="Female"])
> dudi.coa(bd, scannf = FALSE, nf = 3)
40
Arthur CHARPENTIER - Analyse des donnees
Les formules de transition
Il est possible de representer les deux analyses simultanement. En effet, notonsque √
λαdαj =
∑i
fi,jf·,j︸︷︷︸fi|j
cαi
√λαc
αi =
∑i
fi,jfi,·︸︷︷︸ωfj|i
dαj
Ceci signifie que le point de coordonnees (√λαd
αj ,√λαd
αj ) est le barycentre des
points (cαi , cβi ), i = 1, · · · , I auquels on a affecte des poids fi|j .
De meme (√λαc
αi ,√λαc
αi ) est le barycentre des points (dαj , d
βj ), j = 1, · · · , J
auquels on a affecte des poids fj|i.
=⇒ on en deduit que pour tout α, 0 ≤ λα ≤ 1.
On super pose alors les projections des deux nuages sur des plans engendres par
41
Arthur CHARPENTIER - Analyse des donnees
les axes de meme rang, en confondant alors
∆uα = ∆vα = ∆α
42
Arthur CHARPENTIER - Analyse des donnees
Mise en oeuvre sur un cas pratique (1)
Considerons l’exemple de l’etude de la correspondance entre• la categorie socioprofessionnelle• le type d’hebergement en vacancesSource : M. Goguel (1967). Les vacances des Franais en 1966. Etudes etconjoncture.
CSP Hotel Location Res.Second Parents Amis Camping Sej.org Autres Total
Agriculteurs 195 62 1 499 44 141 49 65 1056
Patrons 700 354 229 959 185 292 119 140 2978
Cadres.sup 961 471 633 1580 305 360 162 148 4620
Cadre.moy 572 537 279 1689 206 748 155 112 4298
Employes 441 404 166 1079 178 434 178 92 2972
Ouvriers 783 1114 387 4052 497 1464 525 387 9209
Autres.actifs 142 103 210 1133 132 181 46 59 2006
Inactifs 741 332 327 1789 311 236 102 102 3940
Total 4535 3377 2232 12780 1858 3856 1336 1105 31079
43
Arthur CHARPENTIER - Analyse des donnees
> base<-read.table("http://perso.univ-rennes1.fr/arthur.charpentier/csp-vac.csv",header=TRUE,sep=";")
> AFC<-base[1:(nrow(base)-1),2:(ncol(base)-1)]
> rownames(AFC)<-as.character(base$CSP[1:(nrow(base)-1)])
> AFC
Hotel Location Res.Second Parents Amis Camping Sej.org Autres
Agriculteurs 195 62 1 499 44 141 49 65
Patrons 700 354 229 959 185 292 119 140
Cadres.sup 961 471 633 1580 305 360 162 148
Cadre.moy 572 537 279 1689 206 748 155 112
Employes 441 404 166 1079 178 434 178 92
Ouvriers 783 1114 387 4052 497 1464 525 387
Autres.actifs 142 103 210 1133 132 181 46 59
Inactifs 741 332 327 1789 311 236 102 102
On fait ensuite une AFC en utilisant
> library(FactoMineR)
> S=CA(AFC, ncp = 5, row.sup = NULL, col.sup = NULL, graph = TRUE)
44
Arthur CHARPENTIER - Analyse des donnees
Sta
ndar
dize
dR
esid
uals
:<
−4
−4:
−2
−2:
00:
22:
4>
4
AgriculteursPatrons Cadres.sup Cadre.moyEmployes Ouvriers Autres.actifsInactifsH
otel
Loca
tion
Res
.Sec
ond
Par
ents
Am
isC
ampi
ngS
ej.o
rgA
utre
s
●
−0.2 0.0 0.2 0.4
−0.
4−
0.2
0.0
0.2
CA factor map
Dim 1 (59.98%)
Dim
2 (
24%
)
●
●
●
●
●
●
●
●
Agriculteurs
Patrons
Cadres.sup
Cadre.moy
Employes
Ouvriers
Autres.actifs
Inactifs
HotelLocation
Res.SecondParents
Amis
CampingSej.org
Autres
Les modalites de la variable csp se projettent de la maniere suivante
> S$col
$coord
Dim 1 Dim 2 Dim 3 Dim 4 Dim 5
45
Arthur CHARPENTIER - Analyse des donnees
Hotel 0.33415248 0.15081675 -0.099232613 -0.033916543 0.001276274
Location -0.07791859 0.17251300 0.077248428 0.022111480 -0.055525029
Res.Second 0.40241445 -0.10332602 0.233256062 0.016537122 0.048576831
Parents -0.06774438 -0.13102386 -0.032448013 -0.008068563 -0.004162512
Amis 0.11789513 -0.06519633 -0.011860467 0.047072701 -0.078723277
Camping -0.29589905 0.12427663 0.066085060 -0.065485958 0.029642374
Sej.org -0.20809792 0.14919893 0.002080871 0.147259167 0.003222590
Autres -0.07666056 0.07345940 -0.137879867 0.102860597 0.139506799
$contrib
Dim 1 Dim 2 Dim 3 Dim 4 Dim 5
Hotel 36.8332935 18.753645 18.777677965 7.4925265 0.01411624
Location 1.4913757 18.271910 8.473563758 2.3713439 19.89584445
Res.Second 26.2914900 4.332343 51.064114529 0.8766816 10.06482646
Parents 4.2662989 39.887876 5.657998150 1.1949537 0.42315126
Amis 1.8785006 1.435824 0.109901862 5.9130533 22.00420966
Camping 24.5582852 10.827425 7.081077367 23.7498699 6.47465617
Sej.org 4.2083884 5.406885 0.002432498 41.6101211 0.02651369
Autres 0.4723676 1.084092 8.833233871 16.7914500 41.09668206
$cos2
46
Arthur CHARPENTIER - Analyse des donnees
Dim 1 Dim 2 Dim 3 Dim 4 Dim 5
Hotel 0.7676369 0.15637439 6.769792e-02 0.007908418 1.119836e-05
Location 0.1323457 0.64874111 1.300790e-01 0.010657697 6.720558e-02
Res.Second 0.7051134 0.04648697 2.369069e-01 0.001190780 1.027473e-02
Parents 0.2004684 0.74989464 4.599130e-02 0.002843753 7.568512e-04
Amis 0.5188822 0.15868040 5.251467e-03 0.082720902 2.313574e-01
Camping 0.7778158 0.13720456 3.879683e-02 0.038096581 7.805767e-03
Sej.org 0.4824960 0.24802171 4.824459e-05 0.241614476 1.157093e-04
Autres 0.0945642 0.08683155 3.059035e-01 0.170247535 3.131652e-01
Les modalites de la variable vacances se projettent de la maniere suivante
> S$row
$coord
Dim 1 Dim 2 Dim 3 Dim 4 Dim 5
Agriculteurs -0.11160583 0.009686625 -0.331079734 -0.05028123 0.108913985
Patrons 0.21302067 0.175665571 -0.083575888 0.01167763 0.019443713
Cadres.sup 0.32571537 0.022229111 0.092811557 0.02470341 0.037327118
Cadre.moy -0.10038234 0.069364473 0.071450764 -0.10559460 -0.002748292
Employes -0.06710022 0.134872398 0.020813580 0.02593565 -0.049499681
Ouvriers -0.23618313 -0.003534578 0.007116966 0.03767886 0.002723447
Autres.actifs -0.01164813 -0.396747383 0.048110957 -0.01057656 0.040091875
47
Arthur CHARPENTIER - Analyse des donnees
Inactifs 0.20505507 -0.128579628 -0.091696513 -0.01137359 -0.074098260
$contrib
Dim 1 Dim 2 Dim 3 Dim 4 Dim 5
Agriculteurs 0.95677882 0.01801433 48.6726341 3.8344548 23.93783931
Patrons 9.82974105 16.70733721 8.7466638 0.5832593 2.15147752
Cadres.sup 35.65269429 0.41504523 16.7340797 4.0493338 12.30111902
Cadre.moy 3.15032176 3.75967087 9.2264771 68.8299839 0.06203631
Employes 0.97335351 9.82888382 0.5413749 2.8712499 13.91577299
Ouvriers 37.36664509 0.02091687 0.1961363 18.7774144 0.13052815
Autres.actifs 0.01979782 57.40745717 1.9524263 0.3222906 6.16165515
Inactifs 12.05066765 11.84267451 13.9302079 0.7320133 41.33957155
$cos2
Dim 1 Dim 2 Dim 3 Dim 4 Dim 5
Agriculteurs 0.0903790916 0.0006808308 0.7953520482 0.0183445078 0.0860719225
Patrons 0.5365926163 0.3649005228 0.0825967931 0.0016125393 0.0044705357
Cadres.sup 0.9044719383 0.0042127220 0.0734383161 0.0052027427 0.0118786613
Cadre.moy 0.3233486333 0.1543940559 0.1638212209 0.3577995679 0.0002423719
Employes 0.1654966075 0.6686322656 0.0159233608 0.0247249553 0.0900629089
Ouvriers 0.9732215612 0.0002179661 0.0008836976 0.0247690548 0.0001294053
48
Arthur CHARPENTIER - Analyse des donnees
Autres.actifs 0.0008396854 0.9741640461 0.0143249113 0.0006922976 0.0099475626
Inactifs 0.5790524131 0.2276780652 0.1157930516 0.0017814424 0.0756123744
49
Arthur CHARPENTIER - Analyse des donnees
Mise en oeuvre sur un cas pratique (2)
Considerons l’exemple de l’etude de la correspondance entre• la categorie socioprofessionnelle• le sexe• le niveau d’etudeFormellement, il y a 3 variables, ce qui sort du cadre de l’AFC (on parlera alorsd’ACM), mais on peut resoudre le probleme en croisant le sexe et la categoriesocio-professionnelle ou le sexe de le niveau detude.
50
Arthur CHARPENTIER - Analyse des donnees
Sans BEPC BEP-CAP BACG BACT DEUG DUT SUP
Agri-H 15068 2701 5709 297 1242 0 322 0
Ingen-H 0 337 309 917 0 308 0 4383
Tech-H 302 1697 2242 1969 1399 357 1943 381
Ouv.Qual-H 10143 3702 30926 314 1861 0 0 337
Ouv.non.Qual-H 59394 8087 17862 2887 1696 0 0 323
Cadre.Sup-H 596 298 892 1227 298 2362 318 6781
Cadre.Moyen-H 2142 2801 672 6495 924 2807 2301 4030
Empl.Qual-H 5445 7348 4719 4353 1280 614 982 0
Empl.non.Qual-H 4879 4987 1514 3478 886 1326 0 661
Agri-F 5089 1212 1166 0 0 0 0 0
Ingen-F 0 0 0 316 0 0 304 1033
Tech-F 281 0 320 320 283 0 683 0
Ouv.Qual-F 7470 1859 4017 1752 657 0 285 0
Ouv.non.Qual-F 29997 4334 4538 1882 0 0 0 0
Cadre.Sup-F 0 0 0 2236 595 911 569 6788
Cadre.Moyen-F 1577 1806 4549 17063 875 4152 15731 3991
Empl.Qual-F 21616 19915 32452 16137 5865 1256 3332 1286
Empl.non.Qual-F 19849 7325 6484 5111 898 294 635 0
> base1=read.table("http://perso.univ-rennes1.fr/arthur.charpentier/Diplomes-emplois-1.csv",header=TRUE,sep=";")
> base2=read.table("http://perso.univ-rennes1.fr/arthur.charpentier/Diplomes-emplois-2.csv",header=TRUE,sep=";")
> AFC1=base1[,2:ncol(base1)]; rownames(AFC1)=base1$X
> AFC2=base2[,2:ncol(base2)]; rownames(AFC2)=base2$X
> S1=CA(AFC1, ncp = 5, row.sup = NULL, col.sup = NULL, graph = TRUE)
> S2=CA(AFC2, ncp = 5, row.sup = NULL, col.sup = NULL, graph = TRUE)
51
Arthur CHARPENTIER - Analyse des donnees
●
−0.5 0.0 0.5 1.0 1.5 2.0 2.5
−2.
0−
1.5
−1.
0−
0.5
0.0
0.5
1.0
CA factor map
Dim 1 (48.21%)
Dim
2 (
22.6
2%)
●
●
●
●
●
●
●
●
●
Agri
Ingen
Tech
Ouv.Qual
Ouv.non.Qual
Cadre.Sup
Cadre.MoyenEmpl.Qual
Empl.non.Qual
Sans
BEPC
BEP.CAP
BACG
BACTDEUG
DUT
SUP
H.Sans
H.BEPC
H.BEP.CAP
H.BACG
H.BACT
H.DEUG
H.DUT
H.SUP
F.Sans
F.BEPCF.BEP.CAP F.BACGF.BACT F.DEUG
F.DUT
F.SUP
●
−1 0 1 2 3−
2.0
−1.
5−
1.0
−0.
50.
00.
51.
01.
5
CA factor map
Dim 1 (54.9%)
Dim
2 (
23.8
%)
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
Agri
Ingen
Tech
Ouv.Qual
Ouv.non.Qual
Cadre.Sup
Cadre.Moyen
Empl.Qual
Empl.non.Qual
Agri−H
Ingen−H
Tech−H
Ouv.Qual−H
Ouv.non.Qual−H
Cadre.Sup−H
Cadre.Moyen−HEmpl.Qual−H
Empl.non.Qual−H
Agri−F
Ingen−F
Tech−F
Ouv.Qual−F
Ouv.non.Qual−F
Cadre.Sup−F
Cadre.Moyen−F
Empl.Qual−F
Empl.non.Qual−F
Sans
BEPCBEP.CAP
BACG
BACT DEUG
DUT
SUP
52
Arthur CHARPENTIER - Analyse des donnees
Mise en oeuvre sur un cas pratique (3)
Considerons l’exemple de l’etude de la correspondance entre• la personne pour laquelle un individu a vote en 2002• sa lecture de la presse
> base=read.table("http://perso.univ-rennes1.fr/arthur.charpentier/election2002.txt",header=TRUE)
> S=CA(base, ncp = 5, row.sup = NULL, col.sup = NULL, graph = TRUE)
53
Arthur CHARPENTIER - Analyse des donnees
●
−0.5 0.0 0.5
−1.
0−
0.5
0.0
CA factor map
Dim 1 (62.16%)
Dim
2 (
14.2
4%)
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
Laguiller
Besancenot
Hue
Jospin
TaubiraChevenementMamere
Lepage
SaintJoss
Bayrou
Madelin
Chirac
Boutin
Megret
LePen
Blanc
LaCroix
LeFigaro LiberationLeMonde
LeParisien
LeCanard
LExpress
Marianne
NouvelObs
ParisMatch
Telerama
LePoint
●
−0.5 0.0 0.5
−0.
50.
00.
5
CA factor map
Dim 1 (62.16%)
Dim
3 (
9.54
9%)
●
●●
●
●
●
●
●
●
●
●
●
●
●
●●
Laguiller
BesancenotHueJospinTaubira
Chevenement
Mamere
Lepage
SaintJoss
Bayrou
Madelin
Chirac
Boutin
Megret
LePen Blanc
LaCroix
LeFigaro
Liberation
LeMondeLeParisien
LeCanardLExpress
Marianne
NouvelObs
ParisMatch
TeleramaLePoint
Pour les magasines, les contributions (en %) sont les suivantes
> S$col$contrib
Dim 1 Dim 2 Dim 3 Dim 4 Dim 5
LaCroix 14.477874 57.10298828 3.043496962 1.9960478 6.64173190
54
Arthur CHARPENTIER - Analyse des donnees
LeFigaro 14.890397 4.67956540 0.005551326 2.7522662 0.06599441
Liberation 19.208557 3.05057114 9.421269567 0.2965368 1.01442538
LeMonde 1.546019 1.33611708 0.431175550 0.3822910 0.24322465
LeParisien 1.609276 2.76962371 0.011156019 44.0739203 31.68995798
LeCanard 9.600434 0.07622575 5.230881548 10.1559074 7.79727084
LExpress 1.668133 2.89001903 9.388142005 3.0367054 13.31531649
Marianne 2.162868 4.34929952 55.413649645 5.2678019 7.43358474
NouvelObs 6.878870 0.28306337 7.288769622 1.3130736 2.26186367
ParisMatch 4.894560 4.62598598 0.000908139 8.0359775 8.92495142
Telerama 10.237224 14.55720927 5.335540128 2.4675641 12.04148099
LePoint 12.825789 4.27933146 4.429459489 20.2219081 8.57019753
Pour les hommes politiques, les contributions (en %) sont les suivantes
> S$row$contrib
Dim 1 Dim 2 Dim 3 Dim 4 Dim 5
Laguiller 3.0433032 2.3560946 5.26320797 1.73265093 3.954262e-01
Besancenot 6.1771629 0.4186882 0.30555662 0.50556251 1.185275e+00
Hue 2.1886050 1.8859540 0.19229407 10.42041351 9.034430e+00
Jospin 29.5446175 3.9552709 6.63592538 0.56652719 1.407050e+01
Taubira 1.4154452 0.3644977 1.44345723 4.95200899 6.218341e+00
Chevenement 3.9883002 2.7238075 36.51849236 2.93805238 2.007694e+01
55
Arthur CHARPENTIER - Analyse des donnees
Mamere 8.0416195 2.5190071 4.36007085 1.90347775 9.085994e-01
Lepage 1.3033492 6.0569553 0.17395485 0.06850324 4.041566e+00
SaintJoss 0.0686719 0.4636200 10.18528418 2.99578718 2.956332e+01
Bayrou 3.2399931 34.6929978 0.12965475 0.78522853 2.925690e-01
Madelin 2.5068029 5.8438581 2.86731363 33.43646730 9.092064e-05
Chirac 23.9664625 4.5274835 9.96839279 4.29959109 5.454953e-01
Boutin 4.4041717 21.6862526 3.57172740 1.15559500 1.008395e+00
Megret 1.1757554 0.3680559 17.40755473 0.07580690 7.872857e+00
LePen 8.7983203 11.5463375 0.95079967 34.11932916 4.767015e+00
Blanc 0.1374194 0.5911194 0.02631352 0.04499834 1.918482e-02
Comme l’axe 3 a autant d’importance que l’axe 2, en terme d’explication, onpeut etudier les projections sur les axes 1− 2 et 1− 3,> S$eig
eigenvalue percentage of variance cumulative percentage of variance
dim 1 2.061443e-01 62.16365 62.16365
dim 2 4.720735e-02 14.23557 76.39921
dim 3 3.166681e-02 9.549253 85.94847
dim 4 2.024433e-02 6.104759 92.05323
> S=CA(base, ncp = 5, row.sup = NULL, col.sup = NULL, graph = TRUE)
> plot.CA(S,axes=c(1,2))
56
Arthur CHARPENTIER - Analyse des donnees
> plot.CA(S,axes=c(1,3))
●
−0.5 0.0 0.5
−1.
0−
0.5
0.0
CA factor map
Dim 1 (62.16%)
Dim
2 (
14.2
4%)
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
Laguiller
Besancenot
Hue
Jospin
TaubiraChevenementMamere
Lepage
SaintJoss
Bayrou
Madelin
Chirac
Boutin
Megret
LePen
Blanc
LaCroix
LeFigaro LiberationLeMonde
LeParisien
LeCanard
LExpress
Marianne
NouvelObs
ParisMatch
Telerama
LePoint
●
−0.5 0.0 0.5−
0.5
0.0
0.5
CA factor map
Dim 1 (62.16%)
Dim
3 (
9.54
9%)
●
●●
●
●
●
●
●
●
●
●
●
●
●
●●
Laguiller
BesancenotHueJospinTaubira
Chevenement
Mamere
Lepage
SaintJoss
Bayrou
Madelin
Chirac
Boutin
Megret
LePen Blanc
LaCroix
LeFigaro
Liberation
LeMondeLeParisien
LeCanardLExpress
Marianne
NouvelObs
ParisMatch
TeleramaLePoint
57
Arthur CHARPENTIER - Analyse des donnees
Retour sur la methodologie de l’AFC
Sous R, plusieurs fonctions permettent de faire des AFC• dans library(ade4), la fonction dudi.coa, qui permet simplement de centrer et
reduire les variables.• dans library(FactoMineR), la fonction CA permet de faire une AFC.
58
Arthur CHARPENTIER - Analyse des donnees
L’ACP avec dudi.coa
Cette partie sera inspiree de Dufour & Royer (2008), tdr620.pdf.
Reprenons la base de donnees sur la couleur de cheveux et des yeux (que l’ontransforme de matrice en data.frame).
> M <- HairEyeColor[,,Sex="Female"]
> M
Eye
Hair Brown Blue Hazel Green
Black 36 9 5 2
Brown 66 34 29 14
Red 16 7 7 7
Blond 4 64 5 8
> df <- data.frame(unclass(M))
> afc <- dudi.coa(dfcouleur, scannf = F, nf = 3)
Pour visualiser le tableau de contingence, on retiendra le graphique suivant
> mosaicplot(M,shade=TRUE)
59
Arthur CHARPENTIER - Analyse des donnees
Pour construire les profils lignes et colonnes, on utilise respectivementprop.table(M,1) et prop.table(M,2).
Pour analyse l’AFC, dudi.coa renvoie les vecteurs et matrices suivants. afc$lw etafc$cw sont les ponderations des lignes et des colonnes, i.e. les frequencesmarginales de la table de contingence observee.
Les coordonnees des lignes dites axes principaux sont donnees par afc$li, quisont des vecteurs centres, de variances λ et de covariances nulles. De meme, Lescoordonnees des colonnes dites composantes principales s’obtiennent a l’aide dela fonction afc$co (elles aussi centres, de variances λ et de covariances nulles).
Rappelons enfin que l’inertie totale, correspondant a la somme des valeurspropres est liee a la statistique du test du χ2,
> sum(afc$eig)
[1] 0.3407787
> chisq.test(M)$statistic/sum(M)
X-squared
0.3407787
60
Arthur CHARPENTIER - Analyse des donnees
Pour visualiser l’AFC, on retiendra les deux graphiques suivants
> score(ac)
61
Arthur CHARPENTIER - Analyse des donnees
Travaux diriges
Le TD portera sur la base de donnees election2007.xls, telechargeables sur mapage internet.
62