Analyse factorielle

Cette page regroupe du matériel pédagogique pour des enseignements des techniques factorielles, essentiellement l’analyse en composantes principales (ACP), l’analyse factorielle des correspondances (AFC), l’analyse des correspondances multiples (ACM), l’analyse factorielle des données mixtes (AFDM) et le positionnement multidimensionnel (multidimensional scaling – MDS).

L’ouvrage « Pratique des Méthodes Factorielles avec Python » permet de cadrer le propos et sert de trame principale. Chaque approche est reprise dans des slides qui font office de supports de cours, auxquels sont associés les fichiers de données et les programmes utilisés.

De très nombreux tutoriels sont disponibles pour préciser la pratique des méthodes d’analyse factorielle. Les outils préférentiellement utilisés sont Python, R et Tanagra. Ici aussi, les fichiers de données et les codes sources des programmes (lorsque cela est possible) accompagnent les documents de présentation.

Il est important de bien maîtriser ces techniques d’analyse factorielle avant d’accéder aux Master 2 de Data Science. Je les enseigne sous forme de remise à niveau en début d’année en Master SISE , en mettant l’accent sur les aspects moins abordées dans les très nombreux supports de cours et tutoriels que l’on trouve en ligne.

Ressources

Supports

Ouvrage de référence

Ouvrage de référence pour le cours - Ricco Rakotomalala, "Pratique des Méthodes Factorielles avec Python", Juillet 2020.
Cet ouvrage, totalement gratuit, décrit les fondements et la pratique des principales techniques factorielles. Il détaille les calculs sous-jacents et leur mise en oeuvre sur des jeux de données sous Python avec les librairies scientiques qui font référence. Le parallèle est fait avec les sorties de SAS (proc princomp, proc factor, proc corresp), de R (packages factorminer, ade4, ca, pcamixdata, psych), de Tanagra (composants du module "Factorial Analysis").
Table des matières : (1) Analyse en Composantes Principales (ACP) ; (2) Plus loin avec l'Analyse en Composantes Principales (rotation varimax, analyse sur corrélations partielles, techniques avancées pour l'identification du nombre d'axes, analyse parallèle, clustering de variables, varclus, analyse en facteurs principaux) ; (3) Positionnement Multidimensionnel (MDS) ; (4) Analyse Factorielle des Correspondantes (AFC) ; (5) Analyse des Correspondances Multiples (ACM) ; (6) Analyse Factorielle des Données Mixtes (AFDM) ; (7) Références ; (8) Annexes.

Packages Python pour l'analyse factorielle

Scientisttools. La librairie "scientisttools" intègre les techniques basiques (ACP, AFC, ACM), mais aussi celles plus sophistiquées (AFDM, ACP sur corrélations partielles, MDS, etc.). Elle propose deux modes de fonctionnement, une première classique sous Python comme une étape de réduction de dimension ; une seconde, plus originale, où elle émule les fonctionnalités et le fonctionnement des packages telles que FactoMineR, bien connue des data scientists, qui fait référence sous R.

Fanalysis. La librairie "fanalysis" intègre les techniques factorielles classiques : ACP (analyse des correspondances multiples), AFC (analyse factorielle des correspondances), ACM (analyse des correspondances mutliples). Son mode opératoire est calé sur celui de scikit-learn, package bien connu sous Python. Elle peut être ainsi intégrée dans un pipeline scikit-learn lors de la définition d'une chaîne de traitements automatisé (ex. DISQUAL, analyse discriminante sur données qualitatives).

Supports de cours - Slides

ACP - Analyse en composantes principales. Position du problème. Construction des composantes principales, axes factoriels. Lecture des valeurs propres et des vecteurs propres. Différentes stratégies pour l’organisation des calculs. Détection du nombre de facteurs. Interprétation des résultats, caractérisation des composantes. Corrélation, cosinus carré, contribution, valeur test. Variables actives et illustratives. Rotation des axes factoriels (varimax). Test de sphéricité de Bartlett, indice KMO. Extensions / variantes : ACP sur corrélations partielles, analyse en facteurs principaux, analyse de Harris.

