0% ont trouvé ce document utile (0 vote)
8 vues1 page

ACM des caractéristiques canines avec R

Ce document présente une analyse des correspondances multiples (ACM) appliquée à un jeu de données sur des chiens, utilisant le logiciel R. Il décrit le processus de chargement des données, l'exécution de l'ACM, l'interprétation des résultats, et les graphiques associés pour visualiser les relations entre les variables et les individus. Les résultats montrent que trois axes factoriels sont significatifs, expliquant une grande partie de la variance des données.

Transféré par

Jean-Blaise M'panga
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
8 vues1 page

ACM des caractéristiques canines avec R

Ce document présente une analyse des correspondances multiples (ACM) appliquée à un jeu de données sur des chiens, utilisant le logiciel R. Il décrit le processus de chargement des données, l'exécution de l'ACM, l'interprétation des résultats, et les graphiques associés pour visualiser les relations entre les variables et les individus. Les résultats montrent que trois axes factoriels sont significatifs, expliquant une grande partie de la variance des données.

Transféré par

Jean-Blaise M'panga
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

TP5-ACM.

R
mchavent
2020-12-15

######################################################################
# TP 2 : Analyse des Correspondances Multiples (ACM) avec le logiciel R
# (code R avec commentaires)
######################################################################

#===================================
# Jeu de donnees : chiens
#===================================

# Chargement du jeu de donnees

load("../data/[Link]")
chiens

## taille poids velocite intellig affect agress


## beauceron T++ P+ V++ I+ Af+ Ag+
## basset T- P- V- I- Af- Ag+
## ber_allem T++ P+ V++ I++ Af+ Ag+
## boxer T+ P+ V+ I+ Af+ Ag+
## bull-dog T- P- V- I+ Af+ Ag-
## bull-mass T++ P++ V- I++ Af- Ag+
## caniche T- P- V+ I++ Af+ Ag-
## chihuahua T- P- V- I- Af+ Ag-
## cocker T+ P- V- I+ Af+ Ag+
## colley T++ P+ V++ I+ Af+ Ag-
## dalmatien T+ P+ V+ I+ Af+ Ag-
## dobermann T++ P+ V++ I++ Af- Ag+
## dogue_all T++ P++ V++ I- Af- Ag+
## epagn_bre T+ P+ V+ I++ Af+ Ag-
## epagn_fra T++ P+ V+ I+ Af- Ag-
## fox_hound T++ P+ V++ I- Af- Ag+
## fox_terri T- P- V+ I+ Af+ Ag+
## grand_ble T++ P+ V+ I- Af- Ag+
## labrador T+ P+ V+ I+ Af+ Ag-
## levrier T++ P+ V++ I- Af- Ag-
## mastiff T++ P++ V- I- Af- Ag+
## pekinois T- P- V- I- Af+ Ag-
## pointer T++ P+ V++ I++ Af- Ag-
## saint_ber T++ P++ V- I+ Af- Ag+
## setter T++ P+ V++ I+ Af- Ag-
## teckel T- P- V- I+ Af+ Ag-
## terre_neu T++ P++ V- I+ Af- Ag-

n <- nrow(chiens)
p <- ncol(chiens)

# Chargement du package PCAmixdata

library(FactoMineR) # permet de charger le package "FactoMineR"


# afin de pouvoir l'utiliser par la suite
help(MCA)

summary(chiens)

## taille poids velocite intellig affect agress


## T- : 7 P- : 8 V- :10 I- : 8 Af-:13 Ag-:14
## T+ : 5 P+ :14 V+ : 8 I+ :13 Af+:14 Ag+:13
## T++:15 P++: 5 V++: 9 I++: 6

# Mise en oeuvre de l'ACM

res <-MCA(chiens) # tous les calculs de l'ACM sont stockes dans l'objet "res"

# NB : par défaut les graphiques des plans factoriels 1-2


# sont affichés a l'écran :
# - projection des individus sur le plan 1-2
# - projection des modalités du plan 1-2
# - représentation des variables pour le plan 1-2

res <- MCA(chiens, graph=FALSE) # idem sans les graphiques

res # permet de voir la liste de l'ensemble des sorties numeriques disponibles

## **Results of the Multiple Correspondence Analysis (MCA)**


## The analysis was performed on 27 individuals, described by 6 variables
## *The results are available in the following objects:
##
## name description
## 1 "$eig" "eigenvalues"
## 2 "$var" "results for the variables"
## 3 "$var$coord" "coord. of the categories"
## 4 "$var$cos2" "cos2 for the categories"
## 5 "$var$contrib" "contributions of the categories"
## 6 "$var$[Link]" "v-test for the categories"
## 7 "$ind" "results for the individuals"
## 8 "$ind$coord" "coord. for the individuals"
## 9 "$ind$cos2" "cos2 for the individuals"
## 10 "$ind$contrib" "contributions of the individuals"
## 11 "$call" "intermediate results"
## 12 "$call$[Link]" "weights of columns"
## 13 "$call$[Link]" "weights of rows"

# COMMENTAIRES : une ACM est une ACP centrée "réduite" du tableau disjonctif complet
# qui est faite avec le même poids (1/n) pour tous les individus de l'étude (ici les chiens).
# L'espace des individus est R^16 car les p=6 variables qualitatives mesurées sur chaque individu
# possèdent un total de 16 modalités.
# L'espace des variables est R^27 car chaque variable a été mesurée sur n=27 individus.
#
# NB : il s'agit d'un tout petit jeu de données (n=27, p=6).
# Cependant, on va voir que l'ACM permet de faire ressortir rapidement et visuellement les grandes
# informations contenues dans ce jeu de données.

# Choix du nombre d'axes à retenir

round(res$eig,digit=2) # permet d'afficher les valeurs propres et les pourcentages

## eigenvalue percentage of variance cumulative percentage of variance


## dim 1 0.48 28.90 28.90
## dim 2 0.38 23.08 51.98
## dim 3 0.21 12.66 64.64
## dim 4 0.16 9.45 74.09
## dim 5 0.15 9.01 83.10
## dim 6 0.12 7.40 90.50
## dim 7 0.08 4.89 95.38
## dim 8 0.05 2.74 98.12
## dim 9 0.02 1.41 99.54
## dim 10 0.01 0.46 100.00

# de variances expliquees par chaque axe

sum(res$eig[,1]) # la somme des valeurs propres en ACM vaut (K-p)/p

## [1] 1.666667

length(res$eig[,1]) # le nombre de valeurs propres non nulles est K-p

## [1] 10

1/p # l'inertie moyenne par axe vaut donc 1/p

## [1] 0.1666667

# Graphique de l'ebouli des valeurs propres


barplot(res$eig[,1], main="Eigenvalues", [Link]=1:nrow(res$eig))
abline(h=1/p,col=2,lwd=2)

# COMMENTAIRES : comme une ACM et une ACP particulière, on peut utiliser le critère de Kaiser qui
# nous dit que seuls les axes factoriels associés à une valeur propre (eigenvalue) plus grande que 1/p
# sont des axes intéressants à retenir. En effet, en ACM, les variables synthétiques (composantes
# principales) construites ne seront intéressantes que si elles ont une dispersion plus importante
# que la dispersion moyenne par axe. Or par construction, la variance d'une composante principale
# est égale à la valeur propre de l'axe correspondant. D'où le critère de Kaiser qui nous préconise de ne retenir que
# les axes ayant une valeur propre supérieure à 1/p.
#
# NB 1 : si on a une valeur propre inférieure à 1/p, mais proche de 1, je recommande de regarder tout de même quelle est
# l'information apportée par l'axe correspondant.
#
# NB 2 : si on une valeur propre plus grande que 1/p (et proche de 1/p) qui correspond à un axe factoriel
# pour lequel on n'arrive pas à faire des commentaires intéressants, je recommende de ne pas retenir
# cet axe factoriel pour la suite des interprétations.
#
# NB 3 : il y a au maximum K-p valeurs propres (si n-1 > K-p) car on peut fabriquer au maximum K-p
# composantes principale (= nouvelles variables synthétiques, deux à deux non corrélées, combinaisons
# linéaires des indicatrices des modalités initiales) à partir de K indicatrices initiales. En effet,
# pour chacune des p variables, les indicatrices des modalités de cette variable somment à 1.
#
# Ici on obtient les sorties numériques suivantes :
# Eigenvalue Proportion Cumulative
#dim 1 0.48 28.90 28.90
#dim 2 0.38 23.08 51.98
#dim 3 0.21 12.66 64.64
#dim 4 0.16 9.45 74.09
#dim 5 0.15 9.01 83.10
#dim 6 0.12 7.40 90.50
#dim 7 0.08 4.89 95.38
#dim 8 0.05 2.74 98.12
#dim 9 0.02 1.41 99.54
#dim 10 0.01 0.46 100.00
#
# On a donc les trois premières valeurs propres (les valeurs propres sont toujours rangées par ordre décroissant)
# supérieures à 1/p. Selon le critère de Kaiser, il convient donc de retenir 3 axes factoriels et l'ébouli des valeurs
# propres montre bien une "cassure" après 3 axes.
# Le premier axe factoriel permet d'expliquer 28,9% de l'inertie (ou de la variance), le second axe factoriel permet
# d'expliquer 23,08% d'inertie supplémentaire et le troisième 12,66% d'inertie en plus.
# Ainsi, en considérant le plan 1-2, on récupère 51,98% de l'information (c'est à dire en quoi
# les individus diffèrent = inertie avec un regard d'algèbre linéaire = variance avec un regard de statisticien).
# Si on conserve 3 composantes principales, on récupère 64,64% de l'information.
#
# NB 4 : En ACM les pourcentages d'inertie expliquée par les axes sont par construction souvent plus petits
# qu'en ACP du fait du nombre important d'axes (K-p). Il ne faut donc pas trop regarder ce critère dans le chois
# des axes à retenir.

