Correspondence Analysis of Media and Profession Data Using R

university/Cours_Universite/Supports_de_cours/Info rmatique/R/Tutoriels/afc"
1/9
100%
Rendu du PDF...
Page 1 sur 9Lecteur de document UniversityLib

Correspondence Analysis of Media and Profession Data Using R

university/Cours_Universite/Supports_de_cours/Info rmatique/R/Tutoriels/afc" · Statistics and Data Mining · notes

Références :

1.

L. Lebart, A. Morineau, M. Piron, « Statistique Exploratoire Multidimensionnelle », Dunod,

2000 ; pages 67 à 103, partie théorique ; pages 103 à 107, pour l’exemple que nous

traiterons.

Tutoriels Tanagra, « AFC – Association Médias et Professions », http://tutoriels‐data‐

mining.blogspot.com/2008/03/afc‐association‐mdias‐et‐professions.html ; description des

mêmes calculs sous le logiciel Tanagra. Les résultats sont complètement identiques.

Husson, Le, Josse, Mazet, « FactoMineR », http://factominer.free.fr/ ; package que nous

privilégierons pour l’AFC (méthode CA).

D’autres packages réalisent l’AFC (corresp avec MASS, dudi.coa avec ADE4)

2.

3.

4.

1

Objectif de l’étude

Association entre types de médias et professions

Objectifs de l’étude

Ce tutoriel reproduit sous le logiciel R, l’analyse menée dans l’ouvrage de Lebart et al., pages

103 à 107. Les justifications théoriques et les formules sont disponibles dans le même

ouvrage, pages 67 à 103.

Les mêmes calculs ont été reproduits dans Tanagra. D’autres packages de R peuvent réaliser

également une AFC, nous avons choisi FactorMineR pour sa simplicité et son adéquation avec

les sorties usuelles des logiciels qui font référence (et que l’on retrouve dans notre ouvrage

ci‐dessus).

Traitements réalisés

Réaliser une AFC sur un fichier de données.

Afficher les valeurs propres. Construire le graphiques éboulis des valeurs propres.

Calculer les coordonnées factorielles, les cos² et les contributions des points lignes

Calculer les coordonnées factorielles, les cos² et les contributions des points colonnes

Projeter les points dans le premier plan factoriel (représentation simultanée)

Types de Médias

Prof

Agriculteur

Petit.Patr.

Prof.Cad.Sup

Prof.Int.

Employe

Ouvr.Qualif.

Ouvr.Non-Qual.

Inactif

Radio

Tel.

Quot.Nat.

Quot.Reg.

Press.Mag.

Press.TV

96

122

193

360

511

385

156

1474

Publicité

118

136

184

365

593

457

185

1931

2

11

74

63

57

42

8

181

71

76

63

145

217

174

69

852

50

49

103

141

172

104

42

642

17

41

79

184

306

220

85

782

Professions

Tableau de données

2

Fichier de données

Importation des données, valeurs et profils

#changement de répertoire

setwd("D:/_Travaux/university/Cours_Universite/Supports_de_cours/Info

rmatique/R/Tutoriels/afc")

#chargement des données

library(xlsReadWrite)

media <- read.xls(file="media_prof_afc.xls",rowNames=T,sheet=1)

print(media)

#fonction : calcul du profil

profil <- function(x){x/sum(x)*100}

#profil ligne

prof.ligne <- t(apply(media,1,profil))

print(round(prof.ligne,1))

#profil colonne

prof.colonne <- apply(media,2,profil)

print(round(prof.colonne,1))

Publicité

Profils lignes : somme par

ligne = 100.

Profils colonnes : somme

par colonne = 100.

3

AFC avec R via le package FactoMineR

Calculs et quelques statistiques

#charger le package

library(FactoMineR)

#lancer l'AFC

media.afc <- CA(media,ncp=2,graph=FALSE)

#liste des objets disponibles

print(attributes(media.afc))

#quelques statistiques sur le tableau de données

print(media.afc$call)

Distribution

marginale par

colonne, on peut

comparer avec les

profils lignes.

Idem, par ligne. A

comparer avec les

profils colonnes.

4

AFC avec R via le package FactoMineR

Valeurs propres et Scree plot

#tableau des valeurs propres et Scree plot

print(media.afc$eig)

plot(media.afc$eig[,1],type="b",main="Scree plot")

Les deux premiers

facteurs traduisent

près de 95% de

l’information

disponible

i

]

1

,

[

g

e

$

c

f

a

.

a

d

e

m

i

Scree plot

4

1

0

.

0

2

1

0

Publicité

.

0

0

1

0

.

0

8

0

0

.

0

6

0

0

.

0

4

0

0

.

0

2

0

0

.

0

0

0

0

.

0

1

2

3

4

5

6

Index

5

AFC avec R via le package FactoMineR

Coordonnées, cosinus² et contributions des lignes

#coordonnées, contributions et cos2 - lignes

print(media.afc$row)

La somme par colonne vaut 100.

Noter la très forte contribution de

« Prof.Cad.Sup » sur le 1er axe

factoriel.

La somme par ligne, si on prend

toutes les dimensions (6 dans

notre exemple) vaut 100.

6

AFC avec R via le package FactoMineR

Coordonnées, cosinus² et contributions des colonnes

#coordonnées, contributions et cos2 - colonnes

print(media.afc$col)

La somme par colonne vaut 100. Noter la très

forte contribution de « Quot.Nat » sur le 1er

axe factoriel.

Mis en relation avec le résultat précédent, cela

Publicité

laisse à penser que le 1er axe est dominé par

l’association « Quot.Nat » et « Prof.Cad.Sup »

(Lebart et al., page 106)

7

AFC avec R via le package FactoMineR

Représentation simultanée dans le 1er plan factoriel

#graphique

plot(media.afc,cex=0.75)

)

.

%

7

3

2

3

(

2

m

D

i

4

.

0

.

2

0

.

0

0

.

2

0

-

CA factor map

Agriculteur

Petit.Patr.

Quot.Reg.

Press.Mag.

Inactif

Tel.

Radio

Prof.Int.

Prof.Cad.Sup

Quot.Nat.

Ouvr.Non-Qual.

Ouvr.Qualif.

Employe

Press.TV

-0.2

0.0

0.2

0.4

0.6

Dim 1 (62.2%)

8

9