AFC - Analyse factorielle des correspondances. Construction des profils lignes et colonnes. Notion de distance entre profils, distance à l'origine. Inertie. Analyse des associations lignes - colonnes. Test d'indépendance du khi-2 et décomposition orthogonale du khi-2. Indice d'attraction - répulsion. Pratique de l'AFC : choix du nombre de facteurs, analyse des cos2 et des contributions. Représentations graphiques. Traitement des modalités supplémentaires.

ACM (AFCM) - Analyse (factorielle) des correspondances multiples. (1) analyse des proximités entre individus, distance du khi-2, inertie d'un individu, inertie totale ; (2) analyse des associations entre modalités, distance entre modalités, distance à l'origine ; (3) analyse des variables, rapport de corrélation. Pratique de l'ACM : sélection du nombre de facteurs et correction de Benzecri ; analyse des modalités et des variables (coordonnées factorielles, cos2, contributions) ; analyse des individus ; formules de reconstitution des distances ; problématique de la représentation simultanée des individus et des modalités ; traitement des variables et individus illustratifs.

AFDM - Analyse factorielle des données mixtes. Généralisation de l’ACP normée au traitement des variables actives quantitatives et qualitatives. Caractérisation des axes factoriels dans ce nouveau contexte. Corrélation linéaire et rapport de corrélation. Contribution et cosinus carré des variables et des individus. Utilisation et positionnement des variables illustratives dans les plans factoriels. Sorties des logiciels : TANAGRA, R package ade4, R package FactoMineR, R package PCAMixData.

MDS - Positionnement multidimensionnel (multidimensional scaling). MDS classique, analyse factorielle sur tableau de distance. MDS métrique et non-métrique. Optimisation de la fonction "stress". Rapprochement avec l'ACP usuelle. Evaluation de la qualité de la représentation. Traitement des individus supplémentaires. Traitement des matrices de corrélations.

Autres slides concernant la data science. Couvre les principales méthodes du traitement exploratoire des données et de machine learning (analyse prédictive, classification automatique, analyse factorielle, etc.), de l'économétrie (régression linéaire simple et multiple) et des statistiques (comparaison des populations, tests paramétriques et tests non paramétriques).

Playlist YouTube pour l'Analyse factorielle

Playlist vidéo pour la pratique de l'analyse factorielle. Pratique des principales techniques factorielles avec différents outils (Python, Tanagra, R, sera complétée au fur et à mesure). ACP (analyse des composantes principales), AFC (analyse factorielle des correspondances), ACM (analyse des correspondances multiples), AFDM (analyse factorielle des données mixtes).

Tutoriels ACP - Analyse en Composantes Principales

ACP avec PYTHON - Package "fanalysis". Présentation des fonctionnalités du package fanalysis pour la réalisation d'une ACP (analyse en composantes principales) sous Python. Traitement des individus et variables actives, coordonnées factorielles, obtention des aides à l'interprétation sans calculs additionnels (contributions et cosinus carrés), outils graphiques directement accessibles (cercle des corrélations, carte des individus). Traitement des variables illustratives quantitatives et qualitatives. Projection simplifiée (une seule instruction) des individus supplémentaires (Python, package fanalysis).

ACP avec PYTHON - Package "scikit-learn". Pratique de l'analyse en composantes principales avec Python. Utilisation du package de machine learning "scikit-learn". Préparation des données. Valeurs propres et scree plot. Déterminantion du nombre de facteurs. Représentation des individus. Représentation des variables. Aides à l'interprétation. Traitement des individus et variables supplémentaires.

