Articles - Méthodes des Composantes Principales dans R: Guide Pratique

AFM - Analyse Factorielle Multiple avec R: L'Essentiel

L’Analyse Factorielle Multiple (AFM ou MFA pour Multiple Factor Analysis en anglais) (J. Pagès 2002) est une méthode d’analyse de données multivariées permettant de résumer et de visualiser un tableau de données complexe, dans lequel les individus sont décrits par plusieurs ensembles de variables (quantitatives et / ou qualitatives) structurés en groupes.

L’AFM prend en compte la contribution de tous les groupes actifs de variables pour définir la distance entre les individus. Le nombre de variables dans chaque groupe peut différer et la nature des variables (qualitatives ou quantitatives) peut varier d’un groupe à l’autre, mais les variables doivent être de même nature dans un groupe donné (Abdi and Williams 2010).

L’AFM peut être considérée comme une analyse factorielle générale dont le coeur est basé sur:

  • L’Analyse en Composantes Principales (ACP) lorsque les variables sont quantitatives,
  • L’Analyse des Correspondances Multiples (ACM) lorsque les variables sont qualitatives.

Cette analyse globale, dans laquelle plusieurs ensembles de variables sont considérés simultanément, nécessite d’équilibrer les influences de chaque ensemble de variables. Par conséquent, dans l’AFM, les variables sont pondérées lors de l’analyse. Les variables du même groupe sont normalisées en utilisant la même valeur de pondération, qui peut varier d’un groupe à l’autre. Techniquement, l’AFM attribue à chaque variable du groupe j, un poids égal à l’inverse de la première valeur propre de l’analyse (ACP ou ACM selon le type de variable) du groupe j.

L’analyse factorielle multiple peut être utilisée dans une variété de domaines (J. Pagès 2002), où les variables sont organisées en groupes:

  1. Analyse de données d’enquête, où un individu est une personne; une variable est une question. Les questions sont organisées par thèmes (groupes de questions).

  2. Analyse sensorielle, où un individu est un produit alimentaire. Un premier ensemble de variables comprend les variables sensorielles (douceur, amertume, etc.); une seconde comprend des variables chimiques (pH, taux de glucose, etc.).

  3. Écologie, où un individu est un lieu d’observation. Un premier ensemble de variables décrit les caractéristiques du sol; une seconde décrit la flore.

  4. Série temporelle, où plusieurs personnes sont observées à différentes dates. Dans cette situation, il existe généralement deux façons de définir des groupes de variables:
    • Généralement, les variables observées au même moment (date) sont rassemblées.
    • Lorsque les variables sont identiques d’une date à l’autre, chaque ensemble peut rassembler les différentes dates pour une variable.

Dans le chapitre actuel, nous montrons comment calculer et visualiser l’analyse factorielle multiple avec le logiciel R en utilisant FactoMineR (pour l’analyse) et factoextra (pour la visualisation des données). De plus, nous montrerons comment mettre en évidence les variables les plus importantes qui contribuent le plus à expliquer les variations dans le jeu de données.

Contents:


Calcul

Packages R

Installation:

install.packages(c("FactoMineR", "factoextra"))

Chargez les packages:

library("FactoMineR")
library("factoextra")

Format des données

Nous utiliserons le jeu de données wine dans le package FactoMineR. Ce jeu de données porte sur une évaluation sensorielle des vins par différents juges.

library("FactoMineR")
data(wine)
colnames(wine)
##  [1] "Label"                         "Soil"                         
##  [3] "Odor.Intensity.before.shaking" "Aroma.quality.before.shaking" 
##  [5] "Fruity.before.shaking"         "Flower.before.shaking"        
##  [7] "Spice.before.shaking"          "Visual.intensity"             
##  [9] "Nuance"                        "Surface.feeling"              
## [11] "Odor.Intensity"                "Quality.of.odour"             
## [13] "Fruity"                        "Flower"                       
## [15] "Spice"                         "Plante"                       
## [17] "Phenolic"                      "Aroma.intensity"              
## [19] "Aroma.persistency"             "Aroma.quality"                
## [21] "Attack.intensity"              "Acidity"                      
## [23] "Astringency"                   "Alcohol"                      
## [25] "Balance"                       "Smooth"                       
## [27] "Bitterness"                    "Intensity"                    
## [29] "Harmony"                       "Overall.quality"              
## [31] "Typical"