# Graphiques des individus, des modalités et des variables sur le plan factoriel 1-2

?[Link] # permet d'afficher la fenetre d'aide de la commande "[Link]"


plot(res, axes=c(1,2), choix="var") # on retrouve ici la représentation des variables (plan 1-2)

# en fonction de leurs rapports de corrélations avec les composantes principales


# (contributions à l'inertie des axes)

# Commentaires de la représentation des variables du plan 1-2 :


# Chaque variable qualitative est représentée en fonction de son rapport de corrélation avec
# la première composante principale (Dim1) et son rapport de corrélation avec la seconde composante principale (Dim2).
# Un rapport de corrélation proche de 1 (resp. proche de 0) indique que les individus sont bien (resp. mal)
# discriminés sur la dimension correspondante. Ce rapport de corrélation est également égal à la contribution
# de la variable à l'inertie de l'axe. Un variable qui contribue beaucoup "explique" l'axe.
#
# 1) Les 3 variables "poids", "vélocité" et "taille" vont permettre d'expliquer la position des chiens sur le plan 1-2.
# 2) Sur l'axe 1 (horizontal), la variable taille a un rapport de corrélation avec la première composante proche de 1.
# Cela signigie que les chiens sont bien discriminés sur cette axe en fonction de leurs tailles. On n'a pas en revanche
# l'information sur la position des chiens (droite ou à gauche) en fonction de leur taille. Il faut regarder le graphique
# des modalités pour cela ou encore habiller les chiens avec différentes couleurs en fonction de leur taille.
# 3) L'axe 2 (vertical) est essentiellement caractérisé par la variable "poids" (et dans une moindre mesure "velocité"
# et "taille")
# 4) On peut penser qu'il existe un lien entre les variables "poids", "vélocité" et "taille" sachant qu'elles sont liées
# de manière assez similaires aux composantes principales. Un chien petit et léger serait-il rapide...?
#
# Il convient maintenant de projeter les modalités sur le plan factoriel 1-2 associé :
# sous-espace de dimension 2 de R^3 (espace des individus) qui apportent le plus d'information (maximisation de l'inertie
# du nuage projeté). Ceci nous permettra alors de caractériser les individus en fonction des variables.

plot(res,axes=c(1,2),choix="ind", invisible = "ind")

# Commentaires du plan factoriel 1-2 des modalités :


# sous-espace de dimension 2 de R^27 (espace des modalités) qui apportent le plus d'information (maximisation de l'inertie
# du nuage projeté). Ceci nous permettra alors de caractériser les axes et de visualiser certaines liaisons entre modalités.

# 1) Deux modalités qui sont bien projetées et qui sont proches sont possédées par les mêmes individus.
# On en déduit qu'il existe une liaison entre les modalités V-, P- et T- (en haut à droite du plan factoriel) indiquant
# que les chiens de petites tailles ont tendance à être légers et véloces.
# 2) Sur l'axe 1, on voit une opposition entre les modalités V++, P++ à gauche et les modalités T-, P- à droite. Cela
# permettra de caractériser les chiens à gauche et à droite du plan factoriel 1-2.
# 3) Sur l'axe 2, on voit une opposition entre les modalités V-, T-, P- à en haut et les modalitésV+, T+ et P+ à bas. Cela
# permettra de caractériser les chiens en haut et en bas du plan factoriel 1-2.

# Il convient maintenant de projeter les individus (chiens) sur le plan factoriel 1-2 associé :
# sous-espace de dimension 2 de R^16 (espace des individus) qui apportent le plus d'information (maximisation de l'inertie
# du nuage projeté). Ceci nous permettra alors de caractériser les individus en fonction des modalités.

plot(res,axes=c(1,2),choix="ind", invisible = "var") # on retrouve ici le graphique des individus (plan 1-2)

# On a vu que 4 variables sont importantes pour interpréter le plan factoriel 1-2.


# On peut habiller les chiens avec des couleurs en foncton des modalités de ces variables.
plot(res,axes=c(1,2),choix="ind", invisible = "var", habillage=1)

plot(res,axes=c(1,2),choix="ind", invisible = "var", habillage=2)

plot(res,axes=c(1,2),choix="ind", invisible = "var", habillage=3)

plot(res,axes=c(1,2),choix="ind", invisible = "var", habillage=5)

plot(res,axes=c(3,4),choix="ind", invisible = "var", habillage=4)

# Commentaires du plan factoriel 1-2 des individus :


# 1) Sur l'axe 1 (horizontal), on voit par exemple une opposition très claire entre les chiens de grande
# taille à gauche et les chiens de taille petite ou moyenne à droite.
# 2) Sur l'axe 2 (vertical), on voit par exemple une opposition très claire entre les chiens de poids moyen en
# bas et les chiens de léger ou fort en haut.

# On retrouve cette interprétation avec la représentation simultanée des chiens et des modalités
# (possible grace à la relation quasi-barycentrique)

plot(res,axes=c(1,2),choix="ind")

# Commentaires de la représentation simultanée des individus et des modalités sur le plan factoriel 1-2:
# On distinge 3 groupes de chiens :
# - en haut à droite, les petits chiens rapides et affectueux (pekinois, teckel....)
# - en bas à droite, les chiens de taille, poids et vélocité moyenne et plutôt affectueux
# - en haut à gauche, les gros chiens aggressifs et pas très affectueux.

# Au delà des sorties graphiques, des sorties numériques sont disponibles et peuvent être utiles pour quantifier certaines
# observations graphiques.

# Sorties numeriques pour les individus et pour les variables

res$ind # permet d'afficher l'ensemble des sorties numériques associées aux individus :

