You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
L'Analyse Factorielle Multiple (AFM) est une méthode statistique exploratoire qui permet de travailler avec plusieurs tableaux de données. Cette méthode permet également de faire le lien entre l'analyse en composantes principales (ACP) et l'Analyse factorielle des correspondances (AFC). La première méthode permet de travailler uniquement sur des variables quantitatives et la seconde uniquement sur des variables qualitatives. L'AFM est capable de traiter les deux types de variables simultanément. Cette méthode est par exemple employée en écologie. Sur une station un ensemble de mesures physico-chimiques peuvent être réalisée ainsi qu'un relevé de la faune et/ou de la flore.
31
+
L'Analyse Factorielle Multiple (AFM) est une méthode statistique exploratoire qui permet de travailler avec plusieurs tableaux de données. Cette méthode permet également de faire le lien entre l'analyse en composantes principales (ACP) et l'Analyse factorielle des correspondances (AFC). La première méthode permet de travailler uniquement sur des variables quantitatives et la seconde uniquement sur des variables qualitatives. L'AFM est capable de traiter les deux types de variables simultanément. Cette méthode est par exemple employée en écologie. Sur une station un ensemble de mesures physico-chimiques peuvent être réalisées ainsi qu'un relevé de la faune et/ou de la flore.
32
32
33
33
Il est donc utile de comprendre la logique et l'usage de cette analyse. Ce tutoriel vous permettra de :
34
34
35
35
- Réaliser de manière guidée une AFM
36
36
37
-
- Effectuer les graphiques associées à cette analyse
37
+
- Effectuer les graphiques liés à cette analyse
38
38
39
39
- Vous préparer à interpréter par vous-même les résultats de vos AFM
40
40
41
-
Avant toute chose, assurez vous d'avoir bien compris le contenu de la [section 8.1](https://wp.sciviews.org/sdd-umons2/?iframe=wp.sciviews.org/sdd-umons2-2022/analyse-factorielle-multiple-afm.html) du cours de SDD II.
41
+
Avant toute chose, assurez vous d'avoir bien compris le contenu de la [section 8.1](https://wp.sciviews.org/sdd-umons2/?iframe=wp.sciviews.org/sdd-umons2-2023/analyse-factorielle-multiple-afm.html) du cours de SDD II.
42
42
43
43
## Étude de composition floristique
44
44
@@ -65,36 +65,36 @@ Les 24 sites sélectionnés pour cette étude sont situés dans le nord de la Fi
65
65
|**Humdepth**| épaisseur de la couche d'humus | cm |
66
66
|**pH**| pH du sol |\-|
67
67
68
-
Ces données sont disponible depuis `varechem` dans le package {vegan} et nous en réaliserons un tableau nommé `envir`.
68
+
Ces données sont disponibles depuis `varechem` dans le package {vegan} et nous en réaliserons un tableau nommé `envir`.
69
69
70
70
```{r, echo=TRUE}
71
71
read("varechem", package = "vegan") %>.%
72
-
srename(., station = .rownames) %->%
72
+
srename(., station = .rownames) ->
73
73
envir
74
74
head(envir)
75
75
```
76
76
77
-
Les scientifiques ont également réalisé un relevé floristique (en excluant *Pinus sylvestris* du relevé). On y observe une couverture en pourcentage pour chaque station de chacune des 44 espèces étudiées. Ces données sont également disponible depuis `varespec` dans le package {vegan} que nous lirons dans la variable `spec`.
77
+
Les scientifiques ont également réalisé un relevé floristique (en excluant *Pinus sylvestris* du relevé). On y observe une couverture en pourcentage pour chaque station de chacune des 44 espèces étudiées. Ces données sont disponibles depuis `varespec` dans le package {vegan} que nous lirons dans la variable `spec`.
78
78
79
79
```{r, echo=TRUE}
80
80
read("varespec", package = "vegan") %>.%
81
-
srename(., station = .rownames) %->%
81
+
srename(., station = .rownames) ->
82
82
spec
83
83
head(spec)
84
84
```
85
85
86
-
Les données mises à disposition proviennent de l'étude suivante [Väre, H., Ohtonen, R. and Oksanen, J. (1995) Effects of reindeer grazing on understorey vegetation in dry Pinus sylvestris forests. Journal of Vegetation Science 6, 523--530](https://www.researchgate.net/publication/227830523_Effects_of_reindeer_grazing_on_vegetation_in_dry_Pinus_sylvestris_forests).
86
+
Les données mises à disposition proviennent de l'étude suivante [Väre, H., Ohtonen, R. and Oksanen, J. (1995) Effects of reindeer grazing on understorey vegetation in dry *Pinus sylvestris* forests. Journal of Vegetation Science 6, 523--530](https://www.researchgate.net/publication/227830523_Effects_of_reindeer_grazing_on_vegetation_in_dry_Pinus_sylvestris_forests).
87
87
88
88
## Préparation du tableau de données
89
89
90
90
La première étape consiste dans la réalisation d'un tableau de données unique. Vous allez donc combiner le tableau `envir` avec le tableau `spec` en un seul objet nommé `vare` en spécifiant la colonne similaire entre ces deux tableaux qui est la variable `station` et qui servira de point de référence à la fusion. Affichez ensuite les premières lignes du tableau `vare` avec la fonction `head()`.
91
91
92
92
```{r join}
93
93
read("varechem", package = "vegan") %>.%
94
-
srename(., station = .rownames) %->%
94
+
srename(., station = .rownames) ->
95
95
envir
96
96
read("varespec", package = "vegan") %>.%
97
-
srename(., station = .rownames) %->%
97
+
srename(., station = .rownames) ->
98
98
spec
99
99
```
100
100
@@ -124,10 +124,10 @@ Il va encore falloir convertir la variable `station` en nom de ligne grâce à l
124
124
125
125
```{r rowname}
126
126
read("varechem", package = "vegan") %>.%
127
-
srename(., station = .rownames) %->%
127
+
srename(., station = .rownames) ->
128
128
envir
129
129
read("varespec", package = "vegan") %>.%
130
-
srename(., station = .rownames) %->%
130
+
srename(., station = .rownames) ->
131
131
spec
132
132
133
133
vare <- sleft_join(envir , spec, by = "station")
@@ -155,7 +155,7 @@ rownames(vare)
155
155
```
156
156
157
157
```{r rowname_h2-check}
158
-
grade_code("Bravo ! Vous venez de convertir la colonne station en nom de lignes. Cette astuce peut être utile dans certain cas. Il y a également la fonction opposée `rownames_to_column()`. Tout est prêt pour réaliser l'AFM à présent.")
158
+
grade_code("Bravo ! Vous venez de convertir la colonne station en nom de lignes. Cette astuce peut être utile dans certain cas. Il y a également la fonction inverse `rownames_to_column()`. Tout est prêt pour réaliser l'AFM à présent.")
159
159
```
160
160
161
161
## Réalisation de l'AFM
@@ -164,28 +164,28 @@ L'AFM peut s'obtenir grâce à la fonction `mfa()`. Cette dernière requiert l'u
164
164
165
165
1. Le nombre **n** de colonnes constituant le groupe
166
166
2. Le type des variables qui composent le groupe. Vous avez quatre possibilités :
167
-
- **std** : Ce sont des variables quantitatives que l'on souhaite standardiser et les traiter par une ACP.
167
+
-**std** : variables quantitatives que l'on souhaite standardiser et traiter par une ACP
168
168
169
-
- **num** : Ce sont des variables quantitatives continues que l'on ne souhaite pas standardiser et les traiter par une ACP.
169
+
-**num** : variables quantitatives continues que l'on ne souhaite traiter par une ACP sans les standardiser
170
170
171
-
- **fact** : Ce sont des variables qualitatives facteurs associées à des tableaux de contingences qu'on traite par une AFC.
171
+
-**fact** : variables qualitatives facteurs associées à des tableaux de contingences qu'on traite par une AFC
172
172
173
-
- **cnt** : Ce sont des variables quantitatives de type dénombrements qu'on traite par une AFC.
173
+
-**cnt** : variables quantitatives de type dénombrements qu'on traite par une AFC
174
174
3. Le nom à donner au groupe
175
175
176
176
Le tableau `vare` est composé de quatorze variables associées à des mesures physico-chimiques et 44 variables liées à des relevés floristiques. Votre formule doit comprendre les éléments suivants pour que votre analyse soit la plus proche possible de celle que les auteurs ont réalisée dans la publication :
177
177
178
178
- Le premier bloc doit se nommer **physico**, être traité par une ACP et les variables doivent être standardisées.
179
179
- Le second bloc doit se nommer **flore**, être traité par une ACP et les variables ne doivent pas être standardisées.
180
180
181
-
Réalisez l'AFM demandée en utilisant le tableau `vare` puis affichez un résume de l'objet `vare_mfa` obtenu avec la fonction `summary()`
181
+
Réalisez l'AFM demandée en utilisant le tableau `vare` puis affichez un résumé de l'objet `vare_mfa` obtenu avec la fonction `summary()`
182
182
183
183
```{r varemfa}
184
184
read("varechem", package = "vegan") %>.%
185
-
srename(., station = .rownames) %->%
185
+
srename(., station = .rownames) ->
186
186
envir
187
187
read("varespec", package = "vegan") %>.%
188
-
srename(., station = .rownames) %->%
188
+
srename(., station = .rownames) ->
189
189
spec
190
190
vare <- sleft_join(envir , spec, by = "station")
191
191
vare <- column_to_rownames(vare, var = "station")
@@ -215,7 +215,7 @@ summary(vare_mfa)
215
215
```
216
216
217
217
```{r mfa_h3-check}
218
-
grade_code("Le résumé de votre analyse est complexe. Intéressez-vous tout particulièrement à la part de variance de chaque axe. Ces informations vous seront utile pour répondre à la question suivante.")
218
+
grade_code("Le résumé de votre analyse est complexe. Intéressez-vous en premier lieu à la part de variance représentée sur chaque axe. Cette information vous sera utile pour répondre à la question suivante.")
219
219
```
220
220
221
221
```{r variance_quiz}
@@ -224,21 +224,21 @@ question("Quelle est la proportion de la variance cumulée sur les deux premiers
224
224
answer("23%"),
225
225
answer("34%"),
226
226
correct = "Bien joué ! Les deux premiers axes de l'AFM expriment 58% de la variance. Gardez à l'esprit que cette valeur est assez faible. Il serait aussi intéressant de considérer les trois premiers axes qui expriment 68% de la variance totale.",
227
-
incorrect = "Oups, ce n'est pas la bonne réponse. Afin de trouver la bonne réponse, intéressez-vous au tableau `Eigenvalues`",
227
+
incorrect = "Oups, ce n'est pas la bonne réponse. Afin de trouver la bonne réponse, relisez le tableau `Eigenvalues` de votre analyse",
228
228
allow_retry = TRUE
229
229
)
230
230
```
231
231
232
232
### Graphique des éboulis
233
233
234
-
Réalisez un graphique des éboulis sur l'objet `vare_mfa` que vous avez réalisé précédemment.
234
+
Réalisez un graphique des éboulis sur l'objet `vare_mfa` que vous avez créé plus haut.
235
235
236
236
```{r vare_mfa}
237
237
read("varechem", package = "vegan") %>.%
238
-
srename(., station = .rownames) %->%
238
+
srename(., station = .rownames) ->
239
239
envir
240
240
read("varespec", package = "vegan") %>.%
241
-
srename(., station = .rownames) %->%
241
+
srename(., station = .rownames) ->
242
242
spec
243
243
244
244
vare <- sleft_join(envir , spec, by = "station")
@@ -263,7 +263,7 @@ chart$scree(vare_mfa)
263
263
```
264
264
265
265
```{r scree_h2-check}
266
-
grade_code("Ce graphique des éboulis permet de voir la part de variance exprimée sur chaque composante principale. Nous voyons bien que le premier axe reprend une très grande part de variance. On observe après un saut p pour le troisième axe est une diminution progressive de la variance exprimée sur les axes suivants.")
266
+
grade_code("Ce graphique des éboulis permet de visualiser la part de variance exprimée sur chaque composante principale. Nous voyons bien que le premier axe reprend une très grande part de variance. On observe un saut pour le troisième axe et une diminution progressive de la variance exprimée sur les axes suivants.")
grade_code("Ce graphique est assez chargé car il combine les vecteurs du groupe \"physico\" et du groupe \"flore\". Il s'analyse comme pour une ACP via la visualisation de l'importance des variables intiales dans le plan de l'AFM sous forme de vecteurs. Il est indispensable pour interpréter le graphique suivant qui répartit les observations dans le même plan. La norme (longueur) du vecteur indique si la variable est bien représentée dans ce plan ou non. Plus la norme du vecteur se rapproche de un, matérialisé par le cercle, mieux c'est. Celles aux normes trop faibles ne sont pas considérées dans l'analyse, pour ce plan-là en tous cas. Ensuite, les variables qui pointent dans la même direction sont corrélées positivement. Les variables qui pointent dans le sens opposé sont inversément corrélées. Les vecteurs orthogonaux correspondent à des variables non ou très faiblement corrélées entre elles.")
289
+
grade_code("Ce graphique est assez chargé car il combine les vecteurs du groupe \"physico\" et du groupe \"flore\". Il s'analyse comme pour une ACP via la visualisation de l'importance des variables intiales dans le plan de l'AFM sous forme de vecteurs. Il est indispensable pour interpréter le graphique suivant qui répartit les observations dans le même plan. La norme (longueur) du vecteur indique si la variable est bien représentée dans ce plan ou non. Plus la norme du vecteur se rapproche de l'unité, matérialisée par le cercle, mieux c'est. Les vecteurs aux normes trop faibles ne sont pas considérés dans l'analyse, pour ce plan-là en tous cas. Ensuite, les variables qui pointent dans la même direction sont corrélées positivement. Les variables qui pointent dans le sens opposé sont inversément corrélées. Les vecteurs orthogonaux correspondent à des variables non ou très faiblement corrélées entre elles.")
grade_code("Ce graphique est similaire au précédent. Il s'interprète de la même façon. Cependant, on ne s'intéresse plus à la projection de chaque variable initiale mais des plans des ACP pour chaque groupe de variables. La première dimension du groupe \"flore\" pointe dans la même direction que la seconde dimension du groupe \"physico\". Il y a donc un forte corrélation entre ces deux plans. On obtient le même résultat pour le premier axe de \"physico\" et du second axe de \"flore\". Les normes des vecteurs sont proche de 1 pour chacune des ACP. Les deux ACP sont représentées correctement dans l'AFM.")
312
+
grade_code("Ce graphique est similaire au précédent. Il s'interprète de la même façon. Cependant, on ne s'intéresse plus à la projection de chaque variable initiale mais des plans des ACP pour chaque groupe de variables. La première dimension du groupe \"flore\" pointe dans la même direction que la seconde dimension du groupe \"physico\". Il y a donc un forte corrélation entre ces deux plans. On obtient le même résultat pour le premier axe de \"physico\" et du second axe de \"flore\". Les normes des vecteurs sont proche de un pour chacune des ACP. Les deux ACP sont représentées correctement dans l'AFM.")
grade_code("La forme du nuage de points et surtout des clusters sont à rechercher ici. Nous pouvons voir par exemple un regroupement des stations 5, 6 et 7. On retrouve également un groupe particulier composé des stations 2, 3, 4, 9, 10, 11 et 12. Attention, les numéros des stations ne sont pas ici une indication de la proximité des stations.")
335
+
grade_code("La forme du nuage de points et la présence de différents groupes sont à observer ici. Nous pouvons voir, par exemple, un regroupement des stations 5, 6 et 7. On retrouve également un groupe particulier composé des stations 2, 3, 4, 9, 10, 11 et 12. Attention, les numéros des stations ne sont pas ici une indication de leur proximité les unes des autres.")
336
336
```
337
337
338
338
## Interprétation de l'AFM
339
339
340
-
La représentation des variables ainsi que la représentation de stations sont deux graphiques complémentaires afin d'interpréter l'AFM. Gardez à l'esprit que la part de variance exprimée par les deux premiers axes reste relativement faible avec 58%.
340
+
La représentation des variables ainsi que la représentation de stations sont deux graphiques complémentaires qui permettent d'interpréter l'AFM. Gardez à l'esprit que la part de variance exprimée par les deux premiers axes reste relativement faible avec 58%.
Les stations 2, 3, 4, 9, 10, 11 et 12 sont des stations particulières qui ne sont pas des zones de pâturages. On retrouve dans ces stations une dominance de *Cladina stellaris* alors que cet espèce est très peu présente dans les zones de pâturages. Les zones de pâturages sont caractérisée par une haute concentration en azote. Les stations 5, 6 et 7 sont des zones de pâturages avec une forte teneur en azote et une présence massive de *Cladina arbuscala*.
362
+
Les stations 2, 3, 4, 9, 10, 11 et 12 sont des stations particulières qui ne sont pas des zones de pâturages. On retrouve dans ces stations une dominance de *Cladina stellaris* alors que cette espèce est très peu présente dans les zones de pâturages. Les zones de pâturages sont caractérisées par une haute concentration en azote. Les stations 5, 6 et 7 sont des zones de pâturages avec une forte teneur en azote et une présence massive de *Cladina arbuscala*.
363
363
364
-
Nous n'irons pas plus loin dans l'interprétation de cette AFM et vous laissons la possibilité de lire la publication liée à cette étude. Les scientifiques ont réalisé une NMDS en fait, pas une AFM, mais les résultats obtenus sont assez proches.
364
+
Nous n'irons pas plus loin dans l'interprétation de cette AFM et vous laissons la possibilité de lire la publication liée à cette étude. Les scientifiques ont réalisé une NMDS en fait, pas une AFM, mais les résultats obtenus sont assez proches. Nous étudierons la MDS et la NMDS dans le module suivant du cours.
0 commit comments