Une image des données est illustrée ci-dessous:

Format des données de l’Analyse Factorielle Multiple

(Source de l’image, FactoMineR, http://factominer.free.fr)

Les données contiennent 21 lignes (vins, individus) et 31 colonnes (variables):

  • Les deux premières colonnes sont des variables catégorielles: label (Saumur, Bourgueil ou Chinon) et soil (Reference, Env1, Env2 or Env4).
  • Les 29 colonnes suivantes sont numériques (variables sensorielles continues). Pour chaque vin, la valeur est le score moyen pour tous les juges.

L’objectif de cette étude est d’analyser les caractéristiques des vins.

Les variables sont organisées en groupes comme suit:

  1. Premier groupe - Un groupe de variables catégorielles spécifiant l'origine des vins. Il s’agit des variables Label et Soil correspondant aux 2 premières colonnes du tableau de données. Dans la terminologie FactoMineR, l’argument group = 2 est utilisé pour définir les 2 premières colonnes en tant que groupe.

  2. Deuxième groupe - Un groupe de variables continues, décrivant l’odeur des vins avant agitation. Il s’agit des variables: Odor.Intensity.before.shaking, Aroma.quality.before.shaking, Fruity.before.shaking, Flower.before.shaking et Spice.before.shaking. Ces variables correspondent aux 5 colonnes suivantes après le premier groupe. Terminologie FactoMineR: group = 5.

  3. Troisième groupe - Un groupe de variables continues quantifiant l’inspection visuelle des vins. Il s’agit des variables: Odor.Intensity, Quality.of.odour, Fruity, Flower, Spice, Plante, Phenolic, Aroma.intensity, Aroma.persistency et Aroma.quality. Terminologie FactoMineR: groupe = 3.

  4. Quatrième groupe - Un groupe de variables continues concernant l’odeur des vins après agitation. Il s’agit des variables: Odor.Intensity, Quality.of.odour, Fruity, Flower, Spice, Plante, Phenolic, Aroma.intensity, Aroma.persistency et Aroma.quality. Ces variables correspondent aux 10 colonnes suivantes après le troisième groupe. Terminologie FactoMineR: group = 10.

  5. Cinquième groupe - Un groupe de variables continues évaluant le goût des vins. Il s’agit des variables Attack.intensity, Acidity, Astringency, Alcohol, Balance, Smooth, Bitterness, Intensity et Harmony. Ces variables correspondent aux 9 colonnes suivantes après le quatrième groupe. Terminologie FactoMineR: groupe = 9.

  6. Sixième groupe - Un groupe de variables continues concernant le jugement global des vins. Il s’agit des variables Overall.quality et Typical. Ces variables correspondent aux 2 colonnes suivantes après le cinquième groupe. Terminologie FactoMineR: groupe = 2.

En résumé:

  • Nous avons 6 groupes de variables, qui peuvent être spécifiés à FactoMineR comme suit: group = c (2, 5, 3, 10, 9, 2).

  • Ces groupes peuvent être nommés comme suit: name.group = name.group = c(“origin”, “odor”, “visual”, “odor.after.shaking”, “taste”, “overall”).

  • Parmi les 6 groupes de variables, l’un est catégorielle et les cinq autres groupes contiennent des variables continues. Il est recommandé de normaliser/standardiser les variables continues pendant l’analyse. La standardisation rend les variables comparables, dans le cas où les variables sont mesurées dans différentes unités. Dans FactoMineR, l’argument type = “s” spécifie qu’un groupe de variables donné doit être normalisé. Si vous ne voulez pas de standardisation, utilisez type = “c”. Pour spécifier des variables catégorielles, type = “n” est utilisé. Dans notre exemple, nous utiliserons type = c (“n”, “s”, “s”, “s”, “s”, “s”).

code R

La fonction MFA() [FactoMineR] peut être utilisée. Un format simplifié est:

MFA (base, group, type = rep("s",length(group)), ind.sup = NULL, 
    name.group = NULL, num.group.sup = NULL, graph = TRUE)
  • base: data frame avec n lignes (individus) et p colonnes (variables)
  • group: un vecteur spécifiant le nombre de variables dans chaque groupe.
  • type: le type de variables dans chaque groupe. Par défaut, toutes les variables sont quantitatives et sont standardisées pendant l’analyse. Les valeurs autorisées comprennent:
    • “c” ou “s” pour les variables quantitatives. Si “s”, les variables sont standardisées.
    • “n” pour les variables catégorielles.
    • “f” pour les fréquences (à partir d’un tableau de contingence).
  • ind.sup: un vecteur indiquant les positions des individus supplémentaires.
  • name.group: un vecteur contenant le nom des groupes (par défaut, NULL et le groupe sont nommés group.1, group.2 et ainsi de suite).
  • num.group.sup: les index des groupes supplémentaires (par défaut, NULL).
  • graph: une valeur logique. Si TRUE un graphique est affiché.

Le code R ci-dessous effectue l’AFM sur les données de vins en utilisant les groupes: odor, visual, odor after shaking et taste. Ces groupes sont appelés groupes actifs. Les groupes restants de variables - origin (le premier groupe) et overall.judgement (le sixième groupe) - sont nommés groupes supplémentaires; num.group.sup = c(1, 6):

library(FactoMineR)
data(wine)
res.mfa <- MFA(wine, 
               group = c(2, 5, 3, 10, 9, 2), 
               type = c("n", "s", "s", "s", "s", "s"),
               name.group = c("origin","odor","visual",
                              "odor.after.shaking", "taste","overall"),
               num.group.sup = c(1, 6),
               graph = FALSE)

Le résultat de la fonction MFA() est une liste comprenant:

print(res.mfa)
## **Results of the Multiple Factor Analysis (MFA)**
## The analysis was performed on 21 individuals, described by 31 variables
## *Results are available in the following objects :
## 
##    name                
## 1  "$eig"              
## 2  "$separate.analyses"
## 3  "$group"            
## 4  "$partial.axes"     
## 5  "$inertia.ratio"    
## 6  "$ind"              
## 7  "$quanti.var"       
## 8  "$quanti.var.sup"   
## 9  "$quali.var.sup"    
## 10 "$summary.quanti"   
## 11 "$summary.quali"    
## 12 "$global.pca"       
##    description                                           
## 1  "eigenvalues"                                         
## 2  "separate analyses for each group of variables"       
## 3  "results for all the groups"                          
## 4  "results for the partial axes"                        
## 5  "inertia ratio"                                       
## 6  "results for the individuals"                         
## 7  "results for the quantitative variables"              
## 8  "results for the quantitative supplementary variables"
## 9  "results for the categorical supplementary variables" 
## 10 "summary for the quantitative variables"              
## 11 "summary for the categorical variables"               
## 12 "results for the global PCA"

Visualisation et interprétation

Nous utiliserons le package factoextra pour aider à l’interprétation et à la visualisation de l’analyse factorielle multiple.

Les fonctions ci-dessous seront utilisées:

  • get_eigenvalue(res.mfa): Extraction des valeurs propres / variances des composantes principales.
  • fviz_eig(res.mfa): Visualisation des valeurs propres.
  • get_mfa_ind (res.mfa): Extraction des résultats pour les individus.
  • get_mfa_var(res.mfa): Extraction des résultats pour les variables quantitatives et qualitatives, ainsi que pour les groupes de variables.
  • fviz_mfa_ind (res.mfa), fviz_mfa_var (res.mfa): Visualisation des résultats pour les individus et les variables, respectivement.

Dans les sections suivantes, nous allons illustrer chacune de ces fonctions.

Pour aider à l’interprétation de l’AFM, nous recommandons fortement de lire l’interprétation de l’analyse en composantes principales et de l’analyse des correspondances (AFC et ACM). Beaucoup de graphiques présentés ici ont déjà été décrits dans les chapitres précédents.

Valeurs propres / Variances

La proportion de variances expliquées par les différentes dimensions (axes) peut être extraite à l’aide de la fonction get_eigenvalue() [factoextra] comme suit:

library("factoextra")
eig.val <- get_eigenvalue(res.mfa)
head(eig.val)
##       eigenvalue variance.percent cumulative.variance.percent
## Dim.1      3.462            49.38                        49.4
## Dim.2      1.367            19.49                        68.9
## Dim.3      0.615             8.78                        77.7
## Dim.4      0.372             5.31                        83.0
## Dim.5      0.270             3.86                        86.8
## Dim.6      0.202             2.89                        89.7

La fonction fviz_eig() ou fviz_screeplot() [factoextra] peut être utilisée pour visualiser les proportions de variances expliquées par les différents axes:

fviz_screeplot(res.mfa)

Graphique des variables

Groupes de variables

La fonction get_mfa_var() [factoextra] est utilisée pour extraire les résultats pour les groupes de variables. Cette fonction renvoie une liste contenant les coordonnées, la cos2 et la contribution des groupes.

group <- get_mfa_var(res.mfa, "group")
group
## Multiple Factor Analysis results for variable groups 
##  ===================================================
##   Name           Description                                          
## 1 "$coord"       "Coordinates"                                        
## 2 "$cos2"        "Cos2, quality of representation"                    
## 3 "$contrib"     "Contributions"                                      
## 4 "$correlation" "Correlation between groups and principal dimensions"

Les différents composants peuvent être consultés comme suit:

# Coordonnées des groupes
head(group$coord)
# Cos2: qualité de représentation des groupes
head(group$cos2)
# Contributions des dimensions
head(group$contrib)

Pour visualiser les groupes de variables, tapez ceci:

fviz_mfa_var(res.mfa, "group")

  • couleur rouge = groupes de variables actives
  • couleur verte = groupes de variables supplémentaires

Le graphique ci-dessus illustre la corrélation entre les groupes et les dimensions. Les coordonnées des quatre groupes actifs sur la première dimension sont presque identiques. Cela signifie qu’ils contribuent de manière similaire à la première dimension. En ce qui concerne la deuxième dimension, les deux groupes - odor et odor.after.shake - ont les coordonnées les plus élevées indiquant une contribution la plus élevée à la deuxième dimension.

Pour visualiser les contributions, utilisez la fonction fviz_contrib():

# Contribution à la première dimension
fviz_contrib (res.mfa, "group", axes = 1)
# Contribution à la deuxième dimension
fviz_contrib (res.mfa, "group", axes = 2)

Variables quantitatives

La fonction get_mfa_var() [factoextra] est utilisée pour extraire les résultats pour les variables quantitatives. Cette fonction renvoie une liste contenant les coordonnées, les cos2 et la contribution des variables:

quanti.var <- get_mfa_var(res.mfa, "quanti.var")
quanti.var 
## Multiple Factor Analysis results for quantitative variables 
##  ===================================================
##   Name       Description                      
## 1 "$coord"   "Coordinates"                    
## 2 "$cos2"    "Cos2, quality of representation"
## 3 "$contrib" "Contributions"

Les différents composants peuvent être consultés comme suit:

# Coordonnées
head(quanti.var$coord)
# Cos2: qualité de représentation
head(quanti.var$cos2)
# Contributions aux dimensions
head(quanti.var$contrib)

Dans cette section, nous décrirons comment visualiser les variables quantitatives colorées par groupes. Ensuite, nous mettrons en évidence les variables en fonction soit de leur qualité de représentation, soit de leur contribution aux dimensions.

Corrélation entre les variables quantitatives et les dimensions. Le code R ci-dessous représente les variables quantitatives colorées par groupes. L’argument palette permet de modifier les couleurs des groupes (voir ?ggpubr::ggpar pour plus d’informations sur les palettes). Les variables quantitatives supplémentaires sont en pontillé et violettes. Nous utilisons repel = TRUE, pour éviter le chevauchement de texte.

fviz_mfa_var(res.mfa, "quanti.var", palette = "jco", 
             col.var.sup = "violet", repel = TRUE)

Pour rendre le graphique plus lisible, nous pouvons utiliser geom = c(“point”, “text”) au lieu de geom = c(“arrow”, “text”). Nous allons également modifier la position de la légende de “right” à “bottom”, en utilisant l’argument legend = "bottom":

fviz_mfa_var(res.mfa, "quanti.var", palette = "jco", 
             col.var.sup = "violet", repel = TRUE,
             geom = c("point", "text"), legend = "bottom")

Brièvement, le graphique des variables (cercle de corrélation) montre l’association entre les variables, la qualité de représentation des variables, ainsi que la corrélation entre les variables et les dimensions:

  • Les variables corrélées positivement sont regroupées, tandis que celles corrélées négativement sont positionnées sur les côtés opposés de l’origine du graphique (quadrants opposés).

  • La distance entre les variables et l’origine mesure la qualité des variables sur le graphique. Les points variables qui sont loin de l’origine sont bien représentés.

  • Pour une dimension donnée, les variables les plus corrélées à la dimension sont proches de la dimension.

Par exemple, la première dimension représente les sentiments positifs sur les vins: «intensité» et «harmonie». Les variables les plus corrélées à la deuxième dimension sont: i) Spice before shaking et Odor intensity before shaking pour le group odor; ii) Spice, Plant et Odor intensity pour le groupe odor after shaking et iii) Bitterness pour le group taste.