## $coord
## Dim 1 Dim 2 Dim 3 Dim 4 Dim 5
## beauceron -0.3172001 -0.41770130 -0.10146771 -0.21143628 -0.1185095442
## basset 0.2541098 1.10122699 -0.19070097 0.29263727 -0.5240085192
## ber_allem -0.4863955 -0.46444958 -0.49813388 0.57742525 0.2759020523
## boxer 0.4473649 -0.88177794 0.69201580 0.26000184 -0.4555898365
## bull-dog 1.0133522 0.54987949 -0.16342320 -0.34991927 0.3307864847
## bull-mass -0.7525745 0.54691183 0.49757307 0.65515266 0.7219463555
## caniche 0.9123015 -0.01618767 -0.57656972 0.62813340 0.4340165309
## chihuahua 0.8407994 0.84385216 -0.46994714 -0.08634287 -0.1773464546
## cocker 0.7332953 0.07907317 0.66223042 0.18974319 -0.1046272364
## colley -0.1173252 -0.52610765 -0.33489373 -0.65775454 0.1921301958
## dalmatien 0.6472398 -0.99018429 0.45858978 -0.18631642 -0.1449500965
## dobermann -0.8732102 -0.31548110 -0.45231373 0.51008713 0.2398797276
## dogue_all -1.0470168 0.50695768 0.16503476 0.06288820 -0.3165215706
## epagn_bre 0.4780443 -1.03693257 0.06192362 0.60254511 0.2494614999
## epagn_fra -0.1449101 -0.51578295 0.11712661 -0.46892219 0.0008497112
## fox_hound -0.8765675 0.02523985 -0.36217150 -0.01519800 -0.6626648082
## fox_terri 0.8816221 0.13896696 0.05352247 0.28559012 -0.2710348055
## grand_ble -0.5173377 -0.11340393 0.04402869 0.24097247 -0.8179229680
## labrador 0.6472398 -0.99018429 0.45858978 -0.18631642 -0.1449500965
## levrier -0.6766927 -0.08316651 -0.59559752 -0.46151625 -0.3520250682
## mastiff -0.7559318 0.88763278 0.58771530 0.12986753 -0.1805981803
## pekinois 0.8407994 0.84385216 -0.46994714 -0.08634287 -0.1773464546
## pointer -0.6733354 -0.42388745 -0.68573975 0.06376888 0.5505194676
## saint_ber -0.5833790 0.59366011 0.89423924 -0.13370887 0.3275347590
## setter -0.5041399 -0.37713917 -0.28907358 -0.72509266 0.1561078711
## teckel 1.0133522 0.54987949 -0.16342320 -0.34991927 0.3307864847
## terre_neu -0.3835042 0.48525376 0.66081322 -0.58002713 0.6381744990
##
## $contrib
## Dim 1 Dim 2 Dim 3 Dim 4 Dim 5
## beauceron 0.7737679 1.679591265 0.18076074 1.050910561 3.464716e-01
## basset 0.4965777 11.674160199 0.63849009 2.013103024 6.773884e+00
## ber_allem 1.8193797 2.076582082 4.35652825 7.837873991 1.877893e+00
## boxer 1.5391043 7.484976084 8.40776174 1.589130486 5.120461e+00
## bull-dog 7.8970523 2.910764017 0.46889522 2.878342428 2.699333e+00
## bull-mass 4.3555519 2.879430481 4.34672445 10.090013598 1.285792e+01
## caniche 6.4006040 0.002522556 5.83649387 9.274927018 4.647010e+00
## chihuahua 5.4366197 6.854956241 3.87745169 0.175250667 7.759005e-01
## cocker 4.1352521 0.060190825 7.69957277 0.846328783 2.700540e-01
## colley 0.1058588 2.664533548 1.96907570 10.170315797 9.106516e-01
## dalmatien 3.2216221 9.438522677 3.69230120 0.816035401 5.183201e-01
## dobermann 5.8638360 0.958117236 3.59193035 6.116394210 1.419542e+00
## dogue_all 8.4304649 2.474089271 0.47818860 0.092970491 2.471540e+00
## epagn_bre 1.7574399 10.350777943 0.06732262 8.534652985 1.535211e+00
## epagn_fra 0.1614884 2.560978462 0.24085714 5.169021122 1.781163e-05
## fox_hound 5.9090133 0.006132611 2.30290971 0.005429745 1.083300e+01
## fox_terri 5.9773564 0.185906708 0.05029451 1.917313317 1.812221e+00
## grand_ble 2.0582234 0.123802149 0.03403454 1.365028075 1.650387e+01
## labrador 3.2216221 9.438522677 3.69230120 0.816035401 5.183201e-01
## levrier 3.5214957 0.066583845 6.22807925 5.007036206 3.057090e+00
## mastiff 4.3944998 7.584703763 6.06432357 0.396467792 8.046143e-01
## pekinois 5.4366197 6.854956241 3.87745169 0.175250667 7.759005e-01
## pointer 3.4866395 1.729709149 8.25594928 0.095592596 7.476639e+00
## saint_ber 2.6172536 3.392717496 14.03963501 0.420268830 2.646524e+00
## setter 1.9545479 1.369226351 1.46711842 12.359296374 6.011885e-01
## teckel 7.8970523 2.910764017 0.46889522 2.878342428 2.699333e+00
## terre_neu 1.1310567 2.266782110 7.66665317 7.908668005 1.004708e+01
##
## $cos2
## Dim 1 Dim 2 Dim 3 Dim 4 Dim 5
## beauceron 0.08863547 0.1536995944 0.009069781 0.0393822110 1.237222e-02
## basset 0.03380431 0.6348671357 0.019038597 0.0448320320 1.437493e-01
## ber_allem 0.15372250 0.1401636585 0.161231704 0.2166455755 4.946160e-02
## boxer 0.11133075 0.4325235284 0.266393303 0.0376048711 1.154621e-01
## bull-dog 0.62448464 0.1838806326 0.016241584 0.0744623393 6.654209e-02
## bull-mass 0.27069077 0.1429582059 0.118328181 0.2051443062 2.491061e-01
## caniche 0.38519392 0.0001212751 0.153853124 0.1826023765 8.717967e-02
## chihuahua 0.37993129 0.3826952203 0.118691149 0.0040065748 1.690306e-02
## cocker 0.27915682 0.0032460020 0.227671518 0.0186905820 5.683030e-03
## colley 0.01239617 0.2492609870 0.100999475 0.3896124090 3.324270e-02
## dalmatien 0.23628517 0.5530165596 0.118619154 0.0195798039 1.185067e-02
## dobermann 0.48761169 0.0636477694 0.130832617 0.1663892363 3.679795e-02
## dogue_all 0.56079391 0.1314738467 0.013933070 0.0020231792 5.125103e-02
## epagn_bre 0.10498339 0.4939526916 0.001761558 0.1667874837 2.858850e-02
## epagn_fra 0.01753323 0.2221256292 0.011454493 0.1835972941 6.028475e-07
## fox_hound 0.55831304 0.0004628928 0.095309358 0.0001678339 3.190765e-01
## fox_terri 0.43627101 0.0108396312 0.001607917 0.0457802078 4.123268e-02
## grand_ble 0.18602321 0.0089387139 0.001347381 0.0403602327 4.649900e-01
## labrador 0.23628517 0.5530165596 0.118619154 0.0195798039 1.185067e-02
## levrier 0.33881559 0.0051177295 0.262473933 0.1575993487 9.169119e-02
## mastiff 0.29999507 0.4136333336 0.181335511 0.0088542146 1.712283e-02
## pekinois 0.37993129 0.3826952203 0.118691149 0.0040065748 1.690306e-02
## pointer 0.29459212 0.1167506763 0.305546227 0.0026422615 1.969263e-01
## saint_ber 0.20156282 0.2087298540 0.473604996 0.0105883741 6.353655e-02
## setter 0.22389437 0.1252980645 0.073613569 0.4631568432 2.146795e-02
## teckel 0.62448464 0.1838806326 0.016241584 0.0744623393 6.654209e-02
## terre_neu 0.08840069 0.1415315741 0.262465947 0.2022144235 2.447904e-01

# coordonnées, contributions, cosinus carrés.


# NB : les coordonnées peuvent être utiles dans le cas où deux individus sont projetés au même endroit sur
# le plan factoriel et qu'il est difficile de lire leurs noms graphiquement...

round(res$ind$cos2,digits=3) # uniquement les cosinus carres (arrondis à 3 chiffres après la virgule)

## Dim 1 Dim 2 Dim 3 Dim 4 Dim 5


## beauceron 0.089 0.154 0.009 0.039 0.012
## basset 0.034 0.635 0.019 0.045 0.144
## ber_allem 0.154 0.140 0.161 0.217 0.049
## boxer 0.111 0.433 0.266 0.038 0.115
## bull-dog 0.624 0.184 0.016 0.074 0.067
## bull-mass 0.271 0.143 0.118 0.205 0.249
## caniche 0.385 0.000 0.154 0.183 0.087
## chihuahua 0.380 0.383 0.119 0.004 0.017
## cocker 0.279 0.003 0.228 0.019 0.006
## colley 0.012 0.249 0.101 0.390 0.033
## dalmatien 0.236 0.553 0.119 0.020 0.012
## dobermann 0.488 0.064 0.131 0.166 0.037
## dogue_all 0.561 0.131 0.014 0.002 0.051
## epagn_bre 0.105 0.494 0.002 0.167 0.029
## epagn_fra 0.018 0.222 0.011 0.184 0.000
## fox_hound 0.558 0.000 0.095 0.000 0.319
## fox_terri 0.436 0.011 0.002 0.046 0.041
## grand_ble 0.186 0.009 0.001 0.040 0.465
## labrador 0.236 0.553 0.119 0.020 0.012
## levrier 0.339 0.005 0.262 0.158 0.092
## mastiff 0.300 0.414 0.181 0.009 0.017
## pekinois 0.380 0.383 0.119 0.004 0.017
## pointer 0.295 0.117 0.306 0.003 0.197
## saint_ber 0.202 0.209 0.474 0.011 0.064
## setter 0.224 0.125 0.074 0.463 0.021
## teckel 0.624 0.184 0.016 0.074 0.067
## terre_neu 0.088 0.142 0.262 0.202 0.245

apply(res$ind$cos2[,1:2], 1, sum)

## beauceron basset ber_allem boxer bull-dog bull-mass caniche chihuahua


## 0.2423351 0.6686714 0.2938862 0.5438543 0.8083653 0.4136490 0.3853152 0.7626265
## cocker colley dalmatien dobermann dogue_all epagn_bre epagn_fra fox_hound
## 0.2824028 0.2616572 0.7893017 0.5512595 0.6922678 0.5989361 0.2396589 0.5587759
## fox_terri grand_ble labrador levrier mastiff pekinois pointer saint_ber
## 0.4471106 0.1949619 0.7893017 0.3439333 0.7136284 0.7626265 0.4113428 0.4102927
## setter teckel terre_neu
## 0.3491924 0.8083653 0.2299323

