0% ont trouvé ce document utile (0 vote)
49 vues19 pages

ACP avec R : Guide Pratique

Ce document décrit comment effectuer une analyse en composantes principales (ACP) avec les packages R factoMineR et factoextra. Il présente les commandes pour réaliser une ACP, interpréter les résultats et créer des graphiques à l'aide de ces packages.

Transféré par

exaucediasonama354
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 DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
49 vues19 pages

ACP avec R : Guide Pratique

Ce document décrit comment effectuer une analyse en composantes principales (ACP) avec les packages R factoMineR et factoextra. Il présente les commandes pour réaliser une ACP, interpréter les résultats et créer des graphiques à l'aide de ces packages.

Transféré par

exaucediasonama354
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 DOCX, PDF, TXT ou lisez en ligne sur Scribd

BIYEVANGA RIDI-MICHEL

Document en construction

ACP AVEC R

Package factoMineR et factoextra

Pour effectuer acp

La commande PCA(le nom de la base de donnée, [Link]=TRUE, ncp=5,graph=TRUE)

Où [Link] =TRUE implique que les données seront normalisées

Ncp = nombre de composante principale

Afin de pouvoir mieux manipuler notre ACP, nous devons lui attribuer un nom

ac

pour avoir les différentes options, taper la commande print pca

En mettant le nom de notre ACP avant chaque sous résultat nous pourrons avoir les différents details de
calcul.

Exemple : pca$eig ;pca$var ;pca$call ; pca$ind$coord; pca$call$coll.w

Dans la suite, nous utilisons le package factoextra pour mieux visionner nos résultats

get_eig(nom de notre acp) Permet d’obtenir les valeurs propres/les


variances
fviz_eig(nom de notre acp) Visualiser les valeurs propres
get_pca_ind(nom de notre acp) Permet d’obtenir les différents composantes
calculée, etc
get_pca_var(nom de notre acp) Permet d’avoir différents résultats sur les
BIYEVANGA RIDI-MICHEL
Document en construction

variables
fviz_pca_ind(nom de notre acp) Donne les graphiques individuels ; dispersion
fviz_pca_var(nom de notre acp) Donner le graphiques sur les variables
fviz_pca_biplot(nom de notre acp) Mixe entre individuel et variable
BIYEVANGA RIDI-MICHEL
Document en construction

 Cercle de corrélation

Pour l’obtenir fviz_pca_var(nom de la base, [Link]= «red»)

Dans [Link] vous pouvez mettre nimporte quelle couleur

La qualité de la représentation de chaque variable en fonction de des dimensions retenues se mesure


sur base de cos2. Qui n’est que la matrice de corrélation entre variable et composante elevée au carrée

La package factoextra ne nous permet pas de visualiser les différentes matrice de corrélation, coord et
contrib

Mais le package « corrplot » le permet


BIYEVANGA RIDI-MICHEL
Document en construction

Avec la commande corrplot(var$cos2, [Link]=FALSE)

Cette rerépsentation peut être aussi utlisée pour les autres résultats selon votre choix

Il est possible de colorer le cercle de corrélation en fonction de la qualité de l’ajustement grace au


package factoextra

Exemple [Link]= « cos2 », [Link]=c(« black », « white », « green ») veut dire que :

- Les variables avec un faible cos2 seront colorées en noire


- Les variables avec un cos2 moyen seront colorées en blanc
- Les variables avec un fort cos2 seront colorées en vert
BIYEVANGA RIDI-MICHEL
Document en construction

Exemple : fviz_pca_var(pca, [Link]= « cos2 », [Link]=c(« black », “green», “red”))

IL Y A MOYEN DE CHOISIR LES DIMENSIONS A REPRESENTER DANS LE CERCLE DE CORRELATION

fviz_pca_var(pca, [Link]= « cos2 », [Link]=c(« black », “green», “red”), axes=c(1,3))

fviz_pca_var(pca, [Link]="cos2", axes=c(1,3))


BIYEVANGA RIDI-MICHEL
Document en construction

Permet de ne voir que les variables qui sont bien projectées.


BIYEVANGA RIDI-MICHEL
Document en construction

 Description des dimensions

L’interprétation des dimensios est souvent complexe. Evidement le cercle de corrélation associé à la
qualité de projection nous sont d’une grande aide. A cette palette ajoutons la fonction dimdesc() de
FactoMineR qui permet de d’indentifer la variable la plus significative à associer à une dimension de
notre acp

Voici la commande : [Link]<-dimdesc(nom de notre acp, axes=c(1,2), proba=0.05)