La contribution des variables quantitatives (en %) à la définition des dimensions peut être visualisée à l’aide de la fonction fviz_contrib() [factoextra]. Les variables sont colorées par groupes. Le code R ci-dessous montre les 20 principales variables contribuant aux dimensions:

# Contributions à la dimension 1
fviz_contrib (res.mfa, choice = "quanti.var", axes = 1, top = 20,
             palette = "jco")

# Contributions à la dimension 2
fviz_contrib (res.mfa, choice = "quanti.var", axes = 2, top = 20,
             palette = "jco")

La ligne en pointillé rouge sur le graphique ci-dessus indique la valeur moyenne attendue, si les contributions étaient uniformes. Lire plus dans le chapitre (Chapitre @ref(analyse-en-composantes-principales)).

Les variables avec des valeurs élevées, contribuent le plus à la définition des dimensions. Les variables qui contribuent le plus à Dim.1 et Dim.2 sont les plus importantes pour expliquer la variabilité dans le jeu de données.

Les variables quantitatives les plus contributives peuvent être mises en évidence sur le graphique en utilisant l’argument col.var = “contrib”. Cela produit un gradient de couleurs, qui peut être personnalisé à l’aide de l’argument gradient.cols.

fviz_mfa_var(res.mfa, "quanti.var", col.var = "contrib", 
             gradient.cols = c("#00AFBB", "#E7B800", "#FC4E07"), 
             col.var.sup = "violet", repel = TRUE,
             geom = c("point", "text"))