sort(apply(res$ind$cos2[,1:2], 1,sum), decreasing = TRUE)

## bull-dog teckel dalmatien labrador chihuahua pekinois mastiff dogue_all


## 0.8083653 0.8083653 0.7893017 0.7893017 0.7626265 0.7626265 0.7136284 0.6922678
## basset epagn_bre fox_hound dobermann boxer fox_terri bull-mass pointer
## 0.6686714 0.5989361 0.5587759 0.5512595 0.5438543 0.4471106 0.4136490 0.4113428
## saint_ber caniche setter levrier ber_allem cocker colley beauceron
## 0.4102927 0.3853152 0.3491924 0.3439333 0.2938862 0.2824028 0.2616572 0.2423351
## epagn_fra terre_neu grand_ble
## 0.2396589 0.2299323 0.1949619

round(sort(apply(res$ind$cos2[,1:2], 1,sum), decreasing = TRUE) , digit=3) # cos2 avec le plan et trié par ordre décroissant

## bull-dog teckel dalmatien labrador chihuahua pekinois mastiff dogue_all


## 0.808 0.808 0.789 0.789 0.763 0.763 0.714 0.692
## basset epagn_bre fox_hound dobermann boxer fox_terri bull-mass pointer
## 0.669 0.599 0.559 0.551 0.544 0.447 0.414 0.411
## saint_ber caniche setter levrier ber_allem cocker colley beauceron
## 0.410 0.385 0.349 0.344 0.294 0.282 0.262 0.242
## epagn_fra terre_neu grand_ble
## 0.240 0.230 0.195

plot(res,axes=c(1,2), choix="ind", invisible="var", select = "cos2 9")

# Commentaires : les cosinus carrés nous donnent la qualité de représentation (en %) des individus
# sur les axes factoriels.
# Par exemple : 62.4 % de l'information de "teckel" est recupérée sur l'axe 1, 18,4% sur l'axe 2.
# Vu que les axes sont orhtogonaux, on a 62,4+18,4=80.8% de l'information de "teckel" qui est fournie par le plan 1-2.
# "teckel" est bien représenté sur le plan factoriel 1-2.
# On observe ici que les deux chiens les mieux représentés sur ce plan sont "bull-dog" et
# "teckel". On peut choisir de représenter uniquement les 8 chiens les mieux projetés.
#
# NB : Ne jamais faire des commentaires sur des individus qui seraient mal représentés sur le plan factoriel que l'on
# regarder ! car on ne ferait que des fausses déductions...

round(res$ind$contrib,digits=1) # uniquement les contributions en % (arrondies à un chiffre après la virgule)

## Dim 1 Dim 2 Dim 3 Dim 4 Dim 5


## beauceron 0.8 1.7 0.2 1.1 0.3
## basset 0.5 11.7 0.6 2.0 6.8
## ber_allem 1.8 2.1 4.4 7.8 1.9
## boxer 1.5 7.5 8.4 1.6 5.1
## bull-dog 7.9 2.9 0.5 2.9 2.7
## bull-mass 4.4 2.9 4.3 10.1 12.9
## caniche 6.4 0.0 5.8 9.3 4.6
## chihuahua 5.4 6.9 3.9 0.2 0.8
## cocker 4.1 0.1 7.7 0.8 0.3
## colley 0.1 2.7 2.0 10.2 0.9
## dalmatien 3.2 9.4 3.7 0.8 0.5
## dobermann 5.9 1.0 3.6 6.1 1.4
## dogue_all 8.4 2.5 0.5 0.1 2.5
## epagn_bre 1.8 10.4 0.1 8.5 1.5
## epagn_fra 0.2 2.6 0.2 5.2 0.0
## fox_hound 5.9 0.0 2.3 0.0 10.8
## fox_terri 6.0 0.2 0.1 1.9 1.8
## grand_ble 2.1 0.1 0.0 1.4 16.5
## labrador 3.2 9.4 3.7 0.8 0.5
## levrier 3.5 0.1 6.2 5.0 3.1
## mastiff 4.4 7.6 6.1 0.4 0.8
## pekinois 5.4 6.9 3.9 0.2 0.8
## pointer 3.5 1.7 8.3 0.1 7.5
## saint_ber 2.6 3.4 14.0 0.4 2.6
## setter 2.0 1.4 1.5 12.4 0.6
## teckel 7.9 2.9 0.5 2.9 2.7
## terre_neu 1.1 2.3 7.7 7.9 10.0

# Commentaires : On voit que 2 individus contribuent formement à l'axe 1 "bull-dog", "dog_all"


# (avec des contributions de l'ordre de 8%). "colley" n'a pas du tout contribué à la fabrication de ce premier
# axe factoriel.
# Pour l'axe 2, c'est essentiellement "basset", "dalmatien", "epagn_bre" et "labrador" qui ont fortement contribué à sa fabr
ication.
#
# NB : je rappelle que l'on ne souhaite pas que seul un individu (ou peu d'invidus lorsque n est grand)
# contribue à la fabrication du (ou des) premier(s) axe(s)
# factoriels car cela rendrait alors les résultats de l'étude instables dans le sens où la présence ou pas de cet
# individu dans les données va entrainer une modification dans la construction des premiers axes factoriels.
# Ici, ce n'est pas le cas.

res$var # permet d'afficher l'ensemble des sorties numériques associées aux variables :

## $coord
## Dim 1 Dim 2 Dim 3 Dim 4 Dim 5
## T- 1.1849557 0.92389650 -0.61599962 0.12014924 -0.01996350
## T+ 0.8510880 -1.23171972 1.01605178 0.34245635 -0.31004022
## T++ -0.8366753 -0.02057846 -0.05121744 -0.17022176 0.11266304
## P- 1.1689180 0.82434462 -0.35877044 0.16488382 -0.05122143
## P+ -0.3054053 -0.81887572 -0.23127208 -0.11836395 -0.19020146
## P++ -1.0151341 0.97390062 1.22159452 0.06760494 0.61451838
## V- 0.3199406 1.04490006 0.40172878 -0.08033130 0.30590834
## V+ 0.6036867 -0.88781355 0.35631249 0.37024339 -0.37103561
## V++ -0.8920999 -0.37183247 -0.76308752 -0.23984823 -0.01008873
## I- -0.3490450 0.80855486 -0.35151126 0.02423769 -1.03505999
## I+ 0.3694426 -0.28550314 0.49320252 -0.60349180 0.14625633
## I++ -0.3350656 -0.45948302 -0.59992378 1.27524863 1.06319128
## Af- -0.8351500 0.28746968 0.06547357 -0.08315555 -0.04342350
## Af+ 0.7754964 -0.26693613 -0.06079688 0.07721587 0.04032182
## Ag- 0.4007145 -0.19425299 -0.30972341 -0.51178817 0.34771663
## Ag+ -0.4315386 0.20919553 0.33354829 0.55115649 -0.37446406
##
## $contrib
## Dim 1 Dim 2 Dim 3 Dim 4 Dim 5
## T- 12.5978150 9.58661729 7.7724161 0.39590918 0.011470466
## T+ 4.6420727 12.17067028 15.1042375 2.29739639 1.976131613
## T++ 13.4585463 0.01019149 0.1151394 1.70285200 0.782823704
## P- 14.0104164 8.72224556 3.0131477 0.85212159 0.086298489
## P+ 1.6736860 15.06207234 2.1911472 0.76846202 2.082406452
## P++ 6.6040417 7.60886705 21.8333953 0.08953284 7.763356494
## V- 1.3119931 17.51742290 4.7224026 0.25282794 3.847622109
## V+ 3.7368537 10.11705778 2.9720027 4.29655213 4.528255671
## V++ 9.1804174 1.99644722 15.3351608 2.02848142 0.003766389
## I- 1.2492400 8.39130827 2.8924483 0.01841315 35.239586898
## I+ 2.2742083 1.70014447 9.2531808 18.54990013 1.143358563
## I++ 0.8633836 2.03240794 6.3188861 38.22931061 27.885847123
## Af- 11.6215827 1.72364624 0.1630694 0.35219351 0.100786614
## Af+ 10.7914697 1.60052866 0.1514216 0.32703683 0.093587570
## Ag- 2.8813167 0.84758676 3.9298252 14.36693087 6.959671259
## Ag+ 3.1029565 0.91278575 4.2321194 15.47207940 7.495030587
##
## $cos2
## Dim 1 Dim 2 Dim 3 Dim 4 Dim 5
## T- 0.49144201 0.2987546600 0.132809435 0.005052544 1.394894e-04
## T+ 0.16462520 0.3448030588 0.234627550 0.026653716 2.184658e-02
## T++ 0.87503205 0.0005293413 0.003279033 0.036219310 1.586620e-02
## P- 0.57531341 0.2861238116 0.054196308 0.011447021 1.104688e-03
## P+ 0.10044717 0.7221387844 0.057601141 0.015087719 3.895941e-02
## P++ 0.23420393 0.2155641859 0.339157541 0.001038734 8.582564e-02
## V- 0.06021292 0.6422447857 0.094932948 0.003795952 5.504701e-02
## V+ 0.15344741 0.3318791146 0.053456249 0.057717964 5.796523e-02
## V++ 0.39792110 0.0691296921 0.291151283 0.028763587 5.089122e-05
## I- 0.05129787 0.2752677726 0.052025334 0.000247354 4.510944e-01
## I+ 0.12673870 0.0756897524 0.225873819 0.338187895 1.986299e-02
## I++ 0.03207684 0.0603213262 0.102831012 0.464645451 3.229645e-01
## Af- 0.64765585 0.0767360421 0.003980589 0.006420928 1.750915e-03
## Af+ 0.64765585 0.0767360421 0.003980589 0.006420928 1.750915e-03
## Ag- 0.17292377 0.0406368567 0.103307716 0.282075371 1.302074e-01
## Ag+ 0.17292377 0.0406368567 0.103307716 0.282075371 1.302074e-01
##
## $[Link]
## Dim 1 Dim 2 Dim 3 Dim 4 Dim 5
## T- 3.5745618 2.7870452 -1.8582372 0.36244468 -0.06022230
## T+ 2.0688777 -2.9941409 2.4698818 0.83246419 -0.75366505
## T++ -4.7697834 -0.1173153 -0.2919843 -0.97041335 0.64227815
## P- 3.8675766 2.7274932 -1.1870569 0.54554794 -0.16947537
## P+ -1.6160527 -4.3330830 -1.2237768 -0.62632315 -1.00645152
## P++ -2.4676512 2.3674182 2.9695279 0.16433829 1.49380947
## V- 1.2512138 4.0863632 1.5710686 -0.31415719 1.19633699
## V+ 1.9974065 -2.9374916 1.1789243 1.22501717 -1.22763837
## V++ -3.2165119 -1.3406610 -2.7513512 -0.86478510 -0.03637543
## I- -1.1548786 2.6752499 -1.1630386 0.08019479 -3.42468309
## I+ 1.8152703 -1.4028306 2.4233694 -2.96527996 0.71863604
## I++ -0.9132348 -1.2523396 -1.6351166 3.47574190 2.89777098
## Af- -4.1035414 1.4124932 0.3217069 -0.40858798 -0.21336304
## Af+ 4.1035414 -1.4124932 -0.3217069 0.40858798 0.21336304
## Ag- 2.1203816 -1.0278902 -1.6389023 -2.70812844 1.83994344
## Ag+ -2.1203816 1.0278902 1.6389023 2.70812844 -1.83994344
##
## $eta2
## Dim 1 Dim 2 Dim 3 Dim 4 Dim 5
## taille 0.8870733 0.50248565 0.291012710 0.041557939 0.024955885
## poids 0.6440465 0.72468773 0.342222614 0.016166144 0.089467614
## velocite 0.4111741 0.68400737 0.291490812 0.062182113 0.075483501
## intellig 0.1267635 0.27987008 0.233709854 0.536921657 0.578930725
## affect 0.6476559 0.07673604 0.003980589 0.006420928 0.001750915
## agress 0.1729238 0.04063686 0.103307716 0.282075371 0.130207379

