Vous êtes sur la page 1sur 95

Méthodes d’analyses statistiques

descriptives et multivariées

1. Analyses à un tableau

Isabelle Le Viol & Christian Kerbiriou


CESCO-UMR7204 MNHN-UPMC-CNRS
ileviol@mnhn.fr et Kerbiriou@mnhn.fr
Des analyses multivariées: pour quels types de données ?
Tableaux complexes de données
comprenant de nombreuses variables
(souvent de typologie diverse / plusieurs dizaines, centaines de lignes et colonnes)

var1 var 2 var3 var4 var5………..

ind1
ind2
Ind3
.
.
.
.
.
.
.

- Méthodes statistique uni ou bivariée


- Analyses factorielles
Quels types de données ?

Grande diversité

- Présence/absence,
abondances, mesures,
pourcentages, noms…

var
Colonnes

Entrées

Lignes
site ou sp
Quels types de données ?

Grande diversité

- Présence/absence, - Mesures de différences


abondances, mesures, (dissimilarité)
pourcentages, noms…

var site
Colonnes Objet

Entrées Entrées

Lignes Objet
site ou sp site
Quels types de données ?

Grande diversité

- Couplage

Variables
Espèces environnementales

Abondances Mesures

sites
Quels types de données ?

Grande diversité

- K- tableaux

Année 1 Année 2 Année 3

Var. env. Var. env. Var. env.

Mesures Mesures Mesures


sites

sites

sites
Comment choisir une analyse ?

1) Nature des problèmes posés par l’utilisateur

-de description:
Décrire un phénomène sans avoir d’idées a priori sur les résultats qui peuvent apparaître.
structurer et simplifier les données issues de plusieurs variables, sans privilégier l'une
d'entre elles en particulier
Résumer l’information en minimisant la déperdition d’informations et
repérer des dimensions cachées
ACP, AFC, ACM…

-de structuration (classer)


synthétiser son information en structurant la population par "groupes homogènes » .
Méthode de regroupement des individus selon leurs ressemblances.
Constituer des groupes aussi similaires que possibles
Classification (classification hiérarchique ascendante, descendante… ‘cluster’.)

-d’explication
Les variables n’ont pas la même importance et ne jouent pas le même rôle. On est en
face d’un problème d’"explication" dès que l’on cherche à construire le schéma explicatif
d’un phénomène en utilisant d’autres phénomènes.
Expliquer une variable par plusieurs
Régressions, analyses discriminantes
Comment choisir une analyse ?

1) Nature des problèmes posés par l’utilisateur

-de description:
Décrire un phénomène sans avoir d’idées a priori sur les résultats qui peuvent apparaître.
structurer et simplifier les données issues de plusieurs variables, sans privilégier l'une
d'entre elles en particulier
Résumer l’information en minimisant la déperdition d’informations et
repérer des dimensions cachées
ACP, AFC, ACM…

-de structuration (classer)


Synthétiser son information en structurant la population par "groupes homogènes » .
Méthode de regroupement des individus selon leurs ressemblances.
Constituer des groupes aussi similaires que possibles
Classification (classification hiérarchique ascendante, descendante… ‘cluster’.)

-d’explication
Les variables n’ont pas la même importance et ne jouent pas le même rôle. On est en
face d’un problème d’"explication" dès que l’on cherche à construire le schéma explicatif
d’un phénomène en utilisant d’autres phénomènes.
Expliquer une variable par plusieurs
Régressions, analyses discriminantes
Comment choisir une analyse ?

1) Nature des problèmes posés par l’utilisateur

-de description:
Décrire un phénomène sans avoir d’idées a priori sur les résultats qui peuvent apparaître.
structurer et simplifier les données issues de plusieurs variables, sans privilégier l'une
d'entre elles en particulier
Résumer l’information en minimisant la déperdition d’informations et
repérer des dimensions cachées
ACP, AFC, ACM…

-de structuration (classer)


Synthétiser son information en structurant la population par "groupes homogènes » .
Méthode de regroupement des individus selon leurs ressemblances.
Constituer des groupes aussi similaires que possibles
Classification (classification hiérarchique ascendante, descendante… ‘cluster’.)

-d’explication
Les variables n’ont pas la même importance et ne jouent pas le même rôle. On est en
face d’un problème d’"explication" dès que l’on cherche à construire le schéma explicatif
d’un phénomène en utilisant d’autres phénomènes.
Expliquer une variable par plusieurs
Régressions, analyses discriminantes
Comment choisir une analyse ?

2) Nature des données du tableau (et techniques utilisables)

- Données quantitatives