ACP sous Python - Package "statsmodels" - Rotation Varimax. Pratique de l'ACP - analyse en composantes principales - sous Python avec le package "statsmodels". Exploration des fonctionnalités basiques, mais surtout focus sur la rotation orthogonale des facteurs (varimax, quartimax). Elle améliore l'interprétation en rendant plus tranchées (contributions, cosinus carré) les associations entre les variables et les composantes. Lecture des résultats, représentations graphiques avec des heatmap plutôt que des cercles des corrélations. Remarque sur la matrice de transition qui permet de positionner les variables "et" les individus dans le nouveau repère factoriel.

ACP + Rotation Quartimax vs. Clustering de variables - Python - Package "statsmodels". ACP (analyse en composantes principales) avec la rotation de facteurs "quartimax" (rotation orthogonale). Son utilisation dans le cadre d'un regroupement des variables (clustering de variables) pour comprendre les structures sous-jacentes aux données. Présentation des résultats sous la forme d'un graphique "heatmap", permettant de disposer d'une lecture plus limpide à la fois des appartenances aux groupes, mais aussi des relations entre les variables à l'intérieur des groupes. Les résultats sont mis en relation avec ceux obtenus à l'aide d'une approche plus classique fondée sur une CAH (classification ascendante hiérarchique) et une distance déduite des carrés des corrélations entre les variables. Traitements sous Python avec les packages statsmodels et seaborn.

ACP avec scientisttools sous Python - Détection du nombre de composantes. Techniques pour le choix du nombre de composantes en ACP (analyse en composantes principales). (1) Les seuils directement calculés : règle du coude, règle de Kaiser-Gutman, règle de Karlis-Saporta-Spinaki, test des bâtons brisés (Legendre). (2) Les procédures basées sur des méthodes de Monte-Carlo (simulation). Deux axes : analyse parallèle où l'on définit des données H0 par randomisation (les relations entre les individus et les variables sont perturbées aléatoirement), on en déduit des valeurs seuils à comparer avec les valeurs propres observées ; l'analyse bootstrap où, cette fois-ci, toujours par simulation, on cherche à obtenir les distributions des valeurs propres pour pouvoir en déduire leurs intervalles de confiance. Traitements sous Python avec la librairie "scientisttools".

ACP - Effet taille, indice de redondance KMO/MSA, corrélations partielles (Python). ACP (analyse en composantes principales) sous PYTHON. Le problème de l'effet taille en ACP. La mesure du degré de redondance des variables, de la liaison des variables aux autres (critère KMO : Kaiser-Meyer-Olkin ; présenté aussi sous le nom MSA : measure of sampling adequacy). Le travail sur les corrélations partielles pour explorer différemment les patterns véhiculés par les données. L'adaptation de la lecture des résultats qui en découle. Rotation "varimax" pour améliorer la lisibilité des composantes. Enfin, la transposition du travail sur les matrices des corrélations brutes et partielles au calcul des coordonnées factorielles des individus. Traitements sous Python avec les packages fanalysis, statsmodels et pingouin.

ACP avec TANAGRA - Calculs, résultats, post-traitements sous Excel. Analyse en composantes principales (ACP), traitements sous Tanagra : importation des données via la macro-complémentaires (tanagra.xla), définition des rôles des variables, utilisation du composant "Principal Component Analysis", lecture des principaux tableaux de résultats (valeurs propres, détermination du nombre de composantes, tableau des corrélations avec les contributions et les cosinus carrés). Graphiques avec la représentation factorielle des individus et le cercle des corrélations. Possibilité de récupération des tableaux et des coordonnées factorielles dans Excel. Réalisation de traitements supplémentaires.

ACP avec TANAGRA - Paramètres optionnels. Analyse en composantes principales sous Tanagra, présentation des paramètres optionnels du composant "Principal Component Analysis" et lecture des résultats associés : test de sphéricité de Bartlett et indice MSA / KMO ( Kaiser, Mayer, Olkin) ; comparaison corrélations brutes et partielles ; comparaison corrélation brutes et corrélations reconstituées dans l'espace de représentation factoriel ; calcul des contributions et des cosinus carrés des individus, élaboration d'une représentation factorielle sous le tableur Excel en ne faisant apparaître que les individus à forte contribution.