# coordonnées, contributions, cosinus carrés des modalités, rapports de corrélations des variables
# NB : les coordonnées peuvent être utiles dans le cas où deux modalités sont projetées au même endroit.

round(res$var$cos2,digits=3) # uniquement les cosinus carres (arrondis à 3 chiffres après la virgule)

## Dim 1 Dim 2 Dim 3 Dim 4 Dim 5


## T- 0.491 0.299 0.133 0.005 0.000
## T+ 0.165 0.345 0.235 0.027 0.022
## T++ 0.875 0.001 0.003 0.036 0.016
## P- 0.575 0.286 0.054 0.011 0.001
## P+ 0.100 0.722 0.058 0.015 0.039
## P++ 0.234 0.216 0.339 0.001 0.086
## V- 0.060 0.642 0.095 0.004 0.055
## V+ 0.153 0.332 0.053 0.058 0.058
## V++ 0.398 0.069 0.291 0.029 0.000
## I- 0.051 0.275 0.052 0.000 0.451
## I+ 0.127 0.076 0.226 0.338 0.020
## I++ 0.032 0.060 0.103 0.465 0.323
## Af- 0.648 0.077 0.004 0.006 0.002
## Af+ 0.648 0.077 0.004 0.006 0.002
## Ag- 0.173 0.041 0.103 0.282 0.130
## Ag+ 0.173 0.041 0.103 0.282 0.130

round(sort(apply(res$var$cos2[,1:2], 1,sum), decreasing = TRUE) , digit=3) # cos2 avec le plan et trié par ordre décroissant

## T++ P- P+ T- Af+ Af- V- T+ V+ V++ P++ I- Ag-


## 0.876 0.861 0.823 0.790 0.724 0.724 0.702 0.509 0.485 0.467 0.450 0.327 0.214
## Ag+ I+ I++
## 0.214 0.202 0.092

plot(res,axes=c(1,2),choix="ind", invisible="ind", selectMod = "cos2 7")

# Comme pour les individus, les cosinus carrés nous donnent la qualité (en %) de réprésentation des modalités sur les
# axes factoriels.
# Par exemple, la modalité "V-" est mal représentée sur l'axe 1 (6% seulement de
# l'information de cette modalité est portée par cet axe), mais elle est bien représentée sur l'axe 2 (64,2% de
# l'information de cette modalité est fournie par l'axe vertical).
# Globalement sur le plan principal (1-2), cette modalité "V-" a une qualité de représentation
# égale à 7% + 64,2% = 70,2%, elle est donc plutôt bien représentée sur le plan 1-2.
#
# NB : on peut sommer les qualités de représentation de l'axe 1 et de l'axe 2 pour avoir la qualité de représentation
# sur le plan 1-2, car les axes sont construits orthogonaux entre eux, et il n'y a donc pas de redondance d'information
# entre les axes factoriels.
#
# Sept modalités (T++, P-, P+, T-, Af+, Af-, V-) sont bien représentée sur le plan factoriel 1-2 (qualité supérieure à 70%)
et
# et seule la modalité I++ est vraiment mal représentée avec 9,2% de qualité de représentation..

round(res$var$contrib,digits=1) # uniquement les contributions en % (arrondies à un chiffre après la virgule)

## Dim 1 Dim 2 Dim 3 Dim 4 Dim 5


## T- 12.6 9.6 7.8 0.4 0.0
## T+ 4.6 12.2 15.1 2.3 2.0
## T++ 13.5 0.0 0.1 1.7 0.8
## P- 14.0 8.7 3.0 0.9 0.1
## P+ 1.7 15.1 2.2 0.8 2.1
## P++ 6.6 7.6 21.8 0.1 7.8
## V- 1.3 17.5 4.7 0.3 3.8
## V+ 3.7 10.1 3.0 4.3 4.5
## V++ 9.2 2.0 15.3 2.0 0.0
## I- 1.2 8.4 2.9 0.0 35.2
## I+ 2.3 1.7 9.3 18.5 1.1
## I++ 0.9 2.0 6.3 38.2 27.9
## Af- 11.6 1.7 0.2 0.4 0.1
## Af+ 10.8 1.6 0.2 0.3 0.1
## Ag- 2.9 0.8 3.9 14.4 7.0
## Ag+ 3.1 0.9 4.2 15.5 7.5

# Les contributions (en %) des modalités à la fabrication des axes factoriels nous indiquent naturellement que seules les
# modalités T-, T++, P-, Af- et Af+ ont beaucoup contribué à la fabrication de l'axe 1
# (avec un pourcentage de contribution de l'ordre de 85,4%). Ces modalités vont permettrent de caractériser cet axe.
# Les modalités T+, P+, V-, V+ ) sont les plus contributrice à la fabrication de l'axe 2
# (avec un pourcentage de contribution supérieur à 10%).

#######################################################################################
#######################################################################################
#######################################################################################

#=========================================================================
# Jeu de données "the" (code et commentaires rapides des sorties)
#=========================================================================
library(FactoMineR)

the <- [Link]("../data/[Link]" , header=TRUE, sep=";")

for (j in 1:18)
the[,j] <- [Link](the[,j])

summary(the[,1:18])

## [Link] gouter soiree [Link]


