L`analyse de données avec [width=0.45]Factologo.png

publicité
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
L’analyse de données avec
Quelle évolution en 10 ans ?
François Husson
Laboratoire de mathématiques appliquées, Agrocampus Rennes
juin 2016
1 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Plan
1 Introduction
2 Exemple
3 Données manquantes
4 Module graphique
5 Aides diverses
2 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Historique du package
•
•
•
•
•
2003 : quelques programmes en S (Splus) : ACP et AFM
avr 2006 : package FactoMineR (PCA, CA, MCA, MFA, etc.)
avr 2007 : article sur FactoMineR (Journal of Statistical Software)
avr 2007 : site internet
nov 2007 : package RcmdrPlugin.FactoMineR (menu déroulant)
2 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
en quelques mots
Le package
• propose des méthodes d’analyses factorielles et de classification
• de nombreux indicateurs (qualité de représentation,
contribution, description automatique des axes, ...)
• possibilité d’ajouter des éléments supplémentaires
• interface graphique (en français et en anglais)
• gestion des données manquantes (avec le package missMDA)
• module graphique
• aides à l’utilisateur (site internet, vidéos, livres)
3 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
en quelques mots
Différentes méthodes pour différents formats de données :
Données
Variables quantitatives
Table de contingence
Variables qualitatives
Données mixtes
Groupes de variables
An.
An.
An.
An.
An.
Méthodes
en composantes principales
des correspondances
des correspondances multiples
factorielle de données mixtes
factorielle multiple
Fonction
PCA
CA
MCA
FAMD
MFA
Méthodes de classification et méthodes outils complémentaires :
Méthodes
Classification ascendante hiérarchique
Description d’une variable qualitative (ex. var. de classe)
Description d’une variable quantitative (ex. d’une dimension)
Construction d’un tableau de données textuel
Fonction
HCPC
catdes
condes, dimdesc
textual
4 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
en quelques mots
Quelques méthodes avancées pour différents formats de données :
Données
Hiérarchie sur les variables
Groupes d’individus
Tableau de contingence et
variables contextuelles
Tableaux de contingence
Méthodes
An. factorielle multiple hiérarchique
An. factorielle multiple duale
An. des correspondances généralisée
sur tableaux lexicaux agrégés
An. factorielle multiple sur tableaux
de contingence
Fonction
HMFA
DMFA
CaGalt
MFA
5 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Plan
1 Introduction
2 Exemple
3 Données manquantes
4 Module graphique
5 Aides diverses
6 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Description sensorielle de vins de Loire
• 10 vins blancs du Val de Loire : 5 Vouvray - 5 Sauvignon
• descripteurs sensoriels : acidité, amertume, odeur agrume, etc.
6 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Description sensorielle de vins de Loire
• 10 vins blancs du Val de Loire : 5 Vouvray - 5 Sauvignon
Intensité visuel
3,5
3,3
3,0
3,9
3,4
7,9
3,5
3,0
3,9
3,8
5,9
6,8
6,1
5,6
6,6
4,4
6,4
5,7
5,4
5,1
4,1
3,8
4,1
2,5
5,0
3,0
5,0
4,0
4,0
4,3
1,4
2,3
2,4
3,0
3,1
2,4
4,0
2,5
3,1
4,3
7,1
7,2
6,1
4,9
6,1
5,9
6,3
6,7
7,0
7,3
6,7
6,6
6,1
5,1
5,1
5,6
6,7
6,3
6,1
6,6
5,0
3,4
3,0
4,1
3,6
4,0
6,0
6,4
7,4
6,3
Cépage
Persistance arôme
…
…
…
…
…
…
…
…
…
…
Intensité arôme
5,7
5,3
5,3
3,6
3,5
3,3
1,0
2,5
3,8
2,7
Astringence
2,4
3,1
4,0
2,4
3,1
0,7
0,7
0,5
0,8
0,9
Amertume
4,3
4,4
5,1
4,3
5,6
3,9
2,1
5,1
5,1
4,1
Acidité
O. citron
…
Sucré
O. passion
S Michaud
S Renaudie
S Trotignon
S Buisse Domaine
S Buisse Cristal
V Aub Silex
V Aub Marigny
V Font Domaine
V Font Brûlés
V Font Coteaux
O. fruité
• descripteurs sensoriels : acidité, amertume, odeur agrume, etc.
Sauvignon
Sauvignon
Sauvignon
Sauvignon
Sauvignon
Vouvray
Vouvray
Vouvray
Vouvray
Vouvray
6 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Description sensorielle de vins : comparaison de jurys
Exemple
données
• 10 vins blancs
du Vald’AFM
de Loire :: les
5 Vouvray
- 5 Sauvignon
• description
Les
données : un sensorielle
panel d’experts
panel :étudiant
+ 1 panel
conso
+
de +31jurys
œnologue,
conso.,
étudiant
données d’appréciation
+
1
variable
qualitative
(cépage)
• notes hédoniques
de 60 consommateurs : appréciation globale
Groupes de variables quantitatives
Qlt
Expert
(27)
Conso
(15)
Etudiant
(15)
Appréciation
(60)
Cépage
(1)
Vin 1
Vin 2
…
Vin 10
> resAFM <- MFA(don.comp, group=c(27,15,15,60,1),
• type=c(rep("s",4),"n"), num.group.sup=c(4:5),
name.group=c("Expert","Conso","Etudiant","Appréciation","Cépage"))
Quelle description commune des vins (par ttes les variables) ?
• Y-a t’il des spécificités par jury ?
• Comparer
Marseille - 2010les typologies de chaque jurys (analyses séparées)
7 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Graphe des individus
S Trotignon
S Renaudie
S Michaud
• Les deux cépages
1
Sauvignon
Vouvray
Sauvignon
V Aub Marigny
0
V Font Coteaux
S Buisse Domaine
V Font Domaine
V Font Brûlés
-2
-1
sont bien séparés
• Les Vouvray sont
plus différents du
point de vue
sensoriel
Vouvray
• Plusieurs groupes de
V Aub Silex
vins, ...
-3
Dim 2 (24.42 %)
S Buisse Cristal
-2
-1
0
1
2
3
Dim 1 (42.52 %)
8 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
1.0
Représentation des variables
Expert
Etudiant
Conso
O.Av.Intensite_E
Int.attaque
Int.av.agitation
Expression
acide
Int.ap.agitation
O.Av.Intensite_C
O.Fruitpassion_E
O.Ap.Intensite_E
O.Ap.Intensite_C
O.florale O.Fruitpassion_C
O.Vegetale_C
Astringent_E
O.agrume
amere Amere_C
Persistance.aromatique
Equilibre_E
Astringent_C
Persistance.gustative
O.vegetale
Acide_E
Finesse
G.Intensite_C
Acide_C
O.Champignon_E
G.Alcool_C
O.fruit
Amere_E
O.Typicite_E
G.Alcool_E
G.Intensite_E
●
O.alcool
G.Typicite_E
O.boisee
Equilibre_C
O.Champignon_CO.vanille
Astringence
G.Typicite_C
O.Typicite_C
Int.couleur
0.0
−0.5
Fraicheur
Nuance.couleur
Impression.surface
O.champ
O.fruit.confit
Oxydation
Sucree_C
Sucree_E
sucree
O.Vegetale_E
−1.0
Dim 2 (24.42%)
0.5
O.passion
−1.0
−0.5
O.Alcool_C Typicite.olf.chenin
O.Alcool_E
0.0
Dim 1 (42.52%)
0.5
1.0
9 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
1.0
Représentation des variables
Expert
Etudiant
Conso
Acide
O.Fruitpassion_E
O.Fruitpassion_C
Acide_E
−0.5
0.0
Acide_C
●
Sucree_C
Sucree_E
Sucree
−1.0
Dim 2 (24.42%)
0.5
O.passion
−1.0
−0.5
0.0
0.5
1.0
Dim 1 (42.52%)
9 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Etude des groupes
⇒ Comparaison synthétique des groupes
1.0
⇒ Les positions des observations sont-elles similaires d’un groupe à
l’autre ? Les nuages de points partiels sont-ils similaires ?
0.8
• 1ère dimension commune à
0.6
tous les groupes
Préférence
• 2ème dimension due au
0.4
Etudiant
groupe Expert
Cépage
0.2
Conso
0.0
Dim 2 (24.42%)
Expert
quand ils induisent la
même structure
●
0.0
• 2 groupes sont proches
0.2
0.4
0.6
0.8
1.0
Dim 1 (42.52%)
10 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
3
Représentation des points partiels
Expert
Etudiant
Conso
●
●
2
●
S Trotignon
●
S Renaudie
●
●
●
1
S Michaud
●
●
●
●
●
S Buisse● Cristal
●
V Font Coteaux
●
●
V Aub Marigny
●
●
●
●
0
●
●
●
●
●
S Buisse Domaine
●
●
●
●
●
V Font Domaine
●
−1
Dim 2 (24.42%)
●
V Font Brûlés
●
●●
●
−2
●
●
●
●
−3
V Aub Silex
●
−2
0
2
4
Dim 1 (42.52%)
• point partiel = représentation d’un individu vu par un groupe
• un individu est au barycentre de ses points partiels
• un individu est "homogène" si ses points partiels sont proches
11 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Représentation de variables supplémentaires
1.0
Expert
Etudiant
Conso
Acide
O.passion
Acide_E
0.0
Acide_C
−0.5
●
Sucree_C
0.0
Sucree_E
−1.0
Sucree
-0.5
Dim 2 (24.42 %)
0.5
1.0
Dim 2 (24.42%)
0.5
O.Fruitpassion_E
O.Fruitpassion_C
−1.0
−0.5
0.0
0.5
1.0
Dim 1 (42.52%)
S Trotignon
S Renaudie
S Michaud
1
-1.0
Sauvignon
Vouvray
Sauvignon
1.0
⇒ Les préférences sont liées à
la description sensorielle
V Aub Marigny
S Buisse Cristal
0
V Font Coteaux
S Buisse Domaine
Vouvray
V Font Domaine
V Font Brûlés
-1
0.5
-2
0.0
Dim 1 (42.52 %)
V Aub Silex
-3
-0.5
Dim 2 (24.42 %)
-1.0
-2
-1
0
1
Dim 1 (42.52 %)
2
3
12 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Représentation de variables supplémentaires
1.0
Expert
Etudiant
Conso
Acide
O.passion
Acide_E
0.0
Acide_C
●
−0.5
Dim 2 (24.42%)
0.5
O.Fruitpassion_E
O.Fruitpassion_C
Sucree_C
Sucree_E
−1.0
Sucree
−1.0
−0.5
0.0
0.5
1.0
Dim 1 (42.52%)
S Trotignon
S Renaudie
S Michaud
1
Sauvignon
Vouvray
Sauvignon
V Aub Marigny
0
V Font Coteaux
S Buisse Domaine
Vouvray
-2
-1
V Font Domaine
V Font Brûlés
V Aub Silex
-3
Vin préféré :
Vouvray Aubuisières Silex
Dim 2 (24.42 %)
S Buisse Cristal
-2
-1
0
1
Dim 1 (42.52 %)
2
3
12 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Plan
1 Introduction
2 Exemple
3 Données manquantes
4 Module graphique
5 Aides diverses
13 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Gestion des données manquantes avec missMDA
Variables
j
1
1
p
?
?
?
?
?
?
Etude et mise en œuvre des méthodes
factorielles en présence de données manquantes : ACP, ACM, AFDM, AFM
?
?
?
?
Individus
?
i
?
?
?
?
?
n
?
?
?
?
1
Imputation par analyse factorielle itérative
2
Analyse du tableau complété
13 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
ACP Itérative
Principe : imputer par des valeurs qui n’influent pas sur les
résultats de l’ACP
1
2
initialisation ` = 0 : X 0 (imputation par la moyenne)
itération ` :
(a) ACP sur le tableau complété → (F ` , U ` ) ;
S dimensions conservées
(b) données manquantes imputées par F ` U `0
=⇒ X ` = W ∗ X + (1 − W ) ∗ F ` U `0
(c) moyennes (et écarts-types) sont mis à jour
3
étapes d’estimation et d’imputation sont répétées
=⇒ fournit les axes et composantes principales (mieux que Nipals)
=⇒ fournit une imputation du jeu de données
14 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Gestion des données manquantes : exemple en ACP
>
>
>
>
>
library(missMDA)
data(orange)
nb <- estim_ncpPCA(orange,ncp.max=5)
## Estime le nb de dimensions
comp <- imputePCA(orange,ncp=nb,scale=TRUE) ## Complète le tableau
res.pca <- PCA(comp$completeObs)
## Effectue l’ACP
> orange
Sweet Acid Bitter Pulp Typicity
NA
NA 2.83
NA
5.21
5.46 4.13 3.54 4.62
4.46
NA 4.29 3.17 6.25
5.17
4.17 6.75
NA 1.42
3.42
...
NA
NA
NA 7.33
5.25
4.88 5.29 4.17 1.50
3.50
> comp$completeObs
Sweet Acid Bitter Pulp Typicity
5.54 4.13
2.83 5.89
5.21
5.46 4.13
3.54 4.62
4.46
5.45 4.29
3.17 6.25
5.17
4.17 6.75
4.73 1.42
3.42
...
5.71 3.87
2.80 7.33
5.25
4.88 5.29
4.17 1.50
3.50
15 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Imputation multiple en ACP
⇒ ACP itérative : une méthode d’imputation simple
(F̂ Û ′ )ik
⇒ Une valeur unique ne peut pas refléter la variabilité de prédiction
⇒ Imputation multiple : générer plusieurs valeurs plausibles pour
chaque valeur manquantes
16 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Visualisation de l’incertitude liée aux données manquantes
>
>
>
>
library(missMDA)
mi <- MIPCA(orange, scale = TRUE, ncp=2)
mi$res.MI
## sortie pour les tableaux imputés
plot(mi)
1.0
Variable representation
Supplementary projection
●
1 3●
●
●
2
●
6
●
0
●
10
12
4
●
●
9
7
−2
8
Color.intensity
Bitter
●
Attack.intensity
Acid
Sweet
●
−0.5
●
Typicity
0.0
Dim 2 (17.17%)
0.5
4
2
5
11
●
●
−1.0
−4
Dim 2 (17.17%)
Odor.intensity
Pulp
−6
−4
−2
0
2
Dim 1 (71.33%)
4
6
−1.5
−1.0
−0.5
0.0
0.5
1.0
1.5
Dim 1 (71.33%)
Permet d’éviter d’analyser des tableaux avec trop de données
manquantes
17 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Gestion des données manquantes : exemple en ACM
>
>
>
>
>
library(missMDA)
data(vnf)
nb <- estim_ncpMCA(vnf,ncp.max=5)
## Estime le nb de dimensions
imp <- imputeMCA(vnf, ncp=nb)
## Complète le tableau disjonctif
res <- MCA(vnf,tab.disj=imp$tab.disj) ## ACM utilisant tab disj complété
ind 1
ind 2
ind 3
ind 4
ind 5
ind 6
ind 7
…
ind 1232
V1
a
NA
a
a
b
c
c
…
c
V2
NA
f
e
e
f
f
f
…
f
V3 … V14
g … u
g
u
h
v
h
v
h
u
h
u
v
NA
…
…
h
v
V1_a V1_b V1_c V2_e V2_f V3_g V3_h
0.71 0.29
ind 1
1
0
0
1
0
ind 2
0
1
1
0
0.12 0.29 0.59
ind 3
1
0
0
1
0
0
1
ind 4
1
0
0
1
0
0
1
ind 5
0
1
0
0
1
0
1
ind 6
0
0
1
0
1
0
1
ind 7
0
0
1
0
1
0.37 0.63
…
…
…
…
…
…
…
…
ind 1232
0
0
1
0
1
0
1
…
…
…
…
…
…
…
…
…
…
=⇒ Même principe avec FAMD et MFA
18 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Traitement d’un questionnaire avec données manquantes
• 1232 répondants, 14 questions, 35 modalités, 9% de données
manquantes pour 42% des répondants
Missing single: subjects
2
Q5.NA
Q6.NA
Q4.NA
0
−1
Q7.NA
Q1.NA
Q3.NA
1
●●
●
Dim 2 (8.618%)
1
0
−1
Q13.NA
Q10.NA Q8.NA
Q11.NA
Q9.NA
Q12.NAQ14.NA
Q6_2
Q5_2
Q4_2
Q3_3
Q1_3
Q1_2
Q2_2
Q3_2
Q2_3
Q7_2
Q14_3
Q14_1
Q13_3
Q3_1
Q13_1
Q7_1
Q8_2
Q1_1
Q6_1
Q13_2
Q14_2
Q8_1
Q4_1
Q9_1
Q5_1
Q9_2
Q2_1
●
Q9_3
Q10_2
Q11_2
Q12_2
Q11_1
Q12_1
Q10_1
Q12_3
Q2.NA
●
●
●
●
●
●
●
● ●
●●
●
●
●
●
● ● ●
●
●
●
●
●●
●●●
●
●
●
●
●
●●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●●●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●●
● ●
●
●●
●
●
●●
●
●
●
●
●● ●
●
●
●
●●
●
●
●
●
●
●
●
●
●
● ● ●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
● ● ●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●● ● ●
●
●
●
●
●
●
●
●
●
● ●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●● ●
●
●
●
●
●
●
●
● ●●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●●● ●
●
●
●
●
●
●
●
●●
●●
●
●
●●
●●
●●
●
●
●
●
●
●
●
●
● ●
●
●
●
●
●
●● ●
●●
●
●
●
●
●
●● ●
●
●
●
●
●
●
● ●
●
●
●●
●
●●
●
−3
−3
−2
−2
Dim 2 (8.618%)
2
3
3
Missing single: categories
0
1
2
3
4
5
6
0
1
2
3
4
5
Dim 1 (11.74%)
Regularized iterative MCA: categories
Regularized iterative MCA: subjects
1.5
Dim 1 (11.74%)
−1.0
−0.5
0.0
0.5
1.0
0.0
Dim 2 (11.21%)
−1.0
−0.5
1.0
0.0
0.5
Q2.2
Q1.2
Q11.1
Q12.1
Q8.1
Q9.1
Q13.1
Q10.1
Q7.1
Q3.2
Q14.1
Q9.2Q13.3
Q12.2
Q2.1 Q3.1 Q14.2
Q1.1 Q13.2
●
Q14.3
Q3.3
Q7.2
Q6.1
Q10.2
Q4.1Q2.3
Q5.1
Q8.2
Q1.3 Q11.2
Q12.3
Q9.3
−0.5
Dim 2 (11.21%)
Q5.2
Q4.2
0.5
1.0
1.5
Q6.2
1.5
●●● ●
● ●●● ●
●
● ● ●● ●
●
●
●●
●●●
●● ● ● ●
●●
●
●●
●●
●
●● ● ●
●●●
●●● ● ● ●● ● ●●●
●
●
● ●
● ●●
●●
●● ●
●
● ●●
●●●
● ●
●
●
●●●
●
●● ●
●
● ●●
●
● ● ●●
●●
●●●
●● ●●
●
● ●
●● ●
●●●
●
●
●
●●●
●● ●
●●
●
●●
●
● ●
●●●●●
●
●●● ● ●
●●
●●●● ●
●
●
●
●
●
●
●●● ●
●
●
●
●
●
●
●●●
●
●● ● ●
●●
● ●●
●
●● ●
● ●● ●
●●
●
●
●● ●●
● ●
●●
●
●●
●
●●
●
●
●●
●●
●
●●●
● ●
●●
●
●
●
●
● ●
●
●
●
●
●
●
●
●
●
●
●
●
● ●●●●●●
●● ●●●● ●
● ●●
●●●● ●
● ●●
●●
●●
● ●
●●
●
●
●●
●●
●
●
●●
●●●
● ●● ●●
●
●●
● ● ●●
●
●● ●
●
●●
●●
●
●
●●●
● ●
●● ●●●● ●
●
●
●●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
● ●● ●●● ●●
●
●
●●
●● ● ●●
●
●
●
●
●●
●
● ●●
●●●●●
●
●
●
●
●
●
●●●●
●●
●●
●
●
●
●●●
●
●
●
●●●
●
●●
●●
●
●
●
●
●
●
●●
●
●
●●
●
● ●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●●●
●
●
● ● ●
●
●
●
●
●
●
●
●
●
●
●
●●●
●
●
●
●●●●
●
●
●
●●●
●
●
●
● ●●●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●● ●
●●
●●
●●
●
●
●
●
●
●
●
●
●
● ●
●
●
●
●● ●● ● ●
●●
●
●
●
●●
●
●
●
●
●
●
●
● ●●
●
●
●
●
●
●
●
●●●
●
●
●
●
●
●
●●●●
●
●●
●
●
●
●●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●●●●
●
●
●
●
●
●
●
●●● ● ●
●
●●
● ●
●
●
●
● ●●
●
●●●
●
●●
●
●
● ●● ●
●
●
●
●
●
●●
●
●●
●
●
●●
●● ● ●
●
●
●
●
●
●
●●
●
●●
●
●●
●
●
●
●
●
●●
●●
●●●●
● ●●
●
●
●
●●●●
●●●●
●
●●
●
●●●●
●
●●
●
●
●●
●
●
●
●
●
●●
●
●● ● ● ● ●
●
●●●
●
●
● ●●
●●
● ●
●
●
●
●
●●
●
●
●
●
●
●
●●●●
●
●
● ●
●●
●
●
●
●●
●●●
●●
●● ●
●●
●
●●●●
● ●●●●●● ●
●
●
●
●
●
●●
●●●
●
●
●
●●
●●●
●●
●●●
●
●●●●
● ●●●●
●
●●
●●●
●●●
●
●
●●
●
●●●●
●
● ●
●
● ●
●
●
●●
●●
●
●●
●● ●
● ●●●●
●●
●
●●●●
●●
●●●●
●
●
●
●●
● ●● ●
●●
●●
● ●
●●
●
●●
● ● ● ●
●●
●●●● ● ●●
●
●
●● ●
●
●
−1.0
−0.5
0.0
0.5
1.0
●
1.5
19 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Plan
1 Introduction
2 Exemple
3 Données manquantes
4 Module graphique
5 Aides diverses
20 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Graphe des individus : AVANT
> plot(res.pca, autoLab="no")
Avant
4
Casarsa
●
YURKOV
Parkhomenko
Korkizoglou
●
−2
0
Zsivoczky
Smith
Macey
●
●
●
SEBRLE
Pogorelov
MARTINEAU
● ● CLAY
Terek
HERNU
KARPOV
Turi
Barras
●
●
●
●
●
McMULLEN
●
BOURGUIGNONUldal
●
●
OlympicG
●
●
Decastar
Schoenbeck
Bernard
Karlivans
●
BARRAS Qi ●●
●
●
●
Hernu
Ojaniemi●
BERNARD
●
Smirnov
● ZSIVOCZKY
Gomez
●
●
Schwarzl
●
Nool
Averyanov
●
Lorenzo
WARNERS
●●
●
Warners
●
NOOL
●
Sebrle
●
Clay
●
Karpov
●
●
Drews
●
−4
Dim 2 (17.37%)
2
●●
−6
−4
−2
0
2
4
6
Dim 1 (32.72%)
20 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Graphe des individus : APRES
> plot(res.pca, autoLab="auto") ##
"yes" si nb éléments <50 sinon "no"
4
Après
Casarsa ●
−2
0
Zsivoczky●Smith
●
Pogorelov ● ● SEBRLE ● Macey
MARTINEAU●
Terek ●
● KARPOV
●HERNU Barras CLAY ●
●
Turi
●
Uldal
●
● McMULLEN
●
BOURGUIGNON Schoenbeck●●
●
OlympicG
Decastar
●
Bernard
●
●
BARRAS
Karlivans
Hernu
Qi
●
● Ojaniemi
BERNARD
●
Smirnov●
●
ZSIVOCZKY
●
Gomez ●Schwarzl
●
Nool ●●●
Averyanov ●
Lorenzo
WARNERS
●
Warners
NOOL
●
●
Sebrle
Clay
●
Karpov
●
Drews
−4
Dim 2 (17.37%)
2
YURKOV
●
●●
KorkizoglouParkhomenko
−6
−4
−2
0
2
4
6
Dim 1 (32.72%)
20 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Module graphique
• Concerne toutes les fonctions graphiques plot.PCA,
plot.MCA, plot.CA, plot.FAMD, plot.MFA
• La fonction autoLab positionne les libellés de façon optimale
• placement des libellés sur l’extérieur du graphique
• calcul du taux de recouvrement des libellés
• algorithme itératif minimisant le taux de recouvrement
• Quelques astuces complémentaires :
• sélectionner des éléments
• réduire la taille des caractères (cex = 0.7)
• agrandir la fenêtre graphique
• mettre une ombre sous les libellés
• relancer la fonction =⇒ graphe légèrement différent
21 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Sélection des individus par leur qualité de représentation
> plot(res.pca, habillage="Competition", select="cos2 0.6")
Decastar
OlympicG
Casarsa
Casarsa●
Parkhomenko
Parkhomenko
●
●
Sebrle
Sebrle
Clay
Clay
●
BOURGUIGNON
BOURGUIGNON
●
0
Decastar
Decastar
OlympicG
OlympicG
●
Karpov
Karpov
●
●
−2
Lorenzo
Lorenzo ●
NOOL
NOOL
●
Warners
Warners
●
Drews
Drews
−4
Dim 2 (17.37%)
2
4
Individuals factor map (PCA)
−6
−4
−2
0
2
4
6
Dim 1 (32.72%)
22 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Sélection des modalités par leur qualité de représentation
MCA factor map
> plot(res.mca, invisible="ind", selectMod="cos2
8")
2
tea
tea shop
shop
unpackaged
unpackaged
1
0
tearoom
tearoom
chain store+tea
store+tea shop
shop
chain
M +2/day
Not.friendliness M
Not.friendliness
+2/day
●
Not.tearoom
Not.tearoom
friendliness
friendliness
1/day
1/day FF
15−24
student
15−24 student
tea
chain store
store
tea bag
bag chain
−1
Dim 2 (8.10%)
p_upscale
p_upscale
−1
0
1
2
Dim 1 (9.88%)
22 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Sélection des éléments par leur contribution
MCA factor map
> plot(res.mca,select="contrib 10",selectMod="contrib 10",shadow=TRUE)
2
tea
tea shop
shop
unpackaged
unpackaged
0
1
190
195
195●182 190
202
● ●202
●168
182
168
●
227
211 ●208
227● ●●211
208
31
31
Not.friends
Not.friends
●
tearoom
tearoom
chain store+tea
store+tea shop
shop
chain
tea
tea bag+unpackaged
bag+unpackaged
●
273
273
chain
chain store
store
tea
tea bag
bag
resto
resto
−1
Dim 2 (8.10%)
p_upscale
p_upscale
−1
0
1
2
Dim 1 (9.88%)
22 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Sélection des éléments par une liste
> liste <- c("V Aub Silex","S Trotignon","V Aub Marigny")
> plot(res, partial="all", select=liste, title="Graphe des individus")
Graphe des individus
3
Expert
Etudiant
Conso
2
●
S Trotignon
●
●
●
V Aub Marigny
●●
0
●
−2
−1
●
●
●
−3
Dim 2 (24.42%)
1
●
V Aub Silex
●
●
−2
0
2
4
Dim 1 (42.52%)
22 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Sélection des variables par leur contribution
> plot(res,choix="var", select="contrib 8", unselect=0, shadow=TRUE)
1.0
Correlation circle
Expert
Etudiant
Conso
Amere_C
Amere_C
●
G.Typicite_E
G.Typicite_E
−0.5
0.0
Equilibre_E
Equilibre_E
Sucree_C
Sucree_C
Sucree_E
Sucree_E
O.Alcool_E
O.Alcool_C
O.Alcool_C O.Alcool_E
−1.0
Dim 2 (24.42%)
0.5
O.Fruitpassion_E
O.Fruitpassion_E
−1.5
−1.0
−0.5
0.0
Dim 1 (42.52%)
0.5
1.0
1.5
22 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Module graphique
• Principaux arguments :
autoLab = "auto" ## position optimale des libellés si nb éléments <50
shadowtext = TRUE ## ombre sous le libellé
invisible=c("ind","ind.sup") ## rend invisibles certains éléments
• Sélection des éléments par :
select = 1:4
select = c("i1","i3")
select = "cos2 5"
select = "cos2 0.6"
select = "coord 3"
selectMod = "contrib 8"
unselect = 0.5
unselect = 0
unselect = 1
unselect = "grey30"
##
##
##
##
##
##
##
##
##
##
4 premiers indiv
liste d’indiv
5 indiv les mieux représentés
indiv avec cos2 > 0.6
3 indiv avec coordonnées les + grandes
8 modalités avec contributions les + grandes
transparence des éléments non sélectionnés
éléments non sélectionnés de même couleur
éléments non sélectionnés non dessinés
éléments non sélectionnés en gris
23 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Graphiques interactifs avec le package Factoshiny
• Permettre à l’utilisateur de réaliser des analyses statistiques
sans besoin de maîtriser le code
• Visualisation en temps réel des modifications apportées
• Optimisation du visuel des graphiques avant exportation
• Tous les résultats directement disponibles dans un seul objet
24 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Graphiques interactifs avec le package Factoshiny
Un seul paramètre en entrée :
• Un jeu de données : réalise directement l’analyse factorielle sur
les données
> library(Factoshiny)
> data(hobbies)
> res <- MCAshiny(hobbies)
• Un objet résultat de FactoMineR
> data(children)
> res.ca <- CA(children, row.sup = 15:18, col.sup=6:8, graph=FALSE)
> res <- CAshiny(res.ca)
• Un objet résultat de Factoshiny
> data(decathlon)
> res <- PCAshiny(decathlon)
> res2 <- HCPCshiny(res)
25 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Graphiques interactifs avec le package Factoshiny
Une fois l’application lancée, possibilité de modifier :
• Paramètres de la fonction d’analyse factorielle
• choix de variables supplémentaires
• choix d’individus supplémentaires
• normer ou non les variables
• Paramètres graphiques :
• choix des dimensions
• taille de police
• coloriage par variable qualitative
• sélection par qualité de représentation, contribution, liste
• etc. (cf. paramètres graphiques des fonctions plot.PCA,
plot.MCA, etc.)
• Paramètres de téléchargement
• graphes exportables en png, pdf, jpeg
26 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Graphiques interactifs avec le package Factoshiny
En sortie, plusieurs onglets disponibles :
• graphes : graphes par défaut des fonctions PCA, CA, etc.
• valeurs : résume les principaux résultats (cf. summary.PCA,
summary.CA, etc.)
• description automatique des axes : résultats de dimdesc
• résumé du jeu de données : cf. fonction summary de R
• données : affichage du jeu de données
=⇒ Toutes ces sorties s’adaptent aux choix de l’utilisateur
27 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
De nouveaux packages graphiques
Graphe des individus
• le package explor
• graphes interactifs
• possibilité de bouger
les libellés
Casarsa
●
YURKOV
Parkhomenko
Korkizoglou
●
●
●
2
Sebrle
Dim2 (17.4%)
• le package factoextra
• basé sur ggplot2
• construction
séquentielle des
graphes en ajoutant
des couches
4
Zsivoczky
Smith
●
Macey
●
●
SEBRLE
Pogorelov
● ●
CLAY
MARTINEAU
Terek
HERNU
KARPOV
●
●
Turi
●
●
●
Barras
●
●
McMULLEN
BOURGUIGNON Uldal
●
●
●
Schoenbeck
Bernard
0
●
●
Karlivans
BARRAS Qi
●
●
●
contrib
Clay
50
●
40
Karpov
●
Lorenzo
●
●
Warners
●
NOOL
−2
20
10
●
Hernu
Ojaniemi●
BERNARD ●
●
Smirnov
ZSIVOCZKY
●
Gomez
●
●
Schwarzl
●
Nool
Averyanov
●●
WARNERS
30
●
Drews
●
−2.5
> library(factoextra)
> fviz_pca_ind(res.pca, col.ind="contrib") +
labs(title="Graphe des individus") +
scale_color_gradient2(mid="blue",high="red") +
theme_minimal()
0.0
2.5
5.0
Dim1 (32.7%)
28 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Plan
1 Introduction
2 Exemple
3 Données manquantes
4 Module graphique
5 Aides diverses
29 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Aides à l’utilisateur : un menu déroulant
Le package RcmdrPlugin.FactoMineR
29 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Aides à l’utilisateur : site internet
• http://factominer.free.fr
• en anglais et en français
• exemples, aides sur les fonctions, références, etc.
30 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Aides à l’utilisateur : un Google group
• https://groups.google.com/group/factominer-users/
• possibilité de poser des questions et/ou répondre
• en français ou en anglais
31 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Aides à l’utilisateur : des vidéos
• page enseignement de François Husson
• disponible dans les aides de FactoMineR
32 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Aides à l’utilisateur : diffusion
• 2 articles dans J. of stat. software (FactoMineR, missMDA)
• 2 articles dans R journal (CA-galt, MFACT)
• Des livres :
Analyse de données avec R (2e ed) Statistique avec R (3e ed)
33 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Aides à l’utilisateur : chaîne Youtube
• https://www.youtube.com/HussonFrancois
• playlists en français (27 vidéos de cours & 18 vidéos logiciel)
• playlist en anglais (11 vidéos)
34 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Aides à l’utilisateur : un MOOC
• https://www.fun-mooc.fr/
• 2 sessions (2015 = 5000, 2016 = 4550 participants)
• 5 semaines de cours : ACP, AFC, ACM, CAH, AFM
35 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
Un projet en analyse des données
missMDA : données manquantes
RcmdrPlugin.FactoMineR: menu déroulant
Factoshiny : graphes interactifs
36 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
D’un package à un projet sur l’analyse de données
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
2003 : quelques programmes en S (Splus) : ACP, AFM
avr 2006 : package FactoMineR (PCA, CA, MCA, MFA, etc.)
avr 2007 : article sur FactoMineR (Journal of Statistical Software)
avr 2007 : site internet
nov 2007 : package RcmdrPlugin.FactoMineR (menu déroulant)
juin 2009 & fév 2016 : Analyse de données avec R
mai 2010 : package missMDA (gestion des données manquantes)
jan 2011 : Exploratory Multivariate Analysis by Example Using R
avr 2011 : tutoriels vidéos
sep 2011 : Google group
nov 2012 : Análisis de datos con R
mar 2013 : chaîne Youtube (vidéos de cours et didacticiel)
juin 2013 : article sur MFACT (R Journal)
fév 2014 : cours en ligne d’analyse de données (en local)
fév 2015 : package Factoshiny (graphes interactifs)
mar 2015 & 2016 : MOOC d’analyse de données (FUN)
juin 2015 : article sur CA-Galt (R Journal)
avr 2016 : article sur missMDA (Journal of Statistical Software)
packages factoextra et explor (graphes interactifs)
37 / 37
Introduction
Exemple
Données manquantes
Module graphique
Aides diverses
D’un package à un projet sur l’analyse de données
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
2003 : quelques programmes en S (Splus) : ACP, AFM
avr 2006 : package FactoMineR (PCA, CA, MCA, MFA, etc.)
avr 2007 : article sur FactoMineR (Journal of Statistical Software)
avr 2007 : site internet
nov 2007 : package RcmdrPlugin.FactoMineR (menu déroulant)
juin 2009 & fév 2016 : Analyse de données avec R
mai 2010 : package missMDA (gestion des données manquantes)
jan 2011 : Exploratory Multivariate Analysis by Example Using R
avr 2011 : tutoriels vidéos
sep 2011 : Google group
nov 2012 : Análisis de datos con R
mar 2013 : chaîne Youtube (vidéos de cours et didacticiel)
juin 2013 : article sur MFACT (R Journal)
fév 2014 : cours en ligne d’analyse de données (en local)
fév 2015 : package Factoshiny (graphes interactifs)
mar 2015 & 2016 : MOOC d’analyse de données (FUN)
juin 2015 : article sur CA-Galt (R Journal)
avr 2016 : article sur missMDA (Journal of Statistical Software)
packages factoextra et explor (graphes interactifs)
37 / 37
Téléchargement