ACP avec TANAGRA - Variables illustratives, individus supplémentaires. Analyse en composantes principales (ACP) sous Tanagra : traitement des variables illustratives (quantitatives et qualitatives), corrélations avec les composantes , positionnement des modalités dans le premier plan factoriel à l'aide des moyennes conditionnelles (graphique sous Excel) ; projection des individus supplémentaires, automatiquement sous Tanagra, en post-traitement sous Excel via les moyennes et écarts-types calculés et les coefficients fournis par le composant "Principal Component Analysis".

ACP avec TANAGRA - Rotation des facteurs (varimax), corrélations partielles. Analyse en composantes principales (ACP) sous Tanagra. Solutions pour le problème de l'effet taille. La rotation des facteurs (varimax - contributions, quartimax - cos2) avec le composant "Factor Rotation", intérêt, teneur des résultats, interprétation des résultats avec une meilleure association variables-composantes, préservation de la qualité de la représentation factorielle à nombre de composantes fixé. Le travail avec les corrélations partielles, introduction d'une (ou plusieurs) variables de contrôle dans l'ACP, intérêt de l'approche pour l'appréhension de l'effet taille, mais aussi plus globalement pour une lecture différente des informations portées par les données, construction des variables déflatées avec le composant "Residual Scores".

ACP avec TANAGRA - VARCLUS, clustering de variables. Structuration des données avec la classification automatique des variables : l'algorithme VARCLUS, une approche descendante basé sur des calculs d'ACP (analyse en composantes principales) et de rotation d'axes. Notion de similarité entre variables, de distance, de variable synthétique représentative d'un groupe (cluster) de variables. Interprétation des résultats, appartenance aux groupes, détection du nombre de groupes. Les autres approches de classification de variables : algorithme ascendant hiérarchique, méthode de réallocation.

ACP avec TANAGRA - Tandem clustering : ACP + CAH. Approche combinée du clustering : associer algorithme de réduction de dimension (ACP - analyse en composantes principales) et méthode de classification automatique (CAH - classification ascendante hiérarchique). Intérêt de l'approche, son positionnement par rapport à un clustering sur les variables initiales utilisant la distance euclidienne, confrontation des résultats, positionnement des observations dans le repère factoriel. Le choix du nombre de facteurs à utiliser dans le processus de clustering reste une question ouverte.

ACP avec TANAGRA - Nouveaux outils. L’ACP de TANAGRA a été redéfini pour matcher avec le support de cours ci-dessus. Leur mode opératoire est décrit dans ce document. Les sorties sont largement enrichis. Des outils tels que la détection du nombre de facteurs via des méthodes de ré-échantillonnage sont des quasi-exclusivités, elles sont très peu présentes nativement dans d’autres logiciels.

ACP avec TANAGRA - Description de véhicules. Ce document reprend point par point un exemple d’analyse en composantes principales disponible dans le fameux ouvrage de Gilbert Saporta (Dunod, 2006). Mettre en relation ce qui est décrit dans la référence et les sorties que nous obtenons nous même est un exercice très intéressant.

ACP avec R. Ce tutoriel - ACP avec R - reprend l’analyse précédente (ACP – Description de véhicules) sous le logiciel R. Il s’appuie sur la procédure princomp() de R. Son principal intérêt est que je procède pas-à-pas. Toutes les formules sont décortiquées et programmées sous R (le calcul de l’intervalle de confiance des valeurs propres par exemple est peu usité dans les logiciels). L’élaboration des graphiques est tout aussi détaillée, permettant à tout un chacun de mesurer la puissance et la souplesse du langage de programmation R. En fait, ce tutoriel peut servir de document d’initiation à R, je l’utilise sous cet angle dans certains de mes enseignements.