De même, vous pouvez mettre en évidence des variables quantitatives en utilisant leurs valeurs de cos2 représentant leurs qualités de représentation. Si une variable est bien représentée par deux dimensions, la somme des cos2 est proche de 1. Pour certains éléments, plus de 2 dimensions peuvent être nécessaires pour représenter parfaitement les données.

# Colorer en fonction du cos2
fviz_mfa_var(res.mfa, col.var = "cos2",
             gradient.cols = c("#00AFBB", "#E7B800", "#FC4E07"), 
             col.var.sup = "violet", repel = TRUE)

Créer un bar plot:

fviz_cos2(res.mfa, choice = "quanti.var", axes = 1)

Graphique des individus

Extraire le résultat des individus:

ind <- get_mfa_ind(res.mfa)
ind
## Multiple Factor Analysis results for individuals 
##  ===================================================
##   Name                      Description                      
## 1 "$coord"                  "Coordinates"                    
## 2 "$cos2"                   "Cos2, quality of representation"
## 3 "$contrib"                "Contributions"                  
## 4 "$coord.partiel"          "Partial coordinates"            
## 5 "$within.inertia"         "Within inertia"                 
## 6 "$within.partial.inertia" "Within partial inertia"

Visualisation des individus. Coloration en fonction du cosinus carré:

