AFC dans R: Mille Possibilités
Cet article décrit plusieurs manières de calculer l’analyse factorielle des correspondances (AFC) avec R. Rappelons que l’AFC est utilisée pour étudier l’association entre deux variables catégorielles en analysant le tableau de contingence formée par ces deux variables.
Plusieurs fonctions de différents packages (FactoMineR, ade4) sont disponibles dans le logiciel R pour calculer l’AFC. Peu importe la fonction que vous décidez d’utiliser, vous pouvez facilement extraire et visualiser les résultats de l’AFC en utilisant les fonctions R fournies dans le package R factoextra.
Contents:
Livre (en anglais):

Practical Guide to Principal Component Methods in R
Format des données
- Données de démo:
housetasks
[package factoextra] - Contenu des données: Répartition des taches ménagères (housetasks) dans le couple.
- les lignes sont les différentes tâches
- les valeurs sont les fréquences des tâches effectuées i) par l’épouse seulement (“wife”), ii) alternativement (“alternatively”), iii) par le mari seulement (“husband”) ou iv) conjointement (“jointly”)
- Illustration des données:
Chargement des données
library(factoextra)
data(housetasks)
# head(housetasks)
Calcul
- En utilisant
CA()
[FactoMineR]
library(FactoMineR)
res.ca <- CA(housetasks, graph = FALSE)
- En utilisant
dudi.coa()
[ade4]
library("ade4")
res.ca <- dudi.coa(housetasks, scannf = FALSE, nf = 5)
- En utilisant
ca()
[ca]
library(ca)
res.ca <- ca(housetasks)
- En utilisant
corresp()
[MASS]
library(MASS)
res.ca <- corresp(housetasks, nf = 3)
- En utilisant
epCA()
[ExPosition]
library("ExPosition")
res.ca <- epCA(housetasks, graph = FALSE)
Visualisation
- Package
library(factoextra)
- Valeurs propres
fviz_eig(res.ca)
- Biplot des lignes et des colonnes:
fviz_ca_biplot(res.ca, repel = TRUE)
Resultats
library(factoextra)
# Valeurs propres
eig.val <- get_eigenvalue(res.ca)
eig.val
# Resultats pour les lignes
res.row <- get_ca_row(res.ca)
res.row$coord # Coordonnées
res.row$contrib # Contributions
res.row$cos2 # Qualité de représentation
# Resultats pour les colonnes
res.col <- get_ca_col(res.ca)
res.col$coord # Coordonnées
res.col$contrib # Contributions
res.col$cos2 # Qualité de représentation