cours add-r1-part2

62
Arthur CHARPENTIER - Analyse des donn´ ees Analyse des donn´ ees (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, Universit´ e Rennes 1 1

Upload: arthur-charpentier

Post on 22-Nov-2014

485 views

Category:

Documents


5 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Cours add-r1-part2

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

Page 2: Cours add-r1-part2

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

Page 3: Cours add-r1-part2

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

Page 4: Cours add-r1-part2

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

Page 5: Cours add-r1-part2

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

Page 6: Cours add-r1-part2

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

Page 7: Cours add-r1-part2

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

Page 8: Cours add-r1-part2

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

Page 9: Cours add-r1-part2

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

Page 10: Cours add-r1-part2

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

Page 11: Cours add-r1-part2

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

Page 12: Cours add-r1-part2

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

Page 13: Cours add-r1-part2

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

Page 14: Cours add-r1-part2

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

Page 15: Cours add-r1-part2

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

Page 16: Cours add-r1-part2

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

Page 17: Cours add-r1-part2

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

Page 18: Cours add-r1-part2

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

Page 19: Cours add-r1-part2

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

Page 20: Cours add-r1-part2

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

Page 21: Cours add-r1-part2

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

Page 22: Cours add-r1-part2

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

Page 23: Cours add-r1-part2

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

Page 24: Cours add-r1-part2

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

Page 25: Cours add-r1-part2

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

Page 26: Cours add-r1-part2

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

Page 27: Cours add-r1-part2

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

Page 28: Cours add-r1-part2

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

Page 29: Cours add-r1-part2

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

Page 30: Cours add-r1-part2

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

Page 31: Cours add-r1-part2

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

Page 32: Cours add-r1-part2

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

Page 33: Cours add-r1-part2

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

Page 34: Cours add-r1-part2

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

Page 35: Cours add-r1-part2

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

Page 36: Cours add-r1-part2

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

Page 37: Cours add-r1-part2

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

Page 38: Cours add-r1-part2

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

Page 39: Cours add-r1-part2

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

Page 40: Cours add-r1-part2

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

Page 41: Cours add-r1-part2

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

Page 42: Cours add-r1-part2

Arthur CHARPENTIER - Analyse des donnees

les axes de meme rang, en confondant alors

∆uα = ∆vα = ∆α

42

Page 43: Cours add-r1-part2

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

Page 44: Cours add-r1-part2

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

Page 45: Cours add-r1-part2

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

Page 46: Cours add-r1-part2

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

Page 47: Cours add-r1-part2

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

Page 48: Cours add-r1-part2

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

Page 49: Cours add-r1-part2

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

Page 50: Cours add-r1-part2

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

Page 51: Cours add-r1-part2

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

Page 52: Cours add-r1-part2

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

Page 53: Cours add-r1-part2

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

Page 54: Cours add-r1-part2

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

Page 55: Cours add-r1-part2

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

Page 56: Cours add-r1-part2

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

Page 57: Cours add-r1-part2

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

Page 58: Cours add-r1-part2

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

Page 59: Cours add-r1-part2

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

Page 60: Cours add-r1-part2

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

Page 61: Cours add-r1-part2

Arthur CHARPENTIER - Analyse des donnees

Pour visualiser l’AFC, on retiendra les deux graphiques suivants

> score(ac)

61

Page 62: Cours add-r1-part2

Arthur CHARPENTIER - Analyse des donnees

Travaux diriges

Le TD portera sur la base de donnees election2007.xls, telechargeables sur mapage internet.

62