ACP avec R - Techniques de détermination du nombre d'axes pertinents. Présentation de quelques techniques de détection des composantes principales "pertinentes" en ACP. Scree plot, règle de Kaiser et dérivés, "test" de Bartlett, test des bâtons brisés. Les approches fondées sur les techniques de ré-échantillonnage sont également à l’honneur. Analyse parallèle, analyse basée sur la randomisation, vérification de la significativité des facteurs par bootstrap, intervalle de confiance bootstrap des valeurs propres. Le code R mettant en œuvre les différentes techniques accompagne le texte.

ACP avec R - Indice KMO et Test de Bartlett. Programmation sous R de l’indice KMO global et par variable (Kaiser – Mayer – Olkin) et du test de sphéricité de Bartlett pour l'analyse en composantes principales, à partir des résultats fournis par la procédure princomp() de R. Ces indicateurs sont présents dans certains logiciels (SPSS et SAS par exemple), il est important de savoir de quoi il retourne.

ACP avec R - Librairies FactoMineR et dynGraph. Exploration interactive et habillage des graphiques issus de l'analyse en composantes principales. Mise en évidence des informations importantes selon les contributions et les cos2. Exportations des cartes des individus et des variables.

ACP sous EXCEL avec la librairie Xnumbers. En contrepoint du support de cours (Diapos), ce tutoriel reprend pas à pas toutes les formules de l’ACP sous Excel. Nous utilisons la librairie Xnumbers pour réaliser la factorisation de la matrice des données centrées et réduites (pour l’ACP normée) à l’aide de la décomposition en valeurs singulières.

