ACP mtcars
Data
Nettoyage de données
## missing %
## mpg 0 0
## cyl 0 0
## disp 0 0
## hp 0 0
## drat 0 0
## wt 0 0
## qsec 0 0
## vs 0 0
## am 0 0
## gear 0 0
## carb 0 0
ACP
Habillage des individus et graphique de variables
cyl
vs
am
Graphique des Variables
Interprétation
La première dimension a un pourcentage d’inertie de \(60.1 \%\) et le deuxieme \(24.1 \%\) soit une variabilité en tout de \(84.2 \%\) des données.
La premère dimension permet donc de représenter \(60.1\%\) des variables quantitatives
Nous obtenons les poucentatge d’inertie et table des valeurs propres associées aux dimensions ci-dessous:
Valeurs propres et pourcentages d’inertie
Tableau
Graphes
Correlation entre variables et dimensions
##
## Link between the variable and the continuous variables (R-square)
## =================================================================================
## correlation p.value
## cyl 0.9612188 2.471950e-18
## disp 0.9464866 2.804047e-16
## wt 0.8897212 9.780198e-12
## hp 0.8484710 8.622043e-10
## carb 0.5501711 1.105272e-03
## qsec -0.5153093 2.542578e-03
## gear -0.5319156 1.728737e-03
## am -0.6039632 2.520665e-04
## drat -0.7561693 5.575736e-07
## vs -0.7879428 8.658012e-08
## mpg -0.9319502 9.347042e-15
##
## Link between the variable and the continuous variables (R-square)
## =================================================================================
## correlation p.value
## gear 0.7527155 6.712704e-07
## am 0.6991030 8.541542e-06
## carb 0.6733043 2.411011e-05
## drat 0.4472090 1.028069e-02
## hp 0.4050268 2.147312e-02
## vs -0.3771273 3.335771e-02
## qsec -0.7543861 6.138696e-07
Interprétation des axes
Ici \(11\) dimensions expliquent \(100\%\) de la variance observée
Le pourcentage par dimension chute très vite. Seules les \(10\) premières dimensions sont représentées par défaut.
Interprétation des individus
Le graphique des individus représente le nuage de points des individus dans le premier plan, c’est à dire dans les deux premières dimensions sélectionnées par l’ACP, donc le plan qui maximise la dispersion des individus.
Dans une ACP classique, donc centrée-réduite, le nuage est généralement centré et réduit autour de l’origine. Un défaut de centrage-réduction peut être dû à des individus qui tirent à eux toute la variabilité du jeu de données. Il est donc nécessaire de les identifier et de réaliser une nouvelle ACP sans eux. Si la nouvelle ACP obtenue est globalement identique à celle d’origine, les individus extrêmes ne tirent pas à eux l’ACP et ils peuvent être conservés. Dans le Cas contraire, il faut choisir entre garder la première ou la deuxième en fonction du type d’analyse menée.
Dans l’exemple de notre jeu de données mtcars, les
marques de voitures Ford Pantera L et
Maserati Bora sont excentrées et fortement positives par
rapport à la deuxième dimension., mais tous font partie du carrée \(5X5\) .
Interprétation des variables
Si le graphique des individus est compréhensible avec des clés de lecture, le graphique des variables demande une plus grande capacité à visualiser. En effet, les graphique des variables représente la projection dans le premier plan des vecteurs représentant les variables. Cela signifie que les variables proches sur le graphique peuvent ne pas être dans le nuage de point variables. La distance entre variables n’étant pas informative sur la proximité, il faut s’attacher à ne regarder que les variables en fonction des dimensions représentées.
Comme c’est une projection, plus la variable est représentée proche du centre, moins elle est projetée, donc moins sa variance est expliquée. Par conséquent, la variable informe peu ou pas sur la dimension.
A l’inverse, plus la projection de la variable est proche du cercle, plus la variable est proche du plan, donc plus elle est représentée par ce plan.
Il faut aussi prendre en compte la position de la variable par rapport aux dimensions, Ainsi plus la variable est projetée proche de l’axe des abscisses, plus elle est corrélée (positivement ou négativement) à la première dimension, et plus la variable est projetée proche de l’axe des ordonnées, plus elle est corrélée (positivement ou négativement) à la deuxième dimension.
Par rapport à nos données, on observe que les variables
cyl, disp , wt sont fortement
liés positivement à la première dimension. mpgl’est
également mais négativement.
Au vu de cela, on peut dire que la première dimension correspond à
des marques de voitures qui ont des poids lourds,un nombre de cylindrés
élevés, un kilometrage élevé, mais une consomation de litre de carburant
aux \(100\) kilomètres très bas. Et
pour la deuxème dimension, gearet am corélées
très positivement, qsec très négativement. La deuxème
dimension correspond donc à des marques de voitures qui ont un nombre de
rapports de marche avant (ou nombre de vitesses avant très élevés, des
Transmission ( \(0\)= automatique,
\(1\) = manuelle) (ou Boîte de
vitesses) élevées, des temps au quart de mile (ou temps au 400 mètres
départ arrêté) élevés.
Habillage des individus par la variable cyl
On peut tout à fait affirmer que \(3\) clusters distincts se dégagent
nettement, car l’argument habillage = 2 a coloré
et regroupé les voitures selon leur nombre de cylindres
(cyl, la \(2^{ème}\)
colonne du jeu de données mtcars).
Voici comment interpréter de manière rigoureuse ce graphique d’individus de l’ACP :
1. Structure globale des clusters (L’Axe 1 : \(60.1\%\) )
L’axe horizontal (Dim1, qui capte généralement la plus grande part
d’inertie, soit \(60.1\%\) sur
mtcars) sépare parfaitement les voitures selon leur
puissance et leur gabarit :
À gauche (Cluster Rouge - \(4\) cylindres) : Regroupe les voitures légères et économiques (Honda Civic, Toyota Corolla, Fiat X1-9).
Au milieu (Cluster Vert - \(6\) cylindres) : Zone de transition avec des voitures intermédiaires (Mazda RX4, Hornet 4 Drive, Merc 280).
À droite (Cluster Bleu - \(8\) cylindres) : Regroupe les grosses cylindrées, les sportives et les américaines lourdes (Maserati Bora, Ford Pantera L, Cadillac Fleetwood)
2. Comportement sur l’Axe 2 (Dim2 : \(24.1\%\) )
L’axe vertical sépare les voitures au sein d’un même groupe selon des critères plus spécifiques (souvent le style de conduite ou l’architecture moteur) :
En haut : Les voitures à tendance sportive ou à haut rendement (Maserati Bora, Ford Pantera, Ferrari Dino, Porsche 914-2).
En bas : Les berlines plus traditionnelles, lourdes ou routières (Cadillac Fleetwood, Lincoln Continental, Valiant).
3. Analyse des ellipses de confiance
Les ellipses des groupes \(4\) cylindres (rouge) et \(8\) cylindres (bleu) ne se chevauchent absolument pas. Cela prouve que ces deux profils de véhicules sont radicalement opposés et n’ont aucune caractéristique commune.
L’ellipse des \(6\) cylindres (vert) fait office de pont au centre, ce qui montre un profil intermédiaire. Elle est très étirée verticalement, indiquant une forte variabilité (la Ferrari Dino en haut n’a pas du tout le même comportement que la Valiant tout en bas).
4. Les individus atypiques (Outliers)
- Maserati Bora & Ford Pantera L : Elles s’isolent tout en haut à droite. Bien qu’elles aient \(8\) cylindres, leur profil très sportif (vitesse, puissance maximale) les éloigne du reste des voitures à \(8\)cylindres qui sont plutôt de grosses berlines lourdes au centre du cluster bleu.
Sélection du nombre de dimensions à interpréter
Significativité des dimensions obtenues par l’ACP
Maintenant que l’ACP a été réalisée, il reste à savoir si, elle est représentative des donnéees. En effet, en focntion du nombre de variables et du nombre d’individus, par le simple fait du hasard , n’importe quelle dimension peut expliquer une part de variance observée.
Une des méthodes pour déterminer si l’ACP est représentative des données revient à comparer le pourcentage cumulé de variance expliquée à celui que l’on aurait obtenu pour des ACP réalisées sur \(10000\) jeux de données aléatoires ayant les mêmes dimensions que celui analysé.
Si le pourcentage cumulé de variance expliqué par l’ACP réalisée est largement au-dessus de celui obtenu en moyenne par les \(10000\) ACP générés, alors il a peu de chance dêtre dû au hasard.
Pour générer ces données, la fonction
eigenRef()` du package{ FactoInvestigate }` va être utilisé.
## $datasets
## [1] 10000
##
## $quantile
## [1] 0.95
##
## $inertia
## dim.1 dim.2 dim.3 dim.4 dim.5 dim.6 dim.7 dim.8
## 0.2193934 0.3838882 0.5207061 0.6339255 0.7295406 0.8077898 0.8712848 0.9210551
## dim.9 dim.10 dim.11
## 0.9590946 0.9860826 1.0000000
La réalisation d’ACP sur \(10000\) jeu de données factices ayant \(32\) lignes et \(11\) variables montre que la première dimension doit être supérieure à \(21.9 \%\) d’inertie et les deux premiers à \(38.36 \%\) .
Donc avec nos \(84.2 \%\) pour le premier plan, l’ACP réalisée est significative
En cas de doute, affichez le texte suivant grâce à la fonction
InertiaDistrib()`
## L'inertie des axes factoriels indique d'une part si les variables sont structurées et suggère d'autre part le nombre judicieux de composantes principales à étudier.
##
## Les 2 premiers axes de l' analyse expriment **84.17%** de l'inertie totale du jeu de données ; cela signifie que 84.17% de la variabilité totale du nuage des individus (ou des variables) est représentée dans ce plan.
## C'est un pourcentage élevé, et le premier plan représente donc bien la variabilité contenue dans une très large part du jeu de données actif.
## Cette valeur est nettement supérieure à la valeur référence de **38.39%**, la variabilité expliquée par ce plan est donc hautement significative
## (cette intertie de référence est le quantile 0.95-quantile de la distribution des pourcentages d'inertie obtenue en simulant 10000 jeux de données aléatoires de dimensions comparables sur la base d'une distribution normale).
##
## Du fait de ces observations, il n'est probablement pas nécessaire pour l'analyse d'interpréter les dimensions suivantes.
##
## ```
## par(mar = c(2.6, 4.1, 1.1, 2.1))
## ggplot2::ggplot(cbind.data.frame(x=1:nrow(res$eig),y=res$eig[,2])) + ggplot2::aes(x=x, y=y)+ ggplot2::geom_col(fill="blue") + ggplot2::xlab("Dimension") + ggplot2::ylab("Pourcentage d'inertie") + ggplot2::ggtitle("Décomposition de l'inertie totale") + ggplot2::theme_light() + ggplot2::theme(plot.title = ggplot2::element_text(hjust =0.5)) + ggplot2::scale_x_continuous(breaks=1:nrow(res$eig))
## ```
##
## **Figure - Décomposition de l'inertie totale**
## *Le premier facteur est prépondérant : il explique a lui seul 60.08% de la variabilité totale des données.*
## *Il convient de noter que dans un tel cas, la variabilité liée aux autres composantes peut être dénuée de sens, en dépit d'un pourcentage élevé.*
##
## Une estimation du nombre pertinent d'axes à interpréter suggère de restreindre l'analyse à la description des 2 premiers axes.
## Ces composantes révèlent un taux d'inertie supérieur à celle du quantile 0.95-quantile de distributions aléatoires (84.17% contre 38.39%).
## Cette observation suggère que seuls ces axes sont porteurs d'une véritable information.
## En conséquence, la description de l'analyse sera restreinte à ces seuls axes.
## [1] 2
Le texte valide l’ACP et conseille de ne pas prendre plus de \(2\) dimensions
Il n’existe pas de méthodes objectives pour choisir le nombre de dimensions à interpréter. Il est donc préférable de choisir en fonction de plusieurs paramètres et du contexte de l’étude
Nombre de dimensions à interpréter
Par defaut la fonction PCA()` conserve \(5\) premières dimensions dans les
résultats.
L’un des indicateurs est la variance cumulée. Entre \(70\) et \(80\%\) , c’est suffisant.
la fonction inertiaDistrib()` nous a proposé \(2\) dimensions.
En refaisant un nouvel ACP avec cela, nous obtenons