## [Link] dej:156 gouter :169 [Link] apres dej : 44
## ptt dej :144 [Link] soiree :103 [Link] dej:256
##
##
##
##
## [Link] [Link] maison travail
## apres diner : 21 [Link] moment:197 maison :291 [Link]
## [Link] diner:279 tt moment :103 [Link]: 9 travail : 87
##
##
##
##
## [Link].t amis resto bar
## [Link] de t:242 amis :196 [Link] bar : 63
## salon de t : 58 [Link] resto : 79 [Link]
##
##
##
##
## variete comment sucre forme
## noir : 74 autre : 9 [Link] sachet :170
## parfume:193 citron: 33 sucre :145 sachet+vrac: 94
## vert : 33 lait : 63 vrac : 36
## pur :195
##
##
## lieuachat type
## GMS :192 t_bas_de_gamme : 7
## GMS+[Link]. : 78 t_haut_de_gamme: 53
## magasin specialise: 30 t_inconnu : 12
## t_marque_connue: 95
## t_MDD : 21
## t_variable :112

head(the)

## [Link] gouter soiree [Link] [Link]


## 1 ptt dej [Link] [Link] [Link] dej [Link] diner
## 2 ptt dej [Link] [Link] [Link] dej [Link] diner
## 3 [Link] dej gouter soiree [Link] dej apres diner
## 4 [Link] dej [Link] [Link] [Link] dej apres diner
## 5 ptt dej [Link] soiree [Link] dej [Link] diner
## 6 [Link] dej [Link] [Link] [Link] dej apres diner
## [Link] maison travail [Link].t amis resto bar
## 1 [Link] moment maison [Link] [Link] de t [Link] [Link] [Link]
## 2 [Link] moment maison [Link] [Link] de t [Link] [Link] [Link]
## 3 [Link] moment maison travail [Link] de t amis resto [Link]
## 4 [Link] moment maison [Link] [Link] de t [Link] [Link] [Link]
## 5 tt moment maison [Link] [Link] de t [Link] [Link] [Link]
## 6 [Link] moment maison [Link] [Link] de t [Link] [Link] [Link]
## variete comment sucre forme lieuachat type age sexe CSP
## 1 noir pur sucre sachet GMS t_inconnu 39 H cadre moyen
## 2 noir lait [Link] sachet GMS t_variable 45 F cadre moyen
## 3 parfume pur [Link] sachet GMS t_variable 47 F autre actif
## 4 parfume pur sucre sachet GMS t_variable 23 H etudiant
## 5 parfume pur [Link] sachet GMS t_variable 48 H employe
## 6 parfume pur [Link] sachet GMS t_MDD 21 H etudiant
## Sport age_Q frequence [Link] spiritualite
## 1 sportif 35-44 1/jour [Link]-exotisme [Link]
## 2 sportif 45-59 1/jour evasion-exotisme [Link]
## 3 sportif 45-59 + de 2/jour [Link]-exotisme [Link]
## 4 [Link] 15-24 1/jour evasion-exotisme spiritualite
## 5 sportif 45-59 + de 2/jour evasion-exotisme spiritualite
## 6 sportif 15-24 1/jour [Link]-exotisme [Link]
## [Link] diuretique convivialite [Link]
## 1 bon pr la sante [Link] [Link] [Link] fer
## 2 bon pr la sante diuretique [Link] [Link] fer
## 3 bon pr la sante diuretique convivialite [Link] fer
## 4 bon pr la sante [Link] [Link] [Link] fer
## 5 [Link] pr la sante diuretique convivialite [Link] fer
## 6 bon pr la sante [Link] [Link] [Link] fer
## feminin raffine amaigrissant excitant relaxant
## 1 [Link] [Link] [Link] [Link] [Link]
## 2 [Link] [Link] [Link] excitant [Link]
## 3 [Link] [Link] [Link] [Link] relaxant
## 4 [Link] raffine [Link] [Link] relaxant
## 5 [Link] [Link] [Link] [Link] relaxant
## 6 [Link] [Link] [Link] [Link] relaxant
## [Link]
## 1 [Link] effet sante
## 2 [Link] effet sante
## 3 [Link] effet sante
## 4 [Link] effet sante
## 5 [Link] effet sante
## 6 [Link] effet sante

# l'ACM est réalisée avec:


# les 18 questions premières variables de comportement en variables actives
# la variable quantitative age en illustrative
# les autres variable qualitative (questions signalétiques ou sur l'image du produit) en illustratives

res <- MCA(the, [Link] = 19, [Link] = 20:36, graph=FALSE)


res <- MCA(the[,1:18], graph=FALSE)

# Etude du nombre d'axes à retenir

round(res$eig, digit=3)

## eigenvalue percentage of variance cumulative percentage of variance


## dim 1 0.148 9.885 9.885
## dim 2 0.122 8.103 17.988
## dim 3 0.090 6.001 23.989
## dim 4 0.078 5.204 29.192
## dim 5 0.074 4.917 34.109
## dim 6 0.071 4.759 38.868
## dim 7 0.068 4.522 43.390
## dim 8 0.065 4.355 47.745
## dim 9 0.062 4.123 51.867
## dim 10 0.059 3.902 55.769
## dim 11 0.057 3.805 59.574
## dim 12 0.054 3.628 63.202
## dim 13 0.052 3.462 66.664
## dim 14 0.049 3.250 69.914
## dim 15 0.048 3.221 73.135
## dim 16 0.047 3.127 76.262
## dim 17 0.046 3.037 79.298
## dim 18 0.040 2.683 81.982
## dim 19 0.038 2.541 84.523
## dim 20 0.037 2.438 86.961
## dim 21 0.036 2.378 89.339
## dim 22 0.035 2.323 91.662
## dim 23 0.031 2.055 93.717
## dim 24 0.029 1.915 95.633
## dim 25 0.027 1.821 97.454
## dim 26 0.021 1.407 98.861
## dim 27 0.017 1.139 100.000

barplot(res$eig[,1], main="Eigenvalues", [Link]=1:nrow(res$eig))

# Commentaires rapides : si l'on se base l'ébouli des valeurs propres, il semblerait


#raisonnable de regarder 3 dimensions. On note cependant que seulement 23,9% de
# l'inertie est expliquée par ces 3 dimensions. En ACM, les pourcentages d'inertie
# expliquée par les axes sont souvent petits.

# Du point de vue des variables, on regarde quelles les informations qui ressortent
# du plan 1-2 ?

plot(res, choix="var", [Link] = "classic")

plot(res, choix="var", invisible = c("[Link]", "[Link]"))

plot(res, choix="var", invisible = c("[Link]", "[Link]"),


[Link] = "classic")

round(res$var$eta2, digit=3)

## Dim 1 Dim 2 Dim 3 Dim 4 Dim 5


## [Link] 0.025 0.026 0.215 0.083 0.013
## gouter 0.192 0.007 0.054 0.059 0.013
## soiree 0.053 0.002 0.106 0.019 0.000
## [Link] 0.075 0.026 0.016 0.049 0.173
## [Link] 0.033 0.048 0.022 0.295 0.046
## [Link] 0.045 0.001 0.101 0.049 0.009
## maison 0.005 0.000 0.134 0.003 0.009
## travail 0.112 0.043 0.005 0.065 0.008
## [Link].t 0.372 0.022 0.008 0.003 0.014
## amis 0.243 0.015 0.103 0.001 0.011
## resto 0.226 0.059 0.002 0.006 0.143
## bar 0.147 0.007 0.043 0.001 0.028
## variete 0.090 0.160 0.332 0.032 0.162
## comment 0.103 0.043 0.196 0.303 0.241
## sucre 0.015 0.031 0.210 0.007 0.034
## forme 0.299 0.513 0.016 0.185 0.097
## lieuachat 0.418 0.626 0.042 0.106 0.007
## type 0.216 0.561 0.015 0.142 0.318

# Trois variables sont globalement liées aux deux dimensions : lieu d'achat, type et forme.
# En effet, ces trois variables ont des valeurs de rapports de corrélation plus élevées
# (contribuent plus).

# On regarde maintenant le graphique des modalités sur le plan 1-2 en choisissant


# de n'afficher que les 10 modalités qui contribuent le plus.

plot(res, choix="ind")

plot(res, choix="ind", invisible=c("ind","[Link]"), [Link] = "classic")

round(res$var$contrib[,1:2] , digit=3) # affiche les contributions des modalités