BIYEVANGA RIDI-MICHEL
Document en construction

 Graphiques par individus

Par la fonction get_pca_ind(nom de votre acp) vous pouvez avoir différents résultats relatifs aux
individus.

Exemple : ind<- get_pca_ind(nom de votre acp)

$coord nous donne les différentes coordonnées des différentes variables

$cos2 nous donne la qualité de la réprésentation de chaque individu

$contrib nous donne la contribution de chaque individu à chaque dimension.

Il est possible de mettre sous graphique tout ces résultats avec la commande fviz_pca_ind
BIYEVANGA RIDI-MICHEL
Document en construction

Il est possible de colorer ces données de manière à ce que l’on voit ceux qui sont bien représenté sur le
plan.

fviz_pca_ind(pca, [Link]="cos2",[Link]=c("black","red","blue"),repel=TRUE)

fviz_pca_ind(pca, [Link]="cos2",[Link]=c("black","red","blue"),repel=TRUE,axe=c(2,3))
BIYEVANGA RIDI-MICHEL
Document en construction

fviz_pca_ind(pca,[Link]="cos2",[Link]=c("black","red","blue"),repel=TRUE,pointsize="cos2",axe=c
(2,3))

Il est possible de regrouper chaque individu en function du groupe auquel il appartient. A cet effet, il
faut qu’il existe une variable catégorielle (qualitative)

Nous allons utiliser la base de donnée iris pour cette représentation graphique
BIYEVANGA RIDI-MICHEL
Document en construction

La colonne species nous aidera à regrouper les individus

Pour faire l’acp on doit retirer la variable species qui est qualitative.

[Link]<-PCA(iris[,-5], graph=FALSE)

fviz_pca_ind([Link], [Link]="point",[Link]=iris$Species, palette=c("blue","red","green"),


[Link]="Groups")
BIYEVANGA RIDI-MICHEL
Document en construction

Il est possible d’ajouter une sorte de cerle par groupe par la function addEllipses=TRUE

fviz_pca_ind([Link], [Link]="point",[Link]=iris$Species, palette=c("blue","red","green"),


addEllipses=TRUE, [Link]="Groups")

Il s’agira de donner de trouver une bonne combinaison des couleurs

Pour voir toutes les palettes de couleurs disponibles sur R voici la commande :
RColorBrewer ::[Link]()
BIYEVANGA RIDI-MICHEL
Document en construction

fviz_pca_ind([Link], [Link]="point",[Link]=iris$Species, palette=c("Oranges"), addEllipses=TRUE,


[Link]="Groups", )
BIYEVANGA RIDI-MICHEL
Document en construction

IL EXISTE D’autre palette de couleur que l’on peut obtenir en téléchargant le package ggsci

Toutes ces palettes sont

1 Introduction

2 Discrete Color Palettes

2.1 NPG

2.2 AAAS

2.3 NEJM

2.4 Lancet

2.5 JAMA

2.6 JCO

2.7 UCSCGB

2.8 D3

2.9 LocusZoom

2.10 IGV

2.11 UChicago

2.12 Star Trek


BIYEVANGA RIDI-MICHEL
Document en construction

2.13 Tron Legacy

2.14 Futurama

2.15 Rick and Morty

2.16 The Simpsons

3 Continuous Color Palettes

3.1 GSEA

3.2 Material Design

fviz_pca_ind([Link], [Link]="point",[Link]=iris$Species, palette="jco", addEllipses=TRUE,


[Link]="Groups", )

 Quelques arguments supplémentaires

Pour visualizer différentes dimensions, ajouter l’argument axes=c(2,3) pour la dimension 2 et 3

Pour ajouter le nom des variable ou des individus sur le graphique, l’argument est [Link] = « text »
ou [Link]= « text »

Pour ajouter des point avec le nom des variable ou des individus sur le graphique, l’argument est
[Link] = c(« text », « point ») ou [Link]= c(« text », « point »)

Pour le regroupement des individus, les ellipses peuvent avoir une forme convexe, l’argument est
[Link]= « convexe ».

fviz_pca_ind([Link], [Link]=c("point"),[Link]=iris$Species, palette="jco", addEllipses=TRUE,


[Link]="convex",[Link]="Groups",)
BIYEVANGA RIDI-MICHEL
Document en construction

Pour les biplots,

fviz_pca_biplot([Link], [Link]=c("point"),[Link]=iris$Species, palette="jco", addEllipses=TRUE,


[Link]="convex",[Link]="Groups",)
BIYEVANGA RIDI-MICHEL
Document en construction