• Données continues : elles sont issues de mesures (taille, poids, âge, quantité de
nourriture, taux d’hormones, quantité de nitrates, valeurs du pH, etc.) ;

• Données discrètes : effectifs (anciennement fréquences), issues de recensements ou


d’enquêtes.

- Données qualitatives

• Données descriptives qui définissent des catégories.


(Sexe (mâle, femelle), avoir les yeux bleus ou noirs ou gris, etc.)

Elles peuvent se coder pour créer un tableau. Elles peuvent être codées en chiffres à valeurs arbitraires (1
et 2 par exemple, mais pourrait être aussi bien 0 et 1). Dans ce codage arbitraire, il n’y a pas de relation
d’ordre entre les nombres.
Comment choisir une analyse ?

* Nota bene sur les données

* Possible de transformer des variables quantitatives (continues ou discrètes) en variables


qualitatives.
Relation d’ordre entre les classes : nombre plus petit à la première classe, plus grand
à la classe supérieure.
Problèmes : Perte d’information. Intervalles
Découper en classes à intervalles ou effectifs constants.
Créer des tableaux de présence/absence (codées 1 et 0),
des tableaux disjonctifs complets (avec plusieurs modalités pour chaque
variable, chaque individu n’étant représenté que dans une modalité

* Pour les variables quantitatives continues :


1. on peut les conserver telles quelles ;
2. lorsqu’il y a de grandes différences entre unités des variables, on peut
remplacer chaque mesure en la divisant par une quantité (valeur maximale,
moyenne, écart-type de la variable) ;
3. lorsque les échelles de mesure diffèrent, on peut retrancher la moyenne et diviser
par l’écart-type: On obtient des valeurs centrées réduites;
4. on peut également recoder les mesures en classes

Les techniques utilisées ne conduisent pas au même résultat et


dépendent de la nature des données.
Exemple de méthodes d’analyses multivariées
Analyses à un tableau

-ACP (ou PCA)


-Hill et Smith
-AFC (ou CA – dudicoa)
-PcoA (ou PCO)
-…
ACP
Analyse en composantes principales
ACP (Analyse en Composantes Principales)
Données multivariées
Nombreuses variables
(dont certaines corrélées)

Var
(T°, Azote,phosphates…)

sites 4,56

Données quantitatives
ACP (Analyse en Composantes Principales)
Données multivariées
Nombreuses variables
(dont certaines corrélées)

Var Var
(T°, Azote,phosphates…) (longueur_aile, masse…)

ou
sites 4,56 sp 9,02

Données quantitatives

Explorer le jeu de données:


visualiser l’information, voir quelles variables sont corrélées…

Projeter sur un plan le tableau de données à p* dimensions


L’objectif est de représenter sous forme graphique l’essentiel de
l’information contenue dans le tableau de données quantitatif.
mais…

*p= nombre de variables


Problème de visualisation d’une image multidimensionnelle !

p Var
Le tableau de données ayant p variables, les
individus (sites ou sp dans nos exemples) se
trouvent dans un espace à p dimensions. * *
n ind * * *
*
Quand deux dimensions (ex: largeur et
longueur), facile de représenter les données
sur un plan :

* Avec trois dimensions (largeur,


* hauteur et profondeur): plus
* * * difficile :
*
* *
* * * Au delà de 3 dimensions,
* impossible de représenter les
données sur un plan ou même
de les visualiser mentalement.
?
Problème de visualisation d’une image multidimensionnelle !

p Var
Le tableau de données ayant p variables, les
individus (sites ou sp dans nos exemples) se
trouvent dans un espace à p dimensions. * *
n ind * * *
*

L’ACP (Analyse descriptive)


propose un point de vue permettant de voir au mieux les
individus d’un tableau (sites ou sp dans nos exemples)

L’objectif est d’obtenir de “bonnes photos”


– Bonnes: fidèle, i.e. étalement maximal
– Photos: 2D, i.e. réduction de dimensions
Selon le point de vue, l’information retenue ne sera pas la même.
ACP (Analyse en Composantes Principales)
Données multivariées
Nombreuses variables
(dont certaines corrélées)

Var
(T°, Azote,phosphates…)

sites 4,56

p
ACP (Analyse en Composantes Principales)
Données multivariées
Nombreuses variables
(dont certaines corrélées)

Var
(T°, Azote,phosphates…)

sites 4,56

p
4,5 3 15 19………………..
6 7 26 7…………………
………………………………..
n ……………………………….. n observations effectuées sur

p variables numériques
potentiellement corrélées
ACP (Analyse en Composantes Principales)
Données multivariées
Nombreuses variables
(dont certaines corrélées)

Var
(T°, Azote,phosphates…)

sites 4,56

p
4,5 3 15 19………………..
6 7 26 7………………… Résume un ensemble de
………………………………..
n ……………………………….. n observations effectuées sur

p variables numériques
potentiellement corrélées
k
en un ensemble de
k facteurs non-corrélés
n
(composantes principales-axes)
ACP (Analyse en Composantes Principales)

p Var.env
pH CaCo3 ……..etc

n sites

* * *
(xi,yi) * *
* (xi,yi,zi,wi….)
* * *
*
* *

Nuage de points dans un Nuage de points dans un


espace à 2 dimensions espace à p dimensions
ACP (Analyse en Composantes Principales)

* * *

* *
*
G
* *
*
*

* *

G : barycentre du nuage
Axe 1 = axe d’allongement maximal du nuage (première composante principale)

* * *

* *
*
G
* *
*
*

* *

G : barycentre du nuage
Axe 1 = axe d’allongement maximal du nuage (première composante principale)
Axe qui porte le maximum d’inertie c’est à dire qui explique la plus grande part de variance
La méthode consiste à définir la première droite D1 de façon à maximiser les carrés des
distances de projection des points sur la droite

Objectif: minimiser la
distance à l’axe
* * *

* *
*
G
* *
*
*

* * Objectif: maximiser la
somme des inerties
(variance) projetées

G : barycentre du nuage
Axe 2 = axe perpendiculaire à Axe 1

Axe 2
Axe 1
* * *

* *
* *
* * *
*

* *
*
G*
*
*
* *

G : barycentre du nuage
Rotation
Plan principal

Axe 2

Axe 1
G
*
*
*
Rotation
Plan principal

Axe 2

Axe 1
G
*
*
*
Rotation
Plan principal

Axe 2

Axe 1
G
*
*
*
ACP (Analyse en Composantes Principales)
 Une analyse telle que l’ACP ramène le nuage de points en trois,
quatre ou n dimensions à un plan en 2 dimensions.
ACP (Analyse en Composantes Principales)
 Une analyse telle que l’ACP ramène le nuage de points en trois,
quatre ou n dimensions à un plan en 2 dimensions.

 Mais les axes choisis ne correspondent pas à l’une ou l’autre des


variables mais sont des axes virtuels, issus de combinaisons entre
les variables et calculés pour passer le plus près possible de tous
les points du nuage. Chaque point est projeté sur ce plan. Le cumul
des distances de chacun des points par rapport au plan ainsi
déterminé correspond au volume d’informations perdues.
ACP (Analyse en Composantes Principales)
 Une analyse telle que l’ACP ramène le nuage de points en trois,
quatre ou n dimensions à un plan en 2 dimensions.

 Mais les axes choisis ne correspondent pas à l’une ou l’autre des


variables mais sont des axes virtuels, issus de combinaisons entre
les variables et calculés pour passer le plus près possible de tous
les points du nuage. Chaque point est projeté sur ce plan. Le cumul
des distances de chacun des points par rapport au plan ainsi
déterminé correspond au volume d’informations perdues.

 Un ensemble d’indicateurs permet de déterminer ce niveau


d’information manquante et de décider de la pertinence ou non des
résultats obtenus et de la nécessité d’approfondir l’analyse
ACP (Analyse en Composantes Principales)
 Une analyse telle que l’ACP ramène le nuage de points en trois,
quatre ou n dimensions à un plan en 2 dimensions.

 Mais les axes choisis ne correspondent pas à l’une ou l’autre des


variables mais sont des axes virtuels, issus de combinaisons entre
les variables et calculés pour passer le plus près possible de tous
les points du nuage. Chaque point est projeté sur ce plan. Le cumul
des distances de chacun des points par rapport au plan ainsi
déterminé correspond au volume d’informations perdues.

 Un ensemble d’indicateurs permet de déterminer ce niveau


d’information manquante et de décider de la pertinence ou non des
résultats obtenus et de la nécessité d’approfondir l’analyse

 Ainsi, si les deux premiers axes d’une ACP ne fournissent pas une
partie écrasante de l’information, il convient de s’intéresser à
l’information complémentaire fournie par le troisième axe. On peut
visualiser le plan formé par les axes 1 et 3 et celui par les axes 2 et
3. On peut aussi lire dans le tableau les coordonnées des différents
points pour les différents axes, afin de repérer les éventuels écarts
importants (deux points côte-à-côte sur le plan principal peuvent être très
éloignés en réalité).
ACP (Analyse en Composantes Principales)
p Variables "corrélées"

k Axes : variables indépendantes les unes des autres (donc "non corrélées").
Ces nouvelles variables sont nommées « composantes principales »
(comb. linéaires des p var. d’origine)
• Ces k composantes capturent le maximum de variation dans les observations
• Axe1 est la direction de variance maximale dans le nuage de points p-dimensionnel
* Axe2 est dans la direction de plus grande variance après PC1, avec la contrainte
que la covariance entre PC1 et PC2 est nulle;…

Axe 2 = PC2= Composante principale 2

Axe 1
= PC1= Composante principale 1
ACP (Analyse en Composantes Principales)

 L'ACP est majoritairement utilisée pour:


 décrire et visualiser des données
 les décorréler ; dans la nouvelle base, constituée des
nouveaux axes, les variables ont une corrélation nulle
 les débruiter en considérant que les axes que l'on décide
d'oublier sont des axes bruités.

 La puissance de l'ACP est qu'elle sait aussi prendre en


compte des données de nature hétérogène
(ex: dans différents pays du monde: PNB par habitant, taux
d'alphabétisation, taux d'équipement en tél.portables, etc...)

Elle permet d'avoir une intuition rapide des effets


conjoints entre ces variables.
ACP
Analyse en composantes principales
…..en pratique
ACP : exemple sur données météo

 Données météorologiques lors de relevés vigie-


chiro (programme national de suivi des chiroptères –
Vigie-Nature)

 Consignes / critères météorologiques lors des


relevés

 Quelle distribution des données météo ? Quelles


corrélations entre variables météo ? Une
structuration particulière de ces données ? Des
relevés lors de conditions « aberrantes » ?
meteo<-read.table ("meteo.txt", h=T, row.names=1)

edit(meteo)
dim(meteo)
meteo<-read.table ("meteo.txt", h=T, row.names=1)

edit(meteo)
dim(meteo)
boxplot(meteo)
summary(meteo)

Temp Vent CouvNuag Humidite TempDiff


Min. : 6.00 Min. :0.00 Min. :1.00 Min. :33.00 Min. :-10.4500
1st Qu.:14.61 1st Qu.:0.00 1st Qu.:1.00 1st Qu.:61.00 1st Qu.: -2.1625
Median :17.23 Median :1.00 Median :2.00 Median :73.00 Median : -0.0750
Mean :17.44 Mean :1.34 Mean :2.04 Mean :71.93 Mean : 0.3179
3rd Qu.:20.00 3rd Qu.:1.00 3rd Qu.:2.00 3rd Qu.:83.00 3rd Qu.: 2.2625
Max. :29.45 Max. :4.00 Max. :4.00 Max. :97.00 Max. : 19.0500
meteo<-read.table ("meteo.txt", h=T, row.names=1)

edit(meteo)
dim(meteo)
boxplot(meteo)
summary(meteo)
cor(meteo)

Temp Vent CouvNuag Humidite TempDiff


Min. : 6.00 Min. :0.00 Min. :1.00 Min. :33.00 Min. :-10.4500
1st Qu.:14.61 1st Qu.:0.00 1st Qu.:1.00 1st Qu.:61.00 1st Qu.: -2.1625
Median :17.23 Median :1.00 Median :2.00 Median :73.00 Median : -0.0750
Mean :17.44 Mean :1.34 Mean :2.04 Mean :71.93 Mean : 0.3179
3rd Qu.:20.00 3rd Qu.:1.00 3rd Qu.:2.00 3rd Qu.:83.00 3rd Qu.: 2.2625
Max. :29.45 Max. :4.00 Max. :4.00 Max. :97.00 Max. : 19.0500

Temp Vent CouvNuag Humidite TempDiff


Temp 1.00000000 0.02391030 -0.03739593 -0.21930895 0.72580989
Vent 0.02391030 1.00000000 0.23265173 -0.01235324 0.05511416
CouvNuag -0.03739593 0.23265173 1.00000000 0.23437093 0.01011513
Humidite -0.21930895 -0.01235324 0.23437093 1.00000000 -0.09983317
TempDiff 0.72580989 0.05511416 0.01011513 -0.09983317 1.00000000
ACP (= pca)
library(ade4)
?dudi.pca
dudi.pca(df, row.w = rep(1, nrow(df))/nrow(df), col.w = rep(1, ncol(df)), center = TRUE, scale =
TRUE, scannf = TRUE, nf = 2)
center : centera logical or numeric value, centring option if TRUE, centring by the mean, if FALSE no centring
scale a logical value indicating whether the column vectors should be normed for the row.w weighting
ACP (= pca)
library(ade4)
?dudi.pca
dudi.pca(df, row.w = rep(1, nrow(df))/nrow(df), col.w = rep(1, ncol(df)), center = TRUE, scale =
TRUE, scannf = TRUE, nf = 2)
center : centera logical or numeric value, centring option if TRUE, centring by the mean, if FALSE no centring
scale a logical value indicating whether the column vectors should be normed for the row.w weighting

# ACP normée (centrée-réduite)


Centrée : enlever la moyenne à chaque variable.
et réduite : diviser les valeurs par l'écart-type.

L’importance que prendront les variables dans le calcul des composantes


principales est fonction de leur ordre de grandeur:
Une variable ayant un écart-type important aura plus de poids qu’une
variable de faible écart-type.
Des variables de fort écart-type "construiront" les premières composantes.
Les calculs ne sont pas faux, mais la lecture des résultats d’une ACP peut
devenir compliquée. C’est pour remédier à ça qu’il convient en général de
centrer et réduire les variables (en le précisant dans la ligne de commande)

Attention, surtout ne pas normaliser pour des données déjà homogènes


(ex:fréquences)
ACP (= pca)

acpmeteo <- dudi.pca(meteo, center=TRUE, scale=TRUE)

# ouverture d’une fenêtre graphique : décomposition de l’inertie entre les


différents axes (autant d’axes que de variables)
number of axes: ?

Comment choisir le nombre d’axes (composantes principales) ?

Inertie

1. On prend autant d’axes qu’il faut pour


expliquer 70% de la variance totale (inertie
totale)

2. On ne prend que les axes


correspondant à des valeurs propres > 1
Diagramme en bâton des valeurs propres

Axes
# On obtient de nombreuses informations. Que veulent-elles dire ?
acpmeteo
Select the number of axes: 3
Duality diagramm
class: pca dudi
$call: dudi.pca(df = meteo, center = TRUE, scale = TRUE, scannf = TRUE, nf = 2)
$nf: 3 axis-components saved
$rank: 5
eigen values: 1.801 1.312 0.9632 0.6606 0.2633
vector length mode content
1 $cw 5 numeric column weights
2 $lw 400 numeric row weights
3 $eig 5 numeric eigen values
data.frame nrow ncol content
1 $tab 400 5 modified array
2 $li 400 3 row coordinates
3 $l1 400 3 row normed scores
4 $co 5 3 column coordinates
5 $c1 5 3 column normed scores
other elements: cent norm
names(acpmeteo)
[1] "tab" "cw" "lw" "eig" "rank" "nf" "c1" "li" "co" "l1" "call" "cent" "norm
head(acpmeteo$tab)
head(acpmeteo$cw) ….etc
names(acpmeteo)
[1] "tab" "cw" "lw" "eig" "rank" "nf" "c1" "li" "co" "l1" "call" "cent" "norm

# Données importantes : Les « valeurs propres » des axes (eigen values)

eig: valeurs propres (eigen values) = fraction de l'inertie (variance) totale prise en
compte par chaque axe ( !!! sur le graphique, on exprime en % inertie)

acpmeteo$eig
1.8013073 1.3115447 0.9631864 0.6606342 0.2633273

# puis en pourcentage et en pourcentage cumulé


pve <- 100 * acpmeteo$eig/sum(acpmeteo$eig)
[1] 36.026147 26.230894 19.263728 13.212685 5.266546
cumsum(pve)
[1] 36.02615 62.25704 81.52077 94.73345 100.00

Dans notre exemple, le premier axe factoriel extrait 36.1 % de l'inertie totale, le
deuxième axe factoriel 26.2 % de l'inertie totale. Le premier plan factoriel représente
donc 62.3 % de l'inertie initiale. Ceci signifie que lorsque nous projetons le nuage de
points initial sur le plan defini par les deux premiers axes factoriels, nous avons
perdu de l’information (mais 62 % : déjà très bien).
# Coordonnées des variables et des sites sur les différents axes

co: coordonnées des variables (colonnes) sur les différents axes


c1: coordonnées des variables (colonnes) sur les différents axes (normed scores)
li: coordonnées des individus (lignes, sites) sur les différents axes
l1: coordonnées des individus (lignes, sites) sur les différents axes (normed
scores)
= composante = composante
acpmeteo$c0 principale 1 = axe 1 principale 2 = axe 2
Comp1 Comp2 Comp3
Temp 0.91703365 -0.08902988 -0.13015994
Vent 0.05574027 -0.62928015 0.67059229
CouvNuag -0.13264367 -0.81099649 -0.07584793
Humidite -0.40061179 -0.45903897 -0.66501818
TempDiff 0.88270352 -0.19797171 -0.22033765

acpmeteo$c1
acpmeteo$li
acpmeteo$l1

# On peut les récupérer, les coller (cbind) puis les écrire dans un fichier .csv (write.csv) pour
les manipuler par exemple sous excel (mettre au carré, puis ordonner pour trouver celles
qui contribuent le plus…), même principe pour c0,c1,li,l1
sortie<- acpmeteo$li
write.csv(sortie, ‘sortie_coord_ind.csv’)
# Données dont on se sert assez peu:

tab: données du tableau initial après centrage et réduction.


cw: poids des colonnes (column weight) = poids des variables.
Par defaut, chaque variable a un poids de 1.
lw: poids des lignes (line weight) = poids des individus.
Par defaut, chaque individu a un poids de 1/n

rank: rang de la matrice diagonalisée = nombre de variables indépendantes.


nf: nombre de facteurs conserves dans l'analyse
call: trace de la façon dont ont été conduits les calculs lors de
l'appel de la fonction dudi.pca() – ligne de commande mémorisée
cent: moyennes (cent pour centrage) des variables analysées :
norm: écarts-types (sur √n ) des variables analysées
Représentations graphiques dans ade4

1. Représentation des individus

La fonction s.label() permet de representer les individus sur les différents


plans factoriels, par exemple sur le premier plan factoriel :

s.label(acpmeteo$li, xax = 1, yax = 2)


s.label(acpmeteo$li)
s.label (acpmeteo$li, plabels.cex=0.5)
1. Représentation des individus

La fonction s.label() permet de representer les individus sur les différents


plans factoriels, par exemple sur le premier plan factoriel :

s.label(acpmeteo$li, xax = 1, yax = 2,


label=0)
(old version : s.label(acpmeteo$li, clab=0)

Exercice. Faire les représentations dans les plans


(1,2), (1,3) et (2,3) avec une échelle commune
pour tous les graphiques
1. Représentation des individus

Quels sont les points qui nous intéressent ?

 Les points les plus intéressants sont généralement ceux qui sont
assez proches d'un des axes, et assez loin de l'origine. Ces points sont
bien corrélés avec cet axe et sont les points explicatifs pour l'axe : Ce
sont les points les plus “parlants” ; leur “vraie distance” de l'origine
est bien représentée sur le plan factoriel.

 La corrélation de chaque point sur un axe exprime la qualité de


représentation du point sur l'axe. Elle prend des valeurs entre 0 (pas
corrélé du tout) et 1 (fortement corrélé). Si cette valeur est proche de
1, alors le point est bien représenté sur l'axe.

 Les points situés près du centre sont donc généralement mal


représentés par le plan factoriel. Leur interprétation ne peut donc pas
être effectuée avec confiance.
1. Représentation des individus

Comment interpréter les proximités ?

 On s’intéresse donc essentiellement aux points bien représentés (i.e.


situés loin du centre). Si deux points sont proches l'un de l'autre, il
est probable que les réponses des individus qu'ils représentent soient
très similaires.

 Il faut cependant se méfier :

 Il se peut que sur un axe ils soient très proches, alors que sur un
autre ils seront très loin l'un de l'autre. Il faut donc les regarder par
rapport à tous les axes qui ont été retenus pour l'analyse. S'ils sont
bien corrélés avec l'axe qui les montre proches, alors, on peut
conclure qu’ils sont vraiment proches.
2. Représentation des variables

La fonction s.corcircle() représente les variables initiales dans le nouvel


espace. Cette représentation est appelée cercle des corrélations :

s.corcircle(acpmeteo$co, xax = 1, yax = 2)


2. Représentation des variables

 Dans l’exemple, nous pouvons constater que les


points “Temp”, “TempDiff” sont très proches
du cercle de corrélation et donc très bien
représentés sur le mapping.

 L’angle plutôt fermé (en partant de l’origine)


que forment les points “Temp”, “TempDiff”
indique que ces 2 variables sont bien corrélées
entre elles. En revanche, l’angle quasi droit
formé par “Temp” et “CouvNuag” indique que
ces deux variables sont indépendantes entre
elles.
2. Représentation des variables

 Dans l’exemple, nous pouvons constater que les


points “Temp”, “TempDiff” sont très proches
du cercle de corrélation et donc très bien
représentés sur le mapping.

 L’angle plutôt fermé (en partant de l’origine)


que forment les points “Temp”, “TempDiff”
indique que ces 2 variables sont bien corrélées
entre elles. En revanche, l’angle quasi droit
formé par “Temp” et “CouvNuag” indique que
ces deux variables sont indépendantes entre
elles.

 Le fait que “Temp” soit proche de l’axe 1


indique qu’il est très bien représenté par cet
axe. Comme il est très éloigné de l’axe 2, on
peut conclure qu’il est peu représenté par cet
axe.

 En ce qui concerne l’axe 2, le point “CouvNuag”


est très bien corrélé avec l’axe. Le point “Vent”
l’est également mais dans une moindre mesure.
2. Représentation des variables

Est-ce qu'on peut donner un sens “réel” aux axes du


mapping ?

Les axes factoriels sont des axes virtuels issus d’une


synthèse entre les variables de l'analyse. Ils n'ont
pas nécessairement un sens précis même si on peut
souvent leur trouver un sens en s’aidant notamment
de la représentation des variables sur le cercle de
corrélation.

(Rappelons que la représentation de ce cercle et des variables sur


le mapping de l’ACP se fait sur une échelle arbitraire, ce qui
implique que la proximité des points variables par rapport aux points
individus n’a absolument aucun sens.)
Sous R, dans package FactoMineR, on peut faire un test statistique pour
déterminer quelles variables participent aux axes
dimdesc sous R

Exemple :

> dimdesc(resHOC.acp)
$Dim.1
correlation P-value
C31 0.9945125 6.959405e-38

C57 0.5007367 1.167711e-03
$Dim.2
correlation P-value
C14 0.9449266 1.549951e-19
C58 0.8884877 4.435173e-14
C24 0.7526624 3.269133e-08
$Dim.3
correlation P-value
C49 0.9142193 4.327578e-16
C2 -0.3246164 4.377473e-02
3. Représentation simultanée des individus et des variables

scatter(acpmeteo)
s.label (acpmeteo$li,label=0.5)
s.label (acpmeteo$co*5, add=TRUE)

Voir aussi: s.arrow, s.class


Old versions ade4
s.label (acpmeteo$li,clab=0.5)
s.label (acpmeteo$co*5, add.plot=TRUE)
Analyses multivariées en quelques clics !

library(ade4)
library(ade4TkGUI)
ade4TkGUI (TRUE)
Analyses sur un tableau

ACP (PCA)
(dudi.pca)
Nom de fichier d’entrée
(attention, quand import dans R,
préciser : h=T, row.names=1)

Nom de fichier de sortie de


l’acp
(attention, pas pca car risque
de confusion de la fonction et
du nom de fichier… bugg !)
Nom du tableau sur lequel est faite l’analyse (data)
PCA (=ACP) Nom du fichier de sortie (ex: acpmeteo…)
Autres analyses sur un tableau
AFC, Hill Smith, PcoA…
AFC
Analyse factorielle des correspondances
Autres analyses sur un tableau
var

Sites
(ou sp
ou indiv)
ACP
(dudi.pca)
var

Quantitatif

AFC
(dudi.coa)
var

Pa, abce,
contingence
Autres analyses sur un tableau

AFC
(dudi.coa)
var

Pa, abce,
contingence
AFC (analyse factorielle des correspondances)
Différences entre ACP et AFC:

- ACP n’est pas une analyse symétrique: on cherche plutôt à savoir comment se
répartissent les lignes en fonction des colonnes (ex: rel / var meteo)
- AFC est une analyse symétrique: elle ne tient pas compte de la structure en ligne ou
en colonne du tableau. Elle est plutôt réservée à l’analyse de table de contingence

sp

sites
AFC (analyse factorielle des correspondances)
Différences entre ACP et AFC:

- ACP n’est pas une analyse symétrique: on cherche plutôt à savoir comment se
répartissent les lignes en fonction des colonnes (ex: rel / var meteo)
- AFC est une analyse symétrique: elle ne tient pas compte de la structure en ligne ou
en colonne du tableau. Elle est plutôt réservée à l’analyse de table de contingence.

- Le critère de maximisation pour les axes est le chi2, écart à l’indépendance entre les
lignes et les colonnes. C’est la représentation graphique associée au chi2. Ici, on ne teste
plus, mais on décrit plutôt la relation éventuelle entre les lignes et les colonnes.

- Les axes de l’AFC maximisent la séparation des espèces par les sites et en même
temps la séparation des sites par les espèces
sites
sp

sites
sp sites
Autres analyses sur un tableau
var

Sites
(ou sp
ou indiv)
Analyse de Hill smith
ACP
(dudi.pca) var
var
Quantitatif
Qualitatif
Quantitatif

AFC
(dudi.coa)
var

Pa, abce,
contingence
Autres analyses sur un tableau

Analyse de Hill smith


(dudi.mix)

var

Quantitatif
Qualitatif
Autres analyses sur un tableau
var

Sites Quantitatif
(ou sp Qualitatif
ou indiv)
Analyse de Hill smith
ACP

PCO (=PCoA)**
Sur matrice de distance !!!
AFC
Sites*

Sites* Dissimilarité

* Le plus souvent, mais en théorie possible de comparer autres choses…


** voir aussi NMDS: Non-metric multidimensional scaling
Autres analyses sur un tableau

Ex: Certains sites sont-ils plus proches les uns


des autres en terme de composition faunistique
ou floristique (identité des sp), c’est-à-dire se
ressemblent-ils plus entre eux ?

principal coordinates
analysis

PCO (=PCoA)
Sur matrice de distance !!!

Sites*

Sites* Dissimilarité

Donc construire la matrice de distance avant !


(cf cours précédents : library(vegan), vegdist ou dist…, puis as.dist !)
Var.env (T°, …)
-ACP (Analyse en composantes principales = PCA)
Analyse non symétrique (individus/variables), sites 4,56
majoritairement données quantitatives

Var.env (T°, haie…)


-Analyse mixte de Hill et Smith
sites 4,56
Analyse non symétrique (individus/variables), V/J/B
données quantitatives et qualitatives

sp
-AFC (Analyse factorielle des correspondances = CA – dudicoa)
Analyse symétrique, données de présence/absence ou sites 0/1
abondances, tables de contingence. (souvent bcp de « 0 ») 57

sites
-PCO (Analyse en coordonnées principales= PcoA)
Indice
- tableaux (=matrice) : Distances (dissimilarités) sites De dis-
similarité
Exemples

PCA (=ACP)

Jeux de données :
(meteo.txt)

HabitatCLCBuf150.txt
HabitatCLCBuf150Sans211
Exemple
Caractérisation paysagère (en terme habitats) de sites
Codes

Sites
Exemple
Caractérisation paysagère (en terme habitats) de sites
Codes

Sites
Exemple
Caractérisation paysagère (en terme habitats) de sites
Codes

Sites
Codes numériques
CORINE land cover
Caractérisation paysagère (en terme habitats) de sites

Hab<-read.table(‘HabitatCLCBuf150.txt’,h=T,row.names=1)
Nom du fichier « data » à analyser
Nom du fichier de sortie de l’analyse
Terres arables

Vegetation arbustive
et herbacée

Forêts

Prairies
Analyse sans l’habitat 211
Zone
agricoles
hetérogènes

Vegetation arbustive
et herbacée

L231:prairies
L242 & 243: Z. agri.hetero

L321:pelouses
L322:landes
L323:veg. sclerophylle

L333:veg.clairsemée
Analyse sans l’habitat 211

Forêts de conifères

Forêts de feuillus

Tissu urbain
discontinu
COA (=AFC)
Jeux de données :
aranstationspAb.txt
aran<-read.table('aranstationspAb.txt',h=T,row.names=1)
aranstationspAb.txt

Espèces

station Agycon Alocun Alopul Arcleo Argsub

Station H1 0 0 1 0 0

H2 0 0 59 0 0
H : avec haie S1 0 0 6 0 1

S2 0 1 17 0 10

S3 1 14 16 0 11

H3 0 1 1 0 7
Effectifs collectés
S4 0 1 2 0 0

H4 0 9 6 0 0

H5 0 14 5 0 6

S : sans haie S5 0 20 0 0 14

S6 0 0 17 0 2

S7 0 0 3 0 0
Espèces
Station
Représentations: s.label, s.arrow…voir aussi s.class
s.label(afc_aran$li)

haie<-read.table('aranstationspAb_haie.txt',h=T,row.names=1)
s.class(afc_aran$li,haie[,1])

sous-entendu
colonne n°1 du fichier haie
Avec bien sûr ordre(labels) des
entêtes de lignes identiques
dans les deux fichiers

s.class(afc_aran$li,haie[,1],
chullSize = 1)
Hill smith
Jeux de données :
CaractAutoroute.txt
Graphisme:
Pour plus d’infos sur les options « graphiques »:
 https://cran.r-project.org/web/packages/adegraphics/adegraphics.pdf
 library(ade4graphics)

 http://www.sthda.com/french/articles/38-methodes-des-composantes-principales-
dans-r-guide-pratique/80-acp-dans-r-avec-ade4-scripts-faciles/
 library(factoextra)