## Dim 1 Dim 2
## [Link] dej 0.457 0.560
## ptt dej 0.495 0.607
## gouter 3.142 0.135
## [Link] 4.053 0.174
## [Link] 0.683 0.028
## soiree 1.307 0.053
## apres dej 2.385 1.018
## [Link] dej 0.410 0.175
## apres diner 1.146 2.025
## [Link] diner 0.086 0.152
## [Link] moment 0.576 0.014
## tt moment 1.102 0.027
## maison 0.006 0.000
## [Link] 0.193 0.005
## [Link] 1.212 0.575
## travail 2.967 1.407
## [Link] de t 2.694 0.191
## salon de t 11.240 0.796
## amis 3.159 0.242
## [Link] 5.953 0.456
## [Link] 2.234 0.708
## resto 6.251 1.981
## bar 4.358 0.248
## [Link] 1.158 0.066
## noir 0.108 1.657
## parfume 0.261 2.390
## vert 2.985 3.282
## autre 2.324 0.000
## citron 0.941 0.472
## lait 0.004 1.353
## pur 0.584 0.140
## [Link] 0.277 0.680
## sucre 0.296 0.727
## sachet 4.317 4.494
## sachet+vrac 6.787 0.025
## vrac 0.093 18.923
## GMS 4.383 4.592
## GMS+[Link]. 11.263 0.110
## magasin specialise 0.013 23.888
## t_bas_de_gamme 0.408 0.076
## t_haut_de_gamme 0.336 20.511
## t_inconnu 0.157 1.039
## t_marque_connue 3.002 2.455
## t_MDD 0.739 0.732
## t_variable 3.454 0.808

round(sort(apply(res$var$contrib[,1:2], 1,sum),
decreasing = TRUE) , digit=3) # modalité par ordre décroissant de contribution au plan

## magasin specialise t_haut_de_gamme vrac salon de t


## 23.902 20.847 19.016 12.036
## GMS+[Link]. GMS sachet resto
## 11.372 8.975 8.811 8.232
## sachet+vrac [Link] vert t_marque_connue
## 6.812 6.409 6.266 5.458
## bar travail t_variable [Link]
## 4.605 4.374 4.263 4.228
## apres dej amis gouter apres diner
## 3.402 3.401 3.277 3.171
## [Link] [Link] de t parfume autre
## 2.943 2.885 2.651 2.325
## [Link] noir t_MDD citron
## 1.786 1.765 1.471 1.413
## soiree lait [Link] t_inconnu
## 1.360 1.357 1.224 1.196
## tt moment ptt dej sucre [Link] dej
## 1.129 1.102 1.023 1.017
## [Link] pur [Link] [Link] moment
## 0.957 0.724 0.711 0.590
## [Link] dej t_bas_de_gamme [Link] diner [Link]
## 0.585 0.484 0.239 0.198
## maison
## 0.006

plot(res, choix="ind", invisible=c("ind","[Link]"), selectMod = "contrib 15")

plot(res, choix="ind", invisible=c("ind","[Link]"), selectMod = "cos2 15",


[Link]="classic")

# On retrouve principalement les modalités des variables globalement liées aux axes.
# On observe dans ce graphique les modalités qui s'associent.

# On regarde maintenant le graphiques des individus sur les plans 1-2

plot(res, choix="ind", invisible=c("var", "[Link]"), habillage= 17) # individus colorés selon le lieu d'achat

plot(res, choix="ind", invisible=c("var", "[Link]"), label = "none")

# On retrouve que les individus sont bien discriminés par les modalités de la variable lieu d'achat.

# Enfin on peut récuperer la matrice des coordonnées factorielles pour faire une classification par exemple

head(res$ind$coord) # uniquement 5 composantes principales

## Dim 1 Dim 2 Dim 3 Dim 4 Dim 5


## 1 -0.54101455 -0.14860555 -0.305906004 0.15876105 0.57785384
## 2 -0.36124010 -0.07798738 -0.632765190 0.06073348 0.03260245
## 3 0.07293693 -0.16924589 0.246028962 -0.45077746 0.17693914
## 4 -0.57183186 0.01762074 0.203297634 -0.63925837 0.12019206
## 5 -0.25322802 -0.11780164 0.006393492 0.01678726 -0.12655040
## 6 -0.68442482 0.03204058 -0.018115492 -0.45844399 0.15371015

res <- MCA(the, ncp=27, [Link] = 19, [Link] = 20:36, graph=FALSE)


head(res$ind$coord) # toutes (27) les composantes principales

## Dim 1 Dim 2 Dim 3 Dim 4 Dim 5 Dim 6


## 1 -0.54101455 -0.14860555 -0.305906004 0.15876105 0.57785384 0.07733873
## 2 -0.36124010 -0.07798738 -0.632765190 0.06073348 0.03260245 0.00160563
## 3 0.07293693 -0.16924589 0.246028962 -0.45077746 0.17693914 0.22281083
## 4 -0.57183186 0.01762074 0.203297634 -0.63925837 0.12019206 -0.12559503
## 5 -0.25322802 -0.11780164 0.006393492 0.01678726 -0.12655040 0.06221474
## 6 -0.68442482 0.03204058 -0.018115492 -0.45844399 0.15371015 -0.21750956
## Dim 7 Dim 8 Dim 9 Dim 10 Dim 11 Dim 12
## 1 0.31557695 -0.07697798 0.173105013 -0.01241095 -0.3767219 0.48647935
## 2 0.21070940 0.02838910 0.076187307 0.26291088 -0.1465449 0.01896905
## 3 -0.19676185 0.18821853 0.233542083 -0.30636042 -0.2999194 0.19480636
## 4 0.21613673 0.22497091 0.002686475 0.06676405 -0.2113344 0.22206691
## 5 -0.01312595 -0.30022882 -0.033916454 0.39212977 -0.1050746 0.14466831
## 6 -0.17247853 0.45378240 -0.010024705 -0.03212454 0.1610227 0.62264992
## Dim 13 Dim 14 Dim 15 Dim 16 Dim 17 Dim 18
## 1 0.06082607 -0.26137757 -0.09597679 0.20432984 -0.07405680 0.33079078
## 2 0.09420543 -0.02136289 0.07131184 0.25214458 -0.20754203 -0.03520720
## 3 -0.20975292 0.45444679 0.22820247 -0.45215907 -0.09292604 0.08649407
## 4 0.09007325 0.25315824 0.02541344 -0.26004008 -0.16376606 -0.17802360
## 5 0.14272626 -0.02103863 0.09716002 -0.05680411 -0.29394505 0.28194771
## 6 -0.01022813 0.25374700 0.33416764 -0.33476739 0.01210859 -0.23215867
## Dim 19 Dim 20 Dim 21 Dim 22 Dim 23 Dim 24
## 1 0.463168755 -0.22581617 -0.02519934 0.194609555 0.30354001 -0.334499273
## 2 -0.264736950 0.18821805 -0.13456054 0.180844168 -0.09826942 0.021621255
## 3 -0.357709420 0.25011390 0.09866294 0.005536224 -0.22910076 0.022940799
## 4 -0.115819383 0.21980991 0.03777782 0.105915301 -0.09936206 -0.266002482
## 5 -0.005795833 0.36492967 -0.14125473 -0.175047930 -0.13289421 0.083404716
## 6 -0.273938362 0.06994365 -0.17525400 -0.264279962 0.09348759 -0.001541189
## Dim 25 Dim 26 Dim 27
## 1 0.06764422 0.06106436 0.06965033
## 2 -0.01171576 -0.07401422 -0.01727775
## 3 -0.20878634 0.22685989 -0.08415140
## 4 0.01320069 0.16145597 -0.09660558
## 5 0.11358795 0.12713404 0.05057909
## 6 0.26052696 0.17017986 -0.02436056

X <- res$ind$coord

# On a ainsi recodé toutes les variables qualitatives (actives) en 27 variables quantitatives.


d <- dist(X)
n <- 300
tree <- hclust(d^2/(2*n), method="ward.D")
plot(tree, main="CAH de Ward", xlab ="", sub="", hang=-1,labels = FALSE)
[Link](tree, k=4)

part <- cutree(tree, k=4)

# Interprétation via l'ACM


part <- [Link](part)
levels(part) <- paste("cluster",1:4,sep="")
res <- MCA([Link](the, part), [Link] = 19, [Link] = 20:37, graph=FALSE)
plot(res, habillage=37, invisible=c("var", "[Link]"), title="") #

plot(res,choix="var", invisible=c("[Link]", "[Link]"),


title="", [Link] = "classic")

# Interprétation avec les variables quantitatives


des <- catdes([Link](the, part), [Link]=37)
print(des$category,digits=2) #