ACP sous EXCEL avec l'add-in Explore de la page Excel'Ense. La page Excel'Ense de la Revue de Modulad recense un certain nombre d'add-ins (macro-complémentaires) pour le tableur Excel. Certains sont consacrés à l'analyse en composantes principales (ACP). Dans ce tutoriel, nous décrivons en détail l'usage et la lecture des résultat de la macro de Jacques Vaillé, qui regroupe par ailleurs d'autres techniques factorielles et des outils pour l'élaboration de graphiques (notamment des graphiques nuages de points étiquétés qui n'existent pas nativement dans Excel).

Complémentarité entre CAH et ACP. Dans cette étude, on montre que l’analyse en composantes principales permet de relativiser les résultats d’une CAH (classification ascendante hiérarchique). L’ACP peut aider notamment à mieux identifier le nombre adéquat de groupes, problème récurrent en classification automatique. La caractérisation des groupes à l’aide des statistiques descriptives comparatives est utilisée pour approfondir les interprétations.

ACP à partir des matrices des corrélations partielles. Le problème de l’effet taille en analyse en composantes principales. Gestion de la très forte corrélation entre les variables masquant les autres informations portées par les données. L’option « partial » de PROC FACTOR de SAS, programmation de la procédure sous R, ACP à l’aide des résidus de la régression sous TANAGRA. Implémentation de l'ACP sur corrélations partielles sous R, utilisation de princomp().


Analyse en facteurs principaux - Méthodologie. Principe de l’analyse en facteurs principaux. Analyse des relations entre les variables, modification de la matrice des corrélations. PROC FACTOR de SAS. Lecture des résultats. Tableaux des loadings et dec contributions, lecture des résultats. Rotation VARIMAX. Analyse sous R (package psych), SAS, SPSS et TANAGRA.

Tutoriels AFC - Analyse Factorielle des Correspondances

AFC avec PYTHON, package "fanalysis" - Analyse factorielle des correspondances. Présentation des fonctionnalités du package "fanalysis" pour la réalisation d'une analyse factorielle des correspondances sous Python. Traitement d'un tableau croisés de valeurs positive (souvent tableau de contingence). Coordonnées factorielles des modalités lignes et colonnes, aides à l'interprétation (cosinus carrés, contributions). Représentation simultanée des points lignes et colonnes, analyse des attractions et répulsions, utilisation d'un graphique heatmap pour approfondir les voisinages dans le repère factoriel. Traitement sous Python avec le package fanalysis.

AFC avec TANAGRA - Analyse factorielle des correspondances. Analyse factorielle des correspondances (AFC). Tableau de contingence. Tableaux de profils lignes et colonnes : distance du KHI-2 entre profils, distance à l'origine (par rapport au profil moyen). Tableau sous indépendance, résidu standardisé et contributions au KHI-2. Notions d'attractions et de répulsions entre modalités lignes et colonnes. Représentation factorielle. Positionnement des modalités de même nature (les profils lignes entre eux, idem pour les profils colonnes). Représentation simultanée : analyse des proximités entre les modalités lignes et colonnes, relation avec la contribution au KHI-2.

AFC avec TANAGRA - Modalités lignes (colonnes) supplémentaires. Analyse factorielle des correspondances (AFC). Calcul des coordonnées factorielles des modalités lignes (colonnes) supplémentaires à partir de leurs profils. Principe des calculs. Utilisation des tableaux "Factor scores coefficients for supplementary points" fournis par Tanagra. Insertion de la modalité supplémentaire dans la représentation factorielle (carte des modalités). L'exemple traite une modalité ligne, la transposition des calculs aux modalités colonnes ne présente aucune difficulté.

AFC avec TANAGRA - Association médias et professions. Retranscription de l'étude décrite dans l'ouvrage de Lebart, Morineau et Piron (2000, pages 77 à 107) à l'aide du logiciel Tanagra.

AFC avec R - Association médias et professions - Package "FactoMineR". Réalisation de l'étude "Association médias - professions" à l'aide de R (package "factorminer"). Le code R et le fichier de données sont accessibles.

AFC - Comparaison de logiciels. Comparaison de la mise en oeuvre et des sorties de plusieurs logiciels : Tanagra, R avec les packages "ca" et "ade4", OpenStat, SAS. Les résultats sont numériquement identiques, les différences se situent au niveau de leur mise en valeur.

AFC sous EXCEL avec l'ad-in Explore de la page Excel'Ense. Description de l'usage et de la lecture des résultat de la macro de Jacques Vaillé, qui regroupe par ailleurs d'autres techniques factorielles et des outils pour l'élaboration de graphiques.

Tutoriels ACM - Analyse des Correspondances Multiples

ACM - Analyse des correspondances multiples sous PYTHON avec le package "fanalysis". Présentation des fonctionnalités du package "fanalysis" pour la réalisation d'une analyse (factorielle) des correspondances multiples (ACM) sous Python. Focus sur la mauvaise perception de l'information restituée par les premiers facteurs : introduction de la correction de Benzécri pour les valeurs propres, de Greenacre pour les parts de variance restituées. Calcul des coordonnées factorielles des points individus et modalités, des contributions, des cosinus carrés. Quelques éléments sur les représentations graphiques. Traitements sous Python avec le package fanalysis. Un petit commentaire enfin sur le package "ca" pour R, particulièrement intéressant pour les analyses des correspondances.

ACM avec TANAGRA - Analyse factorielle des correspondances multiples. Analyse factorielle des correspondances multiples (AFCM). Type de tableau de données traité. Principe des calculs. Tableau des valeurs propres, correction de Benzécri, correction de Greenacre. Coordonnées des modalités, contributions, cosinus carrés, valeurs-test. Carte des modalités. Coordonnées des individus. Représentation dans le premier plan factoriel. Possibilité de représentation simultanée.

ACM avec TANAGRA - Variables illustratives, individus supplémentaires. Analyse factorielle des correspondances multiples avec Tanagra : traitement des variables illustratives quantitatives (calculs basés sur les corrélations) et qualitatives (sur les moyennes conditionnelles) et des individus supplémentaires (à partir des coefficients du tableau "Factor Score Coefficients" de Tanagra et un codage disjonctif complet de la description de l'individu). Graphique sous Excel, positionnement relatif de l'individu supplémentaire par rapport aux individus actifs.

ACM avec TANAGRA - Races canines. Retranscription de l'étude décrite dans l'ouvrage de M. Tenenhaus (1996, pages 212 à 222) à l'aide du logiciel Tanagra.

ACM avec R - Races canines. Réalisation de l'étude "Races canines" avec R (package "factominer"). Le code R et le fichier de données sont accessibles.

ACM - Comparaison de logiciels. Comparaison de logiciels lors du traitement d'une base comportant 8403 individus et 23 variables qualitatives : Tanagra, SAS (proc corresp), R (package "ade4"), STATISTICA. Faire le parallèle entre les différentes sorties des outils est un exercice intéressant.

Pipeline sous PYTHON - La méthode DISQUAL. Utilisation de l'ACM (analyse des correspondances multiples) pour projeter les individus décrits par des variables catégorielles dans un espace continu, suivi d'une analyse discriminante prédictive. Enchaînement des opérations dans un "pipeline" Python. Package "fanalysis"

Clustering - Pipeline Python et Déploiement (scikit-learn + fanalysis). Clustering (k-means) sur données décrites par des variables catégorielles. Tandem clustering : projection des individus dans un espace factoriel à l'aide de l'analyse des correspondances multiples (ACM avec le package fanalysis) ; puis classification à partir de la représentation factorielle. Choix de nombre de facteurs, réduction de dimension. Identification du nombre de classes via la librairie Yellowbrick. Encapsulation des traitements dans une structure "pipeline" de scikit-learn. Sauvegarde du "modèle" (pipeline) d'affectation dans un fichier à l'aide de la librairie "pickle". Ecriture d'un programme permettant de déployer le "modèle" sur un ficher d'individus supplémentaires.

Clustering de variables qualitatives - Diapos. Utilisation de l'ACM dans un schéma de "tandem analysis" pour la classification des modalités de variables qualitatives. Dans une première étape, une analyse des correspondances multiples (ACM) permet de projeter les modalités dans un nouvel espace de représentation. La typologie est réalisée à partir des coordonnées factorielles des modalités qui font figure d’individus dans la seconde étape.

Clustering des modalités de variables qualitatives via leur représentation factorielle (Python). Structuration de l'information à l'aide du clustering de modalités, lorsque les observations sont décrites par exclusivement des variables qualitatives. Exploitation de la représentation factorielle des points-modalités issue d'une ACM (analyse des correspondances multiples). K-Means des points-modalités dans l'espace factoriel en tenant compte de leur pondération (une modalité correspond à un ensemble d'individus). Traitements sous Python avec les packages 'fanalysis' et 'scikit-learn'.

Tutoriels AFDM - Analyse Factorielle des Données Mixtes

AFDM avec PYTHON (package "scientisttools") - Analyse factorielle des données mixtes. Présentation de la librairie d'analyse des données "scientisttools" pour Python. Elle intègre les techniques basiques (ACP, AFC, ACM), mais aussi celles plus sophistiquées (AFDM, ACP sur corrélations partielles, MDS, etc.). Elle propose deux modes de fonctionnement, une première classique sous Python comme une étape de réduction de dimension ; une seconde, plus originale, où elle émule les fonctionnalités et le fonctionnement des packages telles que FactoMineR, bien connue des data scientists, qui fait référence sous R. Dans cette vidéo, je montre l'utilisation de l'outil dans le cadre d'une analyse factorielle des données mixtes (FADM). Je mets en parallèle les résultats avec ceux de FactoMineR.

AFDM avec TANAGRA - Analyse factorielle des données mixtes. Analyse factorielle des données mixtes (AFDM). Analyse factorielle pour un mix de variables actives quantitatives et qualitatives. Type de données traité. Principe des calculs. Equivalences avec l'ACP (analyse en composantes principales) et l'ACM (analyse des correspondances multiples). Tableaux d'interprétation des résultats : contributions et qualités de représentation des variables via le carré des corrélations et des rapports de corrélations ; tableau des corrélations pour les quantitatives ; moyennes conditionnelles et valeurs test pour les modalités des qualitatives. Représentation (carte) des individus dans l'espace factoriel.

AFDM avec TANAGRA - Variables supplémentaires, individus supplémentaires. Analyse factorielle des données mixtes (AFDM) avec Tanagra. Traitement des variables illustratives, basé sur les corrélations pour les quantitatives, sur les moyennes conditionnelles pour les qualitatives. Traitement des individus supplémentaires, directement dans Tanagra, et à partir du tableau "Factor Scores Coefficients" dans un tableur. Représentation graphique incluant l'individu supplémentaire.

AFDM avec TANAGRA et R. Application de l’AFDM sur un fichier comportant des variables actives mixtes, quantitatives et qualitatives. Lecture des résultats : tableau des valeurs propres, tableau des coordonnées factorielles (carré des corrélations, variables quantitatives ; carré du rapport de corrélation, variables qualitatives), tableau des corrélations, tableau des moyennes conditionnelles ; représentations graphiques.

Classification automatique sur données mixtes (R et TANAGRA). Utilisation de l'AFDM dans un schéma de "tandem analysis" pour la classification d'individus décrits par un mix de variables quantitatives et qualitatives. [1] Une AFDM produit une représentation intermédiaire des données ; [2] une classification ascendante hiérarchique (CAH) à partir des facteurs "représentatifs" de l’AFDM est ensuite réalisée.

Tandem Clustering - Classification sur données mixtes (Logiciel R) Solution pour le clustering sur données hétérogènes composées de variables quantitatives et qualitatives en machine learning : (1) plonger les individus dans un espace factoriel à l'aide d'un algorithme qui permet de traiter le mix de variables (l'analyse factorielle des données mixtes - AFDM - en l'occurrence) ; (2) puis appliquer un algorithme de classification (classification ascendante hiérarchique CAH ici) à partir de la représentation factorielle des individus. Au passage, nous opérons une réduction de dimension en n'exploitant qu'une partie des composantes principales, une forme de nettoyage des données. Utilisation du langage et logiciel R, avec les fonctions FAMD (package FactoMineR) et hclust (stats).

Tutoriels MDS - Positionnement Multidimensionnel

Multidimensional Scaling (MDS) sous PYTHON avec Scientisttools Utilisation de la librairie "scientisttools" sous Python pour la mise en oeuvre du positionnement multidimensionnel classique (classical multidimensional scaling) dans un problème de recherche des communautés dans un réseau d'amitiés (matrice d'adjacence). Application d'un algorithme de clustering (K-Means) à partir des coordonnées "factorielles" des individus pour la délimitation des groupes. Traitement d'un individu supplémentaire via une double approche : identification de ses connexions au sein des communautés ; projection de l'individu supplémentaire dans l'espace "factoriel" MDS. Cette dernière fonctionnalité est très rare dans les librairies de machine learning.

Multidimensional Scaling avec R. Positionnement des principales villes de Madagascar à partir des distances routières qui les relient. Utilisation des données de Google Maps. Comparaison des MDS classiques, métriques et non-métriques.

PYTHON - Détection de communautés avec MDS. Identification des communautés dans les réseaux sociaux. Utilisation de la librairie "igraph". Traitement du fameux exemple "Club de Karaté de Zachary". Voisinage, centralité, matrice d'adjacence. Application d'algorithmes de machine learning à partir de la description individus-facteurs issus du MDS.


Ricco Rakotomalala