fviz_contrib - Visualisation des contributions - Logiciel R et analyse de données


Description

Cette fonction peut être utilisée pour visualiser les contributions des lignes/colonnes à partir des résultats des fonctions, d’analyse en composante principale (ACP), d’analyse factorielle des correspondances simples (AFC) et d’analyse des correspondences multiples (ACM), issues de différents packages R.

La fonction fviz_contrib() [dans le package factoextra] est utilisée.

Installer et charger factoextra

Le package devtools est requis pour l’installation de factoextra.

if(!require(devtools)) install.packages("devtools")
devtools::install_github("kassambara/factoextra")

Charger factoextra:

library("factoextra")

Utilisation

fviz_contrib(X, choice = c("row", "col", "var", "ind"), 
             axes = 1, fill = "steelblue", color = "steelblue",
             sort.val = c("desc", "asc", "none"), top = Inf)

Arguments

Argument Description
X Un objet de classe PCA, CA et MCA [FactoMineR]; prcomp et princomp [stats]; dudi, pca, coa et acm [ade4]; ca et mjca [ca package].
choice Les valeurs possibles sont “row” et “col” pour l’AFC; “var” et “ind” pour l’APC ou l’ACM.
axes un vecteur numérique précisant les axes d’intérêt. La valeur par défaut est axes = 1 pour l’axe 1.
fill Couleur de remplissage du bar plot.
color Couleur de bordure pour le bar plot.
sort.val une chaîne de caractère spécifiant si la valeur doit être triée. Les valeurs autorisées sont “none” (aucun tri), “asc” (par ordre croissant) ou “desc” (pour la descente).
top une valeur numérique indiquant le nombre de top éléments à afficher.
non utilisé.

Détails

La fonction fviz_contrib() crée un bar plot des contributions des lignes/colonnes. Une ligne de référence, en pointillés, est également représentée sur le bar plot. Cette ligne de référence correspond à la valeur attendue si la contribution des éléments était uniforme.

Pour une dimension donnée, toute ligne/colonne avec une contribution au dessus de la ligne de référence peut être considérée comme importante dans la contribution à la dimension en question.

Valeur

Un graphique de type ggplot2

Exemples

Analyse en composante principale

Une analyse en composantes principales (ACP) est effectuée en utilisant la fonction intégrée de R prcomp() et le jeu de données decathlon2 [dans factoextra]:

data(decathlon2)
decathlon2.active <- decathlon2[1:23, 1:10]
res.pca <- prcomp(decathlon2.active,  scale = TRUE)
# Contribution des variables à l'axe 1
fviz_contrib(res.pca, choice="var", axes = 1 )

fviz_contrib - Visualisation des contributions des variables lignes/columns - Logiciel R et analyse de données

# Trie
fviz_contrib(res.pca, choice="var", axes = 1,
           sort.val ="asc")

fviz_contrib - Visualisation des contributions des variables lignes/columns - Logiciel R et analyse de données

# Sélectionner le top 7 des variables contribuant le plus 
fviz_contrib(res.pca, choice="var", axes = 1, top = 7 )

fviz_contrib - Visualisation des contributions des variables lignes/columns - Logiciel R et analyse de données

# Changer le thème et la couleur
fviz_contrib(res.pca, choice="var", axes = 1,
         fill = "lightgray", color = "black") +
         theme_minimal() +
         theme(axis.text.x = element_text(angle=45))

fviz_contrib - Visualisation des contributions des variables lignes/columns - Logiciel R et analyse de données

# Contribution des variables à l'axe 2
fviz_contrib(res.pca, choice="var", axes = 2)

fviz_contrib - Visualisation des contributions des variables lignes/columns - Logiciel R et analyse de données

# Contribution des variables aux axes 1 + 2
fviz_contrib(res.pca, choice="var", axes = 1:2)

fviz_contrib - Visualisation des contributions des variables lignes/columns - Logiciel R et analyse de données

# Contribution des individus à l'axe 1
fviz_contrib(res.pca, choice="ind", axes = 1)

fviz_contrib - Visualisation des contributions des variables lignes/columns - Logiciel R et analyse de données

Analyse des correspondences

La fonction CA() dans le package FactoMineR est utilisée:

# Installer et charger FactoMineR pour effectuer une CA
# install.packages("FactoMineR")
library("FactoMineR")
data("housetasks")
res.ca <- CA(housetasks, graph = FALSE)
# Contribution des lignes à l'axe 1
fviz_contrib(res.ca, choice ="row", axes = 1)

fviz_contrib - Visualisation des contributions des variables lignes/columns - Logiciel R et analyse de données

# Contribution des lignes à l'axe 1 + 2
fviz_contrib(res.ca, choice ="row", axes = 1:2)

fviz_contrib - Visualisation des contributions des variables lignes/columns - Logiciel R et analyse de données

# Contribution des colonnes à l'axe 1
fviz_contrib(res.ca, choice ="col", axes = 1)

fviz_contrib - Visualisation des contributions des variables lignes/columns - Logiciel R et analyse de données

Analyse des correspondances multiples

La fonction MCA() dans le package FactoMineR est utilisée:

library(FactoMineR)
data(poison)
res.mca <- MCA(poison, quanti.sup = 1:2,
              quali.sup = 3:4, graph=FALSE)
# Contribution des individus à l'axe 1
fviz_contrib(res.mca, choice ="ind", axes = 1)

fviz_contrib - Visualisation des contributions des variables lignes/columns - Logiciel R et analyse de données

# Sélectionner les top 20
fviz_contrib(res.mca, choice ="ind", axes = 1, top = 20)

fviz_contrib - Visualisation des contributions des variables lignes/columns - Logiciel R et analyse de données

# Contribution des variables à l'axe 1
fviz_contrib(res.mca, choice ="var", axes = 1)

fviz_contrib - Visualisation des contributions des variables lignes/columns - Logiciel R et analyse de données

Infos

Cette analyse a été réalisée en utilisant le logiciel R (ver. 3.2.1) et factoextra (ver. 1.0.3)


Enjoyed this article? I’d be very grateful if you’d help it spread by emailing it to a friend, or sharing it on Twitter, Facebook or Linked In.

Show me some love with the like buttons below... Thank you and please don't forget to share and comment below!!
Avez vous aimé cet article? Je vous serais très reconnaissant si vous aidiez à sa diffusion en l'envoyant par courriel à un ami ou en le partageant sur Twitter, Facebook ou Linked In.

Montrez-moi un peu d'amour avec les like ci-dessous ... Merci et n'oubliez pas, s'il vous plaît, de partager et de commenter ci-dessous!






Cette page a été vue 2279 fois