## $cluster1
## Cla/Mod Mod/Cla Global [Link] [Link]
## lieuachat=GMS 65 89.2 64.0 2.4e-18 8.7
## forme=sachet 63 77.0 56.7 2.7e-11 6.7
## [Link].t=[Link] de t 55 95.7 80.7 1.3e-10 6.4
## type=t_MDD 100 15.1 7.0 4.0e-08 5.5
## bar=[Link] 54 92.1 79.0 1.1e-07 5.3
## gouter=[Link] 63 59.0 43.7 6.8e-07 5.0
## type=t_marque_connue 67 46.0 31.7 6.9e-07 5.0
## frequence=1/jour 64 43.9 31.7 2.6e-05 4.2
## amis=[Link] 62 46.8 34.7 4.7e-05 4.1
## type=t_inconnu 100 8.6 4.0 7.5e-05 4.0
## resto=[Link] 53 84.2 73.7 1.1e-04 3.9
## [Link]=[Link] dej 51 93.5 85.3 1.5e-04 3.8
## [Link]=apres diner 86 12.9 7.0 1.6e-04 3.8
## variete=vert 76 18.0 11.0 3.5e-04 3.6
## maison=[Link] 100 6.5 3.0 8.5e-04 3.3
## type=t_bas_de_gamme 100 5.0 2.3 4.2e-03 2.9
## soiree=[Link] 52 74.1 65.7 4.3e-03 2.9
## convivialite=[Link] 62 25.9 19.3 8.1e-03 2.6
## [Link]=[Link] moment 52 73.4 65.7 9.1e-03 2.6
## amaigrissant=amaigrissant 62 20.1 15.0 2.2e-02 2.3
## comment=lait 59 26.6 21.0 2.8e-02 2.2
## CSP=ouvrier 75 6.5 4.0 4.9e-02 2.0
## variete=parfume 42 58.3 64.3 4.3e-02 -2.0
## lieuachat=magasin specialise 27 5.8 10.0 2.3e-02 -2.3
## amaigrissant=[Link] 44 79.9 85.0 2.2e-02 -2.3
## [Link]=tt moment 36 26.6 34.3 9.1e-03 -2.6
## convivialite=convivialite 43 74.1 80.7 8.1e-03 -2.6
## comment=citron 24 5.8 11.0 6.7e-03 -2.7
## soiree=soiree 35 25.9 34.3 4.3e-03 -2.9
## comment=autre 0 0.0 3.0 3.3e-03 -2.9
## maison=maison 45 93.5 97.0 8.5e-04 -3.3
## [Link]=[Link] diner 43 87.1 93.0 1.6e-04 -3.8
## [Link]=apres dej 20 6.5 14.7 1.5e-04 -3.8
## resto=resto 28 15.8 26.3 1.1e-04 -3.9
## forme=vrac 17 4.3 12.0 9.7e-05 -3.9
## amis=amis 38 53.2 65.3 4.7e-05 -4.1
## type=t_haut_de_gamme 21 7.9 17.7 2.8e-05 -4.2
## forme=sachet+vrac 28 18.7 31.3 1.0e-05 -4.4
## frequence=+ de 2/jour 30 27.3 42.3 9.7e-07 -4.9
## gouter=gouter 34 41.0 56.3 6.8e-07 -5.0
## bar=bar 17 7.9 21.0 1.1e-07 -5.3
## [Link].t=salon de t 10 4.3 19.3 1.3e-10 -6.4
## type=t_variable 21 17.3 37.3 1.2e-11 -6.8
## lieuachat=GMS+[Link]. 9 5.0 26.0 4.8e-16 -8.1
##
## $cluster2
## Cla/Mod Mod/Cla Global [Link] [Link]
## lieuachat=GMS+[Link]. 83.3 49.62 26.0 8.5e-17 8.3
## type=t_variable 72.3 61.83 37.3 8.2e-15 7.8
## forme=sachet+vrac 67.0 48.09 31.3 4.1e-08 5.5
## bar=bar 69.8 33.59 21.0 2.9e-06 4.7
## gouter=gouter 55.0 70.99 56.3 6.3e-06 4.5
## frequence=+ de 2/jour 58.3 56.49 42.3 1.4e-05 4.4
## [Link]=apres dej 72.7 24.43 14.7 3.1e-05 4.2
## [Link].t=salon de t 67.2 29.77 19.3 6.6e-05 4.0
## [Link]=[Link] diner 46.6 99.24 93.0 6.7e-05 4.0
## variete=parfume 51.8 76.34 64.3 1.3e-04 3.8
## resto=resto 62.0 37.40 26.3 1.5e-04 3.8
## amis=amis 51.5 77.10 65.3 1.5e-04 3.8
## maison=maison 45.0 100.00 97.0 5.2e-03 2.8
## soiree=soiree 54.4 42.75 34.3 7.4e-03 2.7
## sexe=F 50.0 67.94 59.3 7.7e-03 2.7
## amaigrissant=[Link] 46.7 90.84 85.0 1.2e-02 2.5
## convivialite=convivialite 46.7 86.26 80.7 3.1e-02 2.2
## CSP=etudiant 54.3 29.01 23.3 4.3e-02 2.0
## convivialite=[Link] 31.0 13.74 19.3 3.1e-02 -2.2
## type=t_bas_de_gamme 0.0 0.00 2.3 1.7e-02 -2.4
## amaigrissant=amaigrissant 26.7 9.16 15.0 1.2e-02 -2.5
## sexe=H 34.4 32.06 40.7 7.7e-03 -2.7
## soiree=[Link] 38.1 57.25 65.7 7.4e-03 -2.7
## comment=autre 0.0 0.00 3.0 5.2e-03 -2.8
## maison=[Link] 0.0 0.00 3.0 5.2e-03 -2.8
## age_Q=45-59 27.9 12.98 20.3 5.1e-03 -2.8
## type=t_inconnu 0.0 0.00 4.0 8.6e-04 -3.3
## frequence=1/jour 28.4 20.61 31.7 2.7e-04 -3.6
## type=t_marque_connue 28.4 20.61 31.7 2.7e-04 -3.6
## amis=[Link] 28.8 22.90 34.7 1.5e-04 -3.8
## resto=[Link] 37.1 62.60 73.7 1.5e-04 -3.8
## [Link]=apres diner 4.8 0.76 7.0 6.7e-05 -4.0
## [Link].t=[Link] de t 38.0 70.23 80.7 6.6e-05 -4.0
## [Link]=[Link] dej 38.7 75.57 85.3 3.1e-05 -4.2
## forme=sachet 32.9 42.75 56.7 2.0e-05 -4.3
## variete=vert 9.1 2.29 11.0 7.3e-06 -4.5
## gouter=[Link] 29.0 29.01 43.7 6.3e-06 -4.5
## lieuachat=GMS 33.9 49.62 64.0 5.6e-06 -4.5
## type=t_MDD 0.0 0.00 7.0 3.3e-06 -4.7
## bar=[Link] 36.7 66.41 79.0 2.9e-06 -4.7
## lieuachat=magasin specialise 3.3 0.76 10.0 2.9e-07 -5.1
##
## $cluster3
## Cla/Mod Mod/Cla Global [Link] [Link]
## comment=autre 100.0 100 3 2.1e-17 8.5
## resto=resto 8.9 78 26 1.7e-03 3.1
## [Link].t=salon de t 10.3 67 19 2.3e-03 3.0
## variete=noir 8.1 67 25 9.4e-03 2.6
## lieuachat=GMS+[Link]. 7.7 67 26 1.3e-02 2.5
## age_Q=60 et + 10.5 44 13 2.0e-02 2.3
## [Link]=bon pr la sante 4.3 100 70 3.8e-02 2.1
## [Link]=[Link] pr la sante 0.0 0 30 3.8e-02 -2.1
## [Link].t=[Link] de t 1.2 33 81 2.3e-03 -3.0
## resto=[Link] 0.9 22 74 1.7e-03 -3.1
## comment=pur 0.0 0 65 6.3e-05 -4.0
##
## $cluster4
## Cla/Mod Mod/Cla Global [Link] [Link]
## lieuachat=magasin specialise 70.0 100.0 10 1.4e-25 10.5
## forme=vrac 50.0 85.7 12 2.8e-16 8.2
## type=t_haut_de_gamme 32.1 81.0 18 5.2e-11 6.6
## raffine=raffine 9.3 95.2 72 7.6e-03 2.7
## resto=[Link] 9.0 95.2 74 1.3e-02 2.5
## CSP=cadre moyen 17.5 33.3 13 1.5e-02 2.4
## comment=citron 18.2 28.6 11 2.2e-02 2.3
## sexe=H 10.7 61.9 41 4.7e-02 2.0
## sexe=F 4.5 38.1 59 4.7e-02 -2.0
## variete=parfume 4.7 42.9 64 4.1e-02 -2.0
## type=t_marque_connue 2.1 9.5 32 1.9e-02 -2.4
## resto=resto 1.3 4.8 26 1.3e-02 -2.5
## CSP=employe 0.0 0.0 20 8.4e-03 -2.6
## raffine=[Link] 1.2 4.8 28 7.6e-03 -2.7
## type=t_variable 1.8 9.5 37 4.3e-03 -2.9
## forme=sachet+vrac 1.1 4.8 31 3.4e-03 -2.9
## lieuachat=GMS+[Link]. 0.0 0.0 26 1.4e-03 -3.2
## age_Q=15-24 0.0 0.0 31 3.3e-04 -3.6
## forme=sachet 1.2 9.5 57 4.9e-06 -4.6
## lieuachat=GMS 0.0 0.0 64 1.2e-10 -6.4

Vous aimerez peut-être aussi