toutefois il reste possible de specifier sois mm les différentes couleurs des variables et des individus

[Link]= ; [Link]= ;

dans un langage simple, le biplot peut etre interprété comme suit : un individu qui du même coté
qu’une variable a une grande valeur pour cette variable ; un individu qui est dans le sens opposé d’une
variable a une faible valeur dans cette variable.
BIYEVANGA RIDI-MICHEL
Document en construction

 EXPORTER VOS RESULTATS

Tous vos resultats de votre acp peuvent être exporter

Voici la commande

[Link](le nom de l’acp, « le nom du fichier que vous créez pour exporter les donné[Link] », sep=
«;»

exemple : [Link](pca,"[Link]", sep=";")

après avoir recherché et ouvert le nouveau fichier, vous aurez ceci sous excel
BIYEVANGA RIDI-MICHEL
Document en construction

Common questions

Alimenté par l’IA

Le package factoextra permet de mieux visualiser les résultats de l'ACP en fournissant des graphiques tels que fviz_eig pour visualiser les valeurs propres, fviz_pca_ind pour afficher les graphiques individuels, et fviz_pca_var pour donner des graphiques des variables. Il facilite également l'interprétation par la couleur des graphiques en fonction de cos2, qui mesure la qualité de la représentation des variables .

Le package FactoMineR est utilisé pour effectuer une analyse en composantes principales (ACP), ce qui comprend la normalisation des données et le calcul des composantes principales par la commande PCA. Il permet également une meilleure manipulation des résultats grâce à des fonctions comme dimdesc() qui identifient les variables les plus significatives à associer à chaque dimension de l'ACP .

La fonction dimdesc() de FactoMineR identifie la variable la plus significative à associer à chaque dimension de l'ACP. Elle permet ainsi d'approfondir l'interprétation des dimensions en analysant la contribution des variables à ces dimensions, facilitant une meilleure compréhension de la structure des données .

La contribution des individus à chaque dimension dans une ACP peut être visualisée en extrayant les résultats de get_pca_ind, qui fournit les coordonnées, cos2, et la contribution de chaque individu. Ces informations peuvent être mises sous graphique avec la commande fviz_pca_ind, permettant d'identifier rapidement ceux qui contribuent le plus à chaque dimension via la colorisation par gradient en fonction du cos2 .

Il est crucial de retirer les variables qualitatives, telles que la variable species dans la base de données iris, car l'ACP est une technique qui nécessite des données numériques pour calculer les composantes principales. Les variables qualitatives, qui sont catégorielles, ne peuvent pas être directement utilisées dans les calculs nécessitant des distances numériques .

Un biplot dans l'ACP est une représentation qui combine les graphiques des individus et des variables, illustrant les relations entre eux. Dans un biplot, un individu proche d'une variable a généralement une forte valeur pour cette variable, alors qu'un individu à l'opposé d'une variable a une faible valeur. Cela aide à comprendre les associations directes entre les individus et les variables .

La fonction fviz_pca_ind permet de créer des graphiques montrant la dispersion des individus dans l'espace des composantes principales. Elle offre des options graphiques avancées, telles que la coloration selon le cos2 pour indiquer la qualité de représentation, l'utilisation de gradients de couleur pour l'analyse visuelle, et la possibilité d'ajouter des ellipses ou de regrouper les individus par catégories, en utilisant des palettes de couleur pour une lisibilité améliorée .

La fonction fviz_pca_var est utilisée pour créer un cercle de corrélation qui affiche la contribution des variables aux différentes dimensions de l'ACP. Elle permet de visualiser quelles variables sont bien projetées en se basant sur cos2, qui mesure la qualité de projection, et de distinguer ces dernières via la colorisation en fonction de leur niveau de cos2 .

Utiliser des ellipses dans une représentation graphique d'une ACP permet de montrer rapidement la structure des groupes d'individus dans l'espace des composantes principales. Cela facilite l'identification de regroupements naturels ou d'anomalies dans les données, et améliore l'interprétation visuelle en distinguant clairement les différents groupes, notamment lorsqu'il s'agit d'identifier des tendances ou des patterns spécifiques dans des sous-ensembles de données .

Les résultats de l'ACP peuvent être exportés en utilisant la commande write.infile, qui permet de sauvegarder les résultats dans un fichier CSV. Ce fichier peut ensuite être ouvert dans d'autres logiciels tels qu'Excel pour une analyse ultérieure ou pour partager les résultats avec d'autres utilisateurs .

Vous aimerez peut-être aussi