Premièrement, il existe différentes façons de construire ce qu'on appelle des biplots dans le cas de l'analyse des correspondances. Dans tous les cas, l'idée de base est de trouver un moyen de montrer la meilleure approximation 2D des "distances" entre les cellules de ligne et les cellules de colonne. En d'autres termes, nous recherchons une hiérarchie (nous parlons également d '"ordination") des relations entre les lignes et les colonnes d'un tableau de contingence.
Très brièvement, CA décompose la statistique du chi carré associée au tableau bidirectionnel en facteurs orthogonaux qui maximisent la séparation entre les scores des lignes et des colonnes (c'est-à-dire les fréquences calculées à partir du tableau des profils). Ici, vous voyez qu'il y a un lien avec PCA mais la mesure de la variance (ou la métrique) retenue dans CA est le , qui ne dépend que des profils de colonne (car il a tendance à donner plus d'importance aux modalités qui ont de grandes valeurs marginales, nous pouvons également repondérer les données initiales, mais c'est une autre histoire).χ2
Voici une réponse plus détaillée. L'implémentation proposée dans la corresp()
fonction (in MASS
) découle d'une vue de CA comme une décomposition SVD de matrices codées factices représentant les lignes et les colonnes (telles que , avec l'échantillon total). C'est à la lumière de l'analyse de corrélation canonique. En revanche, l'école française d'analyse des données considère CA comme une variante de l'ACP, où l'on cherche les directions qui maximisent l '«inertie» dans le nuage de données. Cela se fait en diagonalisant la matrice d'inertie calculée à partir de la table bidirectionnelle centrée et mise à l'échelle (par fréquences marginales), et en exprimant les profils de ligne et de colonne dans ce nouveau système de coordonnées.RtC= NN
Si vous considérez un tableau avec lignes et colonnes, chaque ligne est pondérée par sa somme marginale correspondante qui donne une série de fréquences conditionnelles associées à chaque ligne: . La colonne marginale est appelée profil moyen (pour les lignes). Cela nous donne un vecteur de coordonnées, également appelé profil (par ligne). Pour la colonne, nous avons . Dans les deux cas, nous considérerons les profils de ligne (associés à leur poids ) comme des individus dans l'espace de colonne, et les profils de colonne (associés à leur poidsi = 1 , … , Ij = 1 , … , JFj | je= nje j/ nje ⋅Fje | j= nje j/ n⋅ jjeFje ⋅JF⋅ j ) en tant qu'individus dans l'espace de ligne. La métrique utilisée pour calculer la proximité entre deux individus est la distance . Par exemple, entre deux rangées et , nous avonsχ2jei′
d2χ2(i,i′)=∑j=1Jnn⋅j(nijni⋅−ni′jni′⋅)2
Vous pouvez également voir le lien avec la statistique en notant que c'est simplement la distance entre les dénombrements observés et attendus, où les dénombrements attendus (sous , indépendance des deux variables) sont calculés comme pour chaque cellule . Si les deux variables devaient être indépendantes, les profils de lignes seraient tous égaux et identiques au profil marginal correspondant. En d'autres termes, lorsqu'il y a indépendance, votre table de contingence est entièrement déterminée par ses marges.H 0 n i ⋅ × n ⋅ j / n ( i , j )χ2H0ni⋅×n⋅j/n(i,j)
Si vous réalisez une PCA sur les profils de ligne (vus comme des individus), en remplaçant la distance euclidienne par lecos 2 i j χ 2χ2distance, alors vous obtenez votre CA. Le premier axe principal est la ligne la plus proche de tous les points, et la valeur propre correspondante est l'inertie expliquée par cette dimension. Vous pouvez faire de même avec les profils de colonne. On peut montrer qu'il existe une symétrie entre les deux approches, et plus précisément que les principaux composants (PC) pour les profils de colonne sont associés aux mêmes valeurs propres que les PC pour les profils de ligne. Ce qui est montré sur un biplot est les coordonnées des individus dans ce nouveau système de coordonnées, bien que les individus soient représentés dans un espace factoriel séparé. Pourvu que chaque individu / modalité soit bien représenté dans son espace factoriel (vous pouvez regarder lecos2de la modalité avec le 1er axe principal, qui est une mesure de la corrélation / association), vous pouvez même interpréter la proximité entre les éléments et de votre table de contingence (comme cela peut être fait en regardant les résidus de votre test d'indépendance, par exemple ).ijχ2chisq.test(tab)$expected-chisq.test(tab)$observed
L'inertie totale de votre CA (= la somme des valeurs propres) est la statistique divisée par (qui est Pearson ). n ϕ 2χ2nϕ2
En fait, il y a plusieurs paquets qui peuvent vous fournir des CA renforcé par rapport aux fonctions disponibles dans le MASS
package: ade4 , FactoMineR , Anacor et ca .
Le dernier est celui qui a été utilisé pour votre illustration particulière et un document a été publié dans le Journal of Statistical Software qui explique la plupart de ses fonctionnalités: analyse des correspondances dans R, avec deux et trois dimensions graphiques: Le paquet ca .
Ainsi, votre exemple sur les couleurs des yeux / cheveux peut être reproduit de plusieurs façons:
data(HairEyeColor)
tab <- apply(HairEyeColor, c(1, 2), sum) # aggregate on gender
tab
library(MASS)
plot(corresp(tab, nf=2))
corresp(tab, nf=2)
library(ca)
plot(ca(tab))
summary(ca(tab, nd=2))
library(FactoMineR)
CA(tab)
CA(tab, graph=FALSE)$eig # == summary(ca(tab))$scree[,"values"]
CA(tab, graph=FALSE)$row$contrib
library(ade4)
scatter(dudi.coa(tab, scannf=FALSE, nf=2))
Dans tous les cas, ce que nous lisons dans le biplot résultant est fondamentalement (je limite mon interprétation au 1er axe qui a expliqué la majeure partie de l'inertie):
- le premier axe met en évidence l'opposition claire entre la couleur des cheveux clairs et foncés, et entre les yeux bleus et bruns;
- les personnes aux cheveux blonds ont également tendance à avoir les yeux bleus et les personnes aux cheveux noirs ont tendance à avoir les yeux bruns.
Il y a beaucoup de ressources supplémentaires sur l'analyse des données sur le laboratoire de bioinformatique de Lyon, en France. C'est principalement en français, mais je pense que ce ne serait pas trop un problème pour vous. Les deux documents suivants devraient être intéressants comme premier départ:
Enfin, lorsque vous envisagez un codage disjonctif (factice) complet de variables, vous obtenez l' analyse de correspondance multiple .k