fviz_mfa_ind(res.mfa, col.ind = "cos2", 
             gradient.cols = c("#00AFBB", "#E7B800", "#FC4E07"),
             repel = TRUE)

Les catégories des variables qualitatives supplémentaires sont en couleur noirs. Si vous ne souhaitez pas les afficher sur le graphique, utilisez l’argument invisible = "quali.var".

Les individus ayant des profils similaires sont proches sur le graphique. Le premier axe oppose principalement le vin 1DAM et, les vins 1VAU et 2ING.

Comme décrit dans la section précédente, la première dimension représente l’harmonie et l’intensité des vins. Ainsi, le vin 1DAM (coordonnées positives) a été évalué comme le plus “intense” et “harmonieux” contrairement aux vins 1VAU et 2ING (coordonnées négatives) qui sont les moins “intenses” et “harmonieuses”.

Le deuxième axe est essentiellement associé aux deux vins T1 et T2 caractérisés par une forte valeur des variables Spice.before.shaking et Odor.intensity.before.shaking.

La plupart des catégories des variables qualitatives supplémentaires sont proches de l’origine de la carte. Ce résultat indique que les catégories concernées ne sont pas liées au premier axe (“intensité” et “harmonie” des vins) ou au deuxième axe (vin T1 et T2).

La catégorie Env4 présente des coordonnées élevées sur le deuxième axe lié à T1 et T2.

