Analyse des Données Travaux Pratiques 3 1 Introduction Ce TP sera consacré aux analyses factorielles. La première partie présentera un exemple réel (et poussé) d une analyse factorielle des correspondances où l interprétation des différents axes est primordiale. La seconde partie montre un façon de combiner classification et analyses factorielles. Pour pouvoir utiliser les algorithmes d analyses factorielles, il est nécessaire de charger la bibliothèque correspondante dans R : library(mass) De même, les algorithmes de classification ascendante hiérarchique que nous allons utiliser par la suite sont présents dans la bibliothèque cluster. Pour charger la dite bibliothèque on procède donc de la même manière que précédemment : library(cluster) Remarque : Si on est un fana du click, on pourra aussi utiliser la commande générale package.manager(). Récapitulons les différentes étapes de l A.F.C. : N = (n ij ) est le tableau initial, il contient L lignes et K colonnes, et n i j n ij. K L On note n i = n ij et n j = n ij les marges de la ligne i et de la colonne j, j=1 i=1 D L =diag(n 1,..., n L ) et D K =diag(n 1,..., n K ) Pour l analyse en ligne on utilise la matrice X L = DL 1 N, et pour l analyse en colonne la matrice X K = DK 1t N Analyse en ligne : La métrique utilisée pour les individus est M L = ndk 1, La métrique utilisée pour les caractères est D = 1 D n L, la variance est alors égale à t X L DX L = V. On note u α les vecteurs propres de la matrice M L V de valeurs propres λ α (classés par ordre décroissant en supprimant la valeur propre triviale 1) 1. Les composantes principales sont alors les c α = X L u α dont le carré des normes vaut λ α (la métrique étant celle des caractères). La contribution d un individu i à la composante principale c α est alors égale à 1 λ α n i n (ci α) 2. 1 où α varie de 1 à r = Inf{K 1, L 1} qui est le nombre de valeurs propres, excepté la valeur propre triviale 1. 1
Le cosinus carré de l angle entre un individu i (une ligne de X L ) et une composante r principale c α est égal à (c i α) 2 / (c i β) 2 β=1 Analyse en colonne : La métrique utilisée pour les individus est M K = ndl 1, La métrique utilisée pour les caractères est D = 1 D n K, la variance est alors égale à t X K DX K = V. On note v α les vecteurs propres de la matrice M K V de valeurs propres λ α (classés par ordre décroissant en supprimant la valeur propre triviale 1) identiques aux valeurs propres de l analyse en lignes. Les composantes principales sont alors les d α = X K v α dont le carré des normes vaut λ α (la métrique étant celle des caractères). La contribution d un caractère j à la composante principale α est alors égale à 1 n j λ α n (dj α) 2. Le cosinus carré de l angle entre un caractère j (une ligne de X K ) et une composante r principale d α est égal à (d j α) 2 / (d j β )2. En résumé : c α = X L u α, d α = X K v α, c α = λ α v α, d α = λ α u α, λ α = n ( λ α v i n α) i 2 = i j β=1 n ( λ α u j n α) 2. j Attention : La commande que nous allons utiliser par la suite est corresp(). Les résultats de corresp() sont donnés dans l optique d une analyse canonique. On peut cependant faire le parallèle avec les résultats vus en cours : les corrélations canoniques correspondent aux racines carrées des valeurs propres les facteurs canoniques (row et column scores) correspondent aux vecteurs propres. Ainsi les column scores sont exactement les vecteurs propres de l analyse en lignes, et les row scores les vecteurs propres de l analyse en colonnes. 2 Fume, c est de l A.F.C. Cette étude de cas est extraite de l ouvrage de Jean-Pierre Benzécri Analyse des données. Tome 2 : l analyse des correspondances. Il s agit d une étude réelle dont nous avons complété les objectifs. Parmi les questions, certaines ne concernent pas spécifiquement l analyse statistique ; elles sont destinées à faciliter l interprétation des résultats de l AFC. Une enquête a été effectuée auprès de cent fumeurs afin de choisir les noms de deux nouvelles marques de cigarettes. La première marque est destinée à une clientèle masculine : 2
L homme ciblé est un connaisseur distingué, raffiné mais viril, de niveau socio-économique élevé. La seconde symbolise un public féminin, élégant, assuré, dynamique. Douze marques ont été retenues : Orly (Orl) Alezan (Ale) Corsaire (Cor) Directoire (Dir) Ducat (Duc) Fontenoy (Fon) Icare (Ica) Zodiac (Zod) Pavois (Pav) Cocker (Coc) Escale (Esc) Hôtesse (Hot) Pour évaluer leur image auprès du public, onze attributs ont été proposés aux fumeurs : vieillot - désuet (VD) nouveau riche (NR) sobre, élégant (SE) cocasse - ridicule (CR) racé (RA) mièvre (MI) distingué (DI) vulgaire - commun (VC) pour un homme (HO) pour une femme (FE) pour une petite nature (NA) On a demandé à chacun des cent gumeurs d associer une ou plusieurs parques qui selon eux conviennent le mieux. Le tableau de données est alors le suivant : Orl Ale Cor Dir Duc Fon Ica Zod Pav Coc Esc Hot VD 1 2 14 38 18 10 9 5 9 4 0 1 NR 20 9 1 11 10 9 1 1 20 9 7 12 SE 9 23 1 15 7 11 6 2 7 12 3 17 CR 1 3 15 15 6 5 12 18 4 25 2 2 RA 4 33 7 8 3 6 6 4 5 15 5 3 MI 3 9 1 7 7 5 12 9 6 9 6 13 DI 11 9 1 17 4 21 6 1 5 4 5 27 VC 4 4 32 2 6 0 9 7 3 10 12 7 HO 9 12 23 4 7 13 5 5 10 5 13 9 FE 9 3 9 8 4 2 6 8 1 6 23 33 NA 7 5 2 7 11 2 6 11 9 24 10 5 2.1 Analyse On effectuera : un calcul du tableau des distances du χ 2, 3
une analyse factorielle des correspondances, Afin de rendre les résultats de la fonction corresp() plus manipulables, on va commencer par créer une fonction R (commande function()) qui à partir du résultat de la commande corresp(), retournera dans une liste (commande list) les éléments de base permettant d interpréter une AFC, c est-à-dire : les pourcentages d inerties expliqués par chaque axe, les composantes principales c α et d α, la qualité de représentation de chaque ligne/colonne sur chaque axe (cosinus carré), la contribution de chaque ligne/colonne à chaque axe. On créera également une deuxième fonction qui permettra représenter simultanément les lignes et les colonnes sur un axe ou un plan factoriel arbitraire. On pourra utiliser les commandes plot, text (ajout de libellés des lignes et/ou colonnes), points et abline (tracé des axes x = 0 et y = 0). 2.2 Interprétation 1 Le tableau de données est-il un tableau de contingence? Quelles sont les marques les plus fréquemment citées? Que peut-on dire des attributs? 2 Les publics visés ont-ils des points communs? Quels sont les attributs correspondants? Pourquoi a-t-on proposé des attributs ne leur correspondant pas? 3 Regarder les distances du χ 2 entre les marques (on utilisera pour cela la commande dist()). Quelles sont les marques dont les distances sont les plus faibles? Les plus élevées? Comment interpréter ces résultats? 4 En examinant les valeurs propres et leur diagramme, déterminer les axes principaux qu il faut garder dans les analyses. 5 A l aide du plan 1x2, expliquer la différence entre les marques les plus distantes les unes des autres, et la ressemblance entre les marques les plus proches. Quelles sont les marques bien représentées sur le plan 1x2? Quelles sont les marques importantes dans l interprétation des axes 1 et 2? 6 Que peut-on dire des attributs? De quel côté de l axe 1 se trouvent les marques qui correspondent aux publics visés? 7 Quelle interprétation peut-on proposer à l attribut Pour une femme tel qu il apparaît le long de l axe 2? De l axe 4? 8 Que peut-on dire de l axe 5? 3 Médicaments Cette étude tend à déterminer quels médicaments utiliser pour traiter telle ou telle maladie. Les données ont été collectées après une enquête auprès de médecins à qui l on a demandé d indiquer pour chaque maladie les médicaments utilisés. 4
Ces données sont regroupées dans un tableau dont les colonnes représentent les médicaments et les lignes les maladies. Un élément a ij du tableau est donc le nombre de fois (pour l ensemble des médecins) où le médicament i a été prescrit pour la maladie j. 7 maladies ont été retenues : Typhoïde (TFD) Salmonellose digestive (SAL) Affection ORL (ORL) Pneumopathie (PNE) Méningite (MEN) Affection des voies urinaires (URI) Staphylococcie (STA) Ainsi que 6 médicaments : Péniciline (peni) Tifomycine (tifo) Tétracyline (tetr) Erythromycine (eryt) Tiophénicol (tiop) Gentalline (gent) Le tableau de données est le suivant (on pourra le retrouver dans le fichier nommé maladies.txt) : peni tifo tetr eryt tiop gent TFD 0 4 0 0 2 0 SAL 0 2 0 0 1 0 ORL 8 0 5 3 0 3 PNE 7 0 5 2 0 3 MEN 2 2 0 0 0 1 URI 4 0 2 0 0 6 STA 3 0 1 3 0 0 3.1 Analyse en ligne 3.1.1 Fréquence Plus Transformer le tableau d origine pour permettre une analyse des différentes maladies : i.e. diviser chaque élément d une ligne par l effectif de la ligne et obtenir ainsi le tableau (transposé) des profils lignes (la commande RowSums() est là pour ça). 3.1.2 Disease Distance Le tableau calculé précédemment nous permet de calculer une distance (pour le coup euclidienne) entre les maladies. La calculer. Que peut-on en conclure? Remarque : on pourra utiliser la commande dist() 5
3.1.3 Classification des maladies Représenter une classification ascendante hiérarchique des maladies. Quelle méthode de classification utiliser? Le faire. Remarque : hclust(). Une commande générale pour effectuer une CAH à partir d une distance est 3.1.4 Dessiner c est classer Que signifient les attributs du résultat de la commande hclust()? En particulier, quid des attributs merge et height? Tracer le dendrogramme. L interpréter. 3.1.5 Et c est parti Faire l A.F.C de notre tableau. Combien d axes principaux pouvons-nous avoir? Que représente les différents attributs du résultat? Combien d axes pouvons-nous retenir dans l étude? 3.1.6 Analyse des deux premiers axes Quel est le pourcentage d inertie expliqué par le premier et le deuxième axe? Les maladies/médicaments sont-ils bien représentés par le plan formé par ces deux axes? 3.1.7 Contributions Quelles sont les contributions des maladies/médicaments à chacun des 2 premiers axes? 3.1.8 Représentation graphique Tracer sur les deux premiers axes factoriels les différentes maladies ainsi que les médicaments les plus importants dans la création des axes. Que signifient les axes et qu en déduit-on pour les maladies? 3.1.9 Dendrogramme et A.F.C. Les résultats de l A.F.C. sont-ils cohérents avec ceux trouvés en faisant une classification hiérarchique des maladies? Que nous apporte l utilisation conjointe des deux méthodes? 6