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
Il existe différentes syntaxes dans R dont les 3 principales sont la syntaxe de base (également appelé la syntaxe dollar), la syntaxe formule ou la syntaxe tidyverse. Il est important de comprendre chacune des trois syntaxes même si on a une préférence pour l'une ou l'autre. Vous avez du vous rendre compte que dans ce cours de sciences des données I, on vous propose principalement la syntaxe formule et la syntaxe tidyverse avec des petites touches en plus pour vous proposer le style **Sciviews-R**. Les objectifs de ce tutoriel sont de :
33
+
32
34
- Comprendre différents types de syntaxe
33
35
- Comparer des instructions équivalentes
34
36
35
37
Vous devez avoir assimilé la matière du [module 11](https://wp.sciviews.org/sdd-umons/?iframe=wp.sciviews.org/sdd-umons-2020/variance2.html) du cours, et en particulier la [section 11.6](https://wp.sciviews.org/sdd-umons/?iframe=wp.sciviews.org/sdd-umons-2020/syntaxe-de-r.html). Au cours de ce learnr vous allez pouvoirauto-évaluer vos acquis relatifs à l'utilisation de différentes syntaxes de R.
36
38
37
39
## Syntaxe dans R
38
40
39
-
Dans ce learnr, deux jeux de données que vous commencez à bien connaitre seront employés en parallèle. Le premier `biometry`, constitué de données sur la biométrie humaine, sera utilisé pour les explications. Le second, `urchin`, traitant de la biométrie servira pour les exercices que vous allez réaliser.
41
+
Dans ce learnr, deux jeux de données que vous commencez à bien connaitre seront employés en parallèle. Le premier `biometry`, constitué de données sur la biométrie humaine, sera utilisé pour les explications. Le second, `urchin`, traitant de la biométrie des oursins servira pour les exercices que vous allez réaliser.
40
42
41
43
Le jeu de données sur la biométrie humaine comprend 7 variables et 395 individus.
42
44
@@ -52,7 +54,7 @@ Le jeu de données sur la biométrie des oursins comprend 19 variables et 421 in
52
54
53
55
## Calcul d'une nouvelle variable
54
56
55
-
Lors de vos analyses, vous pourrez être amené à transformer, convertir ou calculer des variables. Par exemple, dans le jeu de données `biometry`, la taille (`height`) est exprimée en centimètre et vous souhaitez la convertir en mètre. Vous avez jusqu'à présent appris à le faire en utilisant la syntaxe SciViews::R et tidyverse. Le calcul de la nouvelle variable se fait grâce à la fonction `mutate()` qui prend comme premier argument un `tibble` ou un `data.frame` avant de spécifier comme deuxième argument le nom de votre nouvelle variable suivi d'un signe `=` et de votre calcul dans lequel vous utilisez directement le nom de la variable a modifié.
57
+
Lors de vos analyses, vous pourrez être amené à transformer, convertir ou calculer des variables. Par exemple, dans le jeu de données `biometry`, la taille (`height`) est exprimée en centimètre et vous souhaitez la convertir en mètre. Vous avez jusqu'à présent appris à le faire en utilisant le style SciViews-R. Le calcul de la nouvelle variable se fait grâce à la fonction `mutate()` qui prend comme premier argument un `tibble` ou un `data.frame` avant de spécifier comme deuxième argument le nom de votre nouvelle variable suivi d'un signe `=` et de votre calcul dans lequel vous utilisez directement le nom de la variable a modifié.
Vous devez donc calculer la variable `diameter` grace à `diameter1` et `diameter2` et ajouter cette nouvelle variable au tableau `urchin`.
79
+
76
80
Affichez ensuite les premières lignes de votre nouveau tableau avec la fonction `head()`
77
81
78
-
Réalisez ces deux étapes dans un premier temps avec la syntaxe proposée par Sciviews::R et tidyverse et dans un second temps avec la syntaxe R de base.
82
+
Réalisez ces deux étapes dans un premier temps avec la syntaxe proposée par le style SciViews-R et dans un second temps avec la syntaxe R de base.
79
83
80
84
### Sciviews::R et tidyverse
81
85
82
86
```{r mutate1_h2, exercise = TRUE}
83
87
# calcul de la variable diameter
84
-
___ %>.%
85
-
___(___) -> ___
88
+
urchin %>.%
89
+
___(___) -> urchin
86
90
# visualisation avec head()
87
91
___(___)
88
92
```
89
93
90
94
```{r mutate1_h2-hint-1}
91
95
# calcul de la variable diameter
92
-
DF %>.%
93
-
mutate(., diameter = ___) -> DF
96
+
urchin %>.%
97
+
mutate(., diameter = ___) -> urchin
94
98
# visualisation avec head()
95
99
head(___)
96
100
@@ -113,7 +117,7 @@ grade_code("Félicitation, vous êtes parvenu à calculer votre nouvelle variabl
113
117
114
118
```{r mutate2_h2, exercise = TRUE}
115
119
# calcul de la variable diameter
116
-
___ <- ___
120
+
___$___ <- (___$___ + ___$___)/2
117
121
# visualisation avec head()
118
122
___(___)
119
123
```
@@ -138,7 +142,7 @@ grade_code("Bravo! Vous avez bien compris la logique pour avoir accès à une va
138
142
139
143
## Sélection de variables dans un jeu de données I
140
144
141
-
Lorsque vous serez confronté à un jeu de données comportant un grand nombre de variables, vous souhaiterez peut-être le réduire pour ne conserver que les variables dont vous aurez besoin pour votre analyse. Actuellement, vous savez le faire en utilisant la syntaxe SciViews::R et tidyverse, où la sélection de variables se fait avec la fonction `select()`. Vous commencez par définir comme premier argument votre jeu de données avant de préciser les différentes variables que vous souhaitez conserver.
145
+
Lorsque vous serez confronté à un jeu de données comportant un grand nombre de variables, vous souhaiterez peut-être le réduire pour ne conserver que les variables dont vous aurez besoin pour votre analyse. Actuellement, vous savez le faire en utilisant le style SciViews-R, où la sélection de variables se fait avec la fonction `select()`. Vous commencez par définir comme premier argument votre jeu de données avant de préciser les différentes variables que vous souhaitez conserver.
142
146
143
147
Si l'on souhaite réduire le jeu de données `biometry` pour obtenir un sous tableau comprenant uniquement les variables `gender`, `weight` et `height`, vous le réaliserez comme indiqué ci-dessous.
# visualisation des premières lignes du nouveau tableau
233
237
head(urchin_sub)
234
238
```
@@ -239,7 +243,7 @@ grade_code("Bon travail, vous êtes parvenu à conserver les colonnes d'intérê
239
243
240
244
### R de base et la position des variables d'intérêts
241
245
242
-
Utilisez la position des variables que vous souhaitez conserver.
246
+
Utilisez la position des variables que vous souhaitez conserver. Les variables sont en position 1, 4 et 6
243
247
244
248
```{r select3_h2, exercise = TRUE}
245
249
# avec le nom des variables d'intérêts
@@ -265,14 +269,14 @@ head(urchin_sub)
265
269
```
266
270
267
271
```{r select3_h2-check}
268
-
grade_code("Très bon travail. Vous avez maintenant plusieurs outils vous permettant de conservez les variables d'intérêt.")
272
+
grade_code("Très bon travail. Vous avez maintenant plusieurs outils vous permettant de conserver des variables d'intérêt.")
269
273
```
270
274
271
275
## Sélection de variables dans un jeu de données II
272
276
273
-
Lorsque vous souhaitez conserver certaines variables dans votre jeu de données, vous venez de voir que vous pouviez le faire en sélectionnant les variables qui vous intéressent. Il est également possible de réaliser cette opération en supprimant les variables dont vous n'aurez pas l'utilité pour la suite de votre analyse. Pour le faire avec la syntaxe SciViews::R et tidyverse, vous utiliserez la fonction `select()` en définissant comme premier argument votre jeu de données suivi des noms des variables que vous souhaitez supprimer précédé du signe `-`.
277
+
Lorsque vous souhaitez conserver certaines variables dans votre jeu de données, vous venez de voir que vous pouviez le faire en sélectionnant les variables qui vous intéressent. Il est également possible de réaliser cette opération en supprimant les variables dont vous n'aurez pas l'utilité pour la suite de votre analyse. Pour le faire avec le style SciViews-R, vous utilisez la fonction `select()` en définissant comme premier argument votre jeu de données suivi des noms des variables que vous souhaitez supprimer précédé du signe `-`.
274
278
275
-
Si vous souhaitez, par exemple, réduire le jeu de données `biometry` pour conserver un sous tableau comprenant toutes les variables à l'exception des variables `day_birth`, `year_measure` et `age`, vous procèderez donc comme suit :
279
+
Si vous souhaitez, par exemple, réduire le jeu de données `biometry` pour conserver un sous tableau comprenant toutes les variables à l'exception des variables `wrist`, `year_measure` et `age`, vous procèderez donc comme suit :
Essayez maintenant de réduire le jeu de données `urchin` afin d'obtenir un sous tableau comprenant toutes les variables à l'exception des variables `diameter1`, `diameter2`, `skeleton`, `lantern`, `test`et `spines`.
304
+
Essayez maintenant de réduire le jeu de données `urchin` afin d'obtenir un sous tableau comprenant toutes les variables à l'exception des variables `origin`, `diameter1`et `diameter2`.
301
305
302
306
Affichez ensuite les premières lignes de votre nouveau tableau avec la fonction `head()`.
303
307
304
-
Réalisez ces deux étapes dans un premier temps avec la syntaxe proposée par Sciviews::R et tidyverse et dans un second temps avec la syntaxe R de base.
308
+
Réalisez ces deux étapes dans un premier temps avec le style SciViews-R et dans un second temps avec la syntaxe R de base.
# visualisation des premières lignes du nouveau tableau
328
332
head(urchin_sub)
329
333
```
@@ -334,7 +338,7 @@ grade_code("Vous voyez qu'il est aussi possible de créer un sous tableau en cib
334
338
335
339
### R de base
336
340
337
-
Utilisez l'opérateur `:` pour indiquer la position des variables que vous devez retirer du tableau.
341
+
Utilisez l'opérateur `:` pour indiquer la position des variables que vous devez retirer du tableau. Les variables à retirer sont les variables 1, 2 et 3
338
342
339
343
```{r select5_h2, exercise = TRUE}
340
344
urchin_sub <- ___[, ___]
@@ -343,15 +347,15 @@ ___(___)
343
347
```
344
348
345
349
```{r select5_h2-hint-1}
346
-
urchin_sub <- DF[ , -c(___:___, ___:___)]
350
+
urchin_sub <- DF[ , -c(___:___)]
347
351
# visualisation des premières lignes du nouveau tableau
348
352
head(urchin_sub)
349
353
350
354
#### ATTENTION: Hint suivant = solution !####
351
355
```
352
356
353
357
```{r select5_h2-solution}
354
-
urchin_sub <- urchin[ , -c(2:3, 14:17)]
358
+
urchin_sub <- urchin[ , -c(1:3)]
355
359
# visualisation des premières lignes du nouveau tableau
356
360
head(urchin_sub)
357
361
```
@@ -398,7 +402,7 @@ Essayez maintenant d'obtenir un sous tableau constitué uniquement des individus
398
402
399
403
Affichez ensuite les premières lignes de votre nouveau tableau avec la fonction `head()`.
400
404
401
-
Réalisez ces deux étapes dans un premier temps avec la syntaxe proposée par Sciviews::R et tidyverse et dans un second temps avec la syntaxe R de base.
405
+
Réalisez ces deux étapes dans un premier temps avec le style Sciviews-R et dans un second temps avec la syntaxe R de base.
Essayez maintenant de réduire le jeu de données `urchin` pour obtenir un sous tableau comprenant uniquement les individus provenant d'élevage ("Farm") et dont la hauteur ("height") est strictement supérieure à 30 mm. De plus, vous ne conserverez que les variables `height`, `weight` et `skeleton`.
484
+
Essayez maintenant de réduire le jeu de données `urchin` pour obtenir un sous tableau comprenant uniquement les individus provenant d'élevage ("Farm" dans la variable `origin`) et dont la hauteur (`height`) est strictement supérieure à 30 mm. De plus, vous ne conserverez que les variables `height`, `weight` et `skeleton`.
481
485
482
486
Affichez ensuite les premières lignes de votre nouveau tableau avec la fonction `head()`.
483
487
484
-
Réalisez ces deux étapes dans un premier temps avec la syntaxe proposée par Sciviews::R et tidyverse et dans un second temps avec la syntaxe R de base.
488
+
Réalisez ces deux étapes dans un premier temps avec le style SciViews-R et dans un second temps avec la syntaxe R de base.
485
489
486
490
### Avec SciViews::R et tidyverse
487
491
488
492
```{r filter3_h2, exercise = TRUE}
489
493
___ %>.%
490
494
filter(., ___ ___ ___ & ___ > ___) %>.%
491
495
select(., ___) -> urchin_sub
496
+
# visualisation des premières lignes du nouveau tableau
492
497
___(___)
493
498
```
494
499
495
500
```{r filter3_h2-hint-1}
496
501
DF %>.%
497
502
filter(., origin == ___ & height > ___) %>.%
498
503
select(., height, ___, ___) -> urchin_sub
504
+
# visualisation des premières lignes du nouveau tableau
499
505
head(___)
500
506
501
507
#### ATTENTION: Hint suivant = solution !####
@@ -505,6 +511,7 @@ head(___)
505
511
urchin %>.%
506
512
filter(., origin == "Farm" & height > 30) %>.%
507
513
select(., height, weight, skeleton) -> urchin_sub
514
+
# visualisation des premières lignes du nouveau tableau
508
515
head(urchin_sub)
509
516
```
510
517
@@ -514,25 +521,30 @@ grade_code("Bien. Notez l'utilité du pipe (`%>.%`) qui vous permet de passez le
514
521
515
522
### Avec R de base
516
523
524
+
La sélecton des variables doit se faire grâce aux noms des variables.
525
+
517
526
```{r filter4_h2, exercise = TRUE}
518
527
urchin_sub <- ___[___ == ___ & ___ > ___, ___]
528
+
# visualisation des premières lignes du nouveau tableau
0 commit comments