La catégorie “Reference” est connue pour être liée à un excellent sol viticole. Comme prévu, notre analyse démontre que la catégorie “Reference” a des coordonnées élevées sur le premier axe, corrélée positivement avec l’intensité et l’harmonie des vins.

Notez qu’il est possible de colorer les individus en utilisant l’une des variables qualitatives dans le tableau de données initial. Pour ce faire, l’argument habillage est utilisé dans la fonction fviz_mfa_ind(). Par exemple, si vous souhaitez colorer les vins selon la variable qualitative supplémentaire “Label”, tapez ceci:

fviz_mfa_ind(res.mfa, 
             habillage = "Label", # color by groups 
             palette = c("#00AFBB", "#E7B800", "#FC4E07"),
             addEllipses = TRUE, ellipse.type = "confidence", 
             repel = TRUE 
             ) 

Si vous souhaitez colorer les individus à l’aide de plusieurs variables catégorielles en même temps, utilisez la fonction fviz_ellipses() [factoextra] comme suit:

fviz_ellipses(res.mfa, c("Label", "Soil"), repel = TRUE)

Alternativement, vous pouvez spécifier les indices des variables catégorielles:

fviz_ellipses(res.mfa, 1:2, geom = "point")

Graphique des individus partiels

Les résultats pour les individus, obtenus à partir de l’analyse effectuée avec un seul groupe, sont appelés individus partiels. En d’autres termes, un individu considéré du point de vue d’un seul groupe s’appelle un individu partiel.

Dans le graphique fviz_mfa_ind() par défaut, pour un individu donné, le point correspond à l’individu moyen ou au centre de gravité des points partiels de l’individu. C’est-à-dire que l’individu est considéré par tous les groupes de variables.

Pour un individu donné, il y a autant de points partiels que de groupes de variables.

Le graphique des individus partiels représente chaque vin vu par chaque groupe et son barycentre. Pour visualiser les points partiels de tous les individus, tapez ceci:

fviz_mfa_ind (res.mfa, partial = "all")

Si vous souhaitez visualiser des points partiels pour les vins d’intérêt, dites c (“1DAM”, “1VAU”, “2ING”), utilisez ceci:

fviz_mfa_ind (res.mfa, partial = c ("1DAM", "1VAU", "2ING"))

La couleur rouge représente les vins observés uniquement par les variables odor; La couleur violette représente les vins observés uniquement par la variable visual, etc.

Le vin 1DAM a été décrit dans la section précédente comme particulièrement “intense” et “harmonieux”, en particulier par le groupe odor: il a une coordonnée élevée sur le premier axe du point de vue du groupe odor par rapport au point de vue des autres groupes.

Du point de vue du groupe odor, 2ING est plus «intense» et «harmonieux» que 1VAU, mais du point de vue du groupe taste, 1VAU est plus «intense» et «harmonieux» que 2ING.

Graphique des axes partiels

Le graphique des axes partiels montre la relation entre les axes principaux de l’AFM et ceux obtenus lors de l’analyse de chaque groupe en utilisant soit une ACP (pour les groupes de variables continues) soit une ACM (pour les variables qualitatives).

fviz_mfa_axes (res.mfa)

On peut constater que la première dimension de chaque groupe est fortement corrélée à celle du premier axe de l’AFM. La deuxième dimension de l’AFM est essentiellement corrélée à la deuxième dimension des groupes olfactifs.

Résumé

L’analyse factorielle multiple (AFM) permet d’analyser des individus caractérisés par de multiples groupes de variables. Dans cet article, nous avons décrit comment calculer et interpréter l’AFM en utilisant les packages R FactoMineR et factoextra.

Autres lectures

Pour les bases mathématiques de l’AFM, consultez les cours, articles et livres suivants:

  • Exploratory Multivariate Analysis by Example Using R (book) (F. Husson, Le, and Pagès 2017).
  • Principal component analysis (article) (Abdi and Williams 2010). https://goo.gl/1Vtwq1.
  • Simultaneous analysis of distinct Omics data sets with integration of biological knowledge: Multiple Factor Analysis approach (Tayrac et al. 2009).

References

Abdi, Hervé, and Lynne J. Williams. 2010. “Principal Component Analysis.” John Wiley and Sons, Inc. WIREs Comp Stat 2: 433–59. http://staff.ustc.edu.cn/~zwp/teach/MVA/abdi-awPCA2010.pdf.

Husson, Francois, Sebastien Le, and Jérôme Pagès. 2017. Exploratory Multivariate Analysis by Example Using R. 2nd ed. Boca Raton, Florida: Chapman; Hall/CRC. http://factominer.free.fr/bookV2/index.html.

Pagès, J. 2002. “Analyse Factorielle Multiple Appliquée Aux Variables Qualitatives et Aux Données Mixtes.” Revue Statistique Appliquee 4: 5–37.

Tayrac, Marie de, Sébastien Lê, Marc Aubry, Jean Mosser, and François Husson. 2009. “Simultaneous Analysis of Distinct Omics Data Sets with Integration of Biological Knowledge: Multiple Factor Analysis Approach.” BMC Genomics 10 (1): 32. https://doi.org/10.1186/1471-2164-10-32.