Skip to content

Commit 5478c89

Browse files
A11Lb_syntaxr : version 2 : minor correction
1 parent 098a5c1 commit 5478c89

File tree

4 files changed

+40
-28
lines changed

4 files changed

+40
-28
lines changed
-8.68 KB
Binary file not shown.
-10 KB
Binary file not shown.
-431 KB
Binary file not shown.

devel/tutorials/A11Lb_syntaxr/A11Lb_syntaxr.Rmd renamed to inst/tutorials/A11Lb_syntaxr/A11Lb_syntaxr.Rmd

Lines changed: 40 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -29,14 +29,16 @@ BioDataScience1::learnr_server(input, output, session)
2929

3030
## Objectifs
3131

32+
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+
3234
- Comprendre différents types de syntaxe
3335
- Comparer des instructions équivalentes
3436

3537
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.
3638

3739
## Syntaxe dans R
3840

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.
4042

4143
Le jeu de données sur la biométrie humaine comprend 7 variables et 395 individus.
4244

@@ -52,7 +54,7 @@ Le jeu de données sur la biométrie des oursins comprend 19 variables et 421 in
5254

5355
## Calcul d'une nouvelle variable
5456

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é.
5658

5759
```{r, echo = TRUE}
5860
biometry %>.%
@@ -69,28 +71,30 @@ biometry$height_m <- biometry$height/100
6971
head(biometry)
7072
```
7173

72-
Essayez maintenant de calculer le diamètre moyen en utilisant la formule suivante sur les données de `urchin` :
74+
Calculez le diamètre moyen en utilisant la formule suivante sur les données de `urchin` :
7375

7476
$$diameter \ = \ \frac{(diameter1 + diameter2)}{2}$$
7577

78+
Vous devez donc calculer la variable `diameter` grace à `diameter1` et `diameter2` et ajouter cette nouvelle variable au tableau `urchin`.
79+
7680
Affichez ensuite les premières lignes de votre nouveau tableau avec la fonction `head()`
7781

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.
7983

8084
### Sciviews::R et tidyverse
8185

8286
```{r mutate1_h2, exercise = TRUE}
8387
# calcul de la variable diameter
84-
___ %>.%
85-
___(___) -> ___
88+
urchin %>.%
89+
___(___) -> urchin
8690
# visualisation avec head()
8791
___(___)
8892
```
8993

9094
```{r mutate1_h2-hint-1}
9195
# calcul de la variable diameter
92-
DF %>.%
93-
mutate(., diameter = ___) -> DF
96+
urchin %>.%
97+
mutate(., diameter = ___) -> urchin
9498
# visualisation avec head()
9599
head(___)
96100
@@ -113,7 +117,7 @@ grade_code("Félicitation, vous êtes parvenu à calculer votre nouvelle variabl
113117

114118
```{r mutate2_h2, exercise = TRUE}
115119
# calcul de la variable diameter
116-
___ <- ___
120+
___$___ <- (___$___ + ___$___)/2
117121
# visualisation avec head()
118122
___(___)
119123
```
@@ -138,7 +142,7 @@ grade_code("Bravo! Vous avez bien compris la logique pour avoir accès à une va
138142

139143
## Sélection de variables dans un jeu de données I
140144

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.
142146

143147
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.
144148

@@ -171,7 +175,7 @@ biom_sub <- biometry[ , c(1,3,4)]
171175
head(biom_sub)
172176
```
173177

174-
Essayez maintenant de sélectionner les variables `origin`, `height` et `weight` du jeu de données `urchin`.
178+
Essayez maintenant de sélectionner les variables `origin`, `height` et `weight` du jeu de données `urchin` grâce au nom des variables.
175179

176180
Affichez ensuite les premières lignes de votre nouveau tableau avec la fonction `head()`.
177181

@@ -197,7 +201,7 @@ head(___)
197201

198202
```{r select1_h2-solution}
199203
urchin %>.%
200-
select(., origin, weight, height) -> urchin_sub
204+
select(., origin, height, weight) -> urchin_sub
201205
# visualisation des premières lignes du nouveau tableau
202206
head(urchin_sub)
203207
```
@@ -228,7 +232,7 @@ head(___)
228232

229233
```{r select2_h2-solution}
230234
# avec le nom des variables d'intérêts
231-
urchin_sub <- urchin[ , c("origin", "weight", "height")]
235+
urchin_sub <- urchin[ , c("origin", "height", "weight")]
232236
# visualisation des premières lignes du nouveau tableau
233237
head(urchin_sub)
234238
```
@@ -239,7 +243,7 @@ grade_code("Bon travail, vous êtes parvenu à conserver les colonnes d'intérê
239243

240244
### R de base et la position des variables d'intérêts
241245

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
243247

244248
```{r select3_h2, exercise = TRUE}
245249
# avec le nom des variables d'intérêts
@@ -265,14 +269,14 @@ head(urchin_sub)
265269
```
266270

267271
```{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.")
269273
```
270274

271275
## Sélection de variables dans un jeu de données II
272276

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 `-`.
274278

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 :
276280

277281
```{r, echo = TRUE}
278282
biometry %>.%
@@ -297,11 +301,11 @@ biom_sub <- biometry[ , -c(5:7)]
297301
head(biom_sub)
298302
```
299303

300-
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`.
301305

302306
Affichez ensuite les premières lignes de votre nouveau tableau avec la fonction `head()`.
303307

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.
305309

306310
### SciViews::R et tidyverse
307311

@@ -314,7 +318,7 @@ ___(___)
314318

315319
```{r select4_h2-hint-1}
316320
DF %>.%
317-
select(., - diameter1, ___, ___, ___, ___, ___) -> urchin_sub
321+
select(.,- origin, ___, ___) -> urchin_sub
318322
# visualisation des premières lignes du nouveau tableau
319323
head(___)
320324
@@ -323,7 +327,7 @@ head(___)
323327

324328
```{r select4_h2-solution}
325329
urchin %>.%
326-
select(., - diameter1, - diameter2, - skeleton, -lantern, - test, -spines) -> urchin_sub
330+
select(., -origin, - diameter1, - diameter2) -> urchin_sub
327331
# visualisation des premières lignes du nouveau tableau
328332
head(urchin_sub)
329333
```
@@ -334,7 +338,7 @@ grade_code("Vous voyez qu'il est aussi possible de créer un sous tableau en cib
334338

335339
### R de base
336340

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
338342

339343
```{r select5_h2, exercise = TRUE}
340344
urchin_sub <- ___[, ___]
@@ -343,15 +347,15 @@ ___(___)
343347
```
344348

345349
```{r select5_h2-hint-1}
346-
urchin_sub <- DF[ , -c(___:___, ___:___)]
350+
urchin_sub <- DF[ , -c(___:___)]
347351
# visualisation des premières lignes du nouveau tableau
348352
head(urchin_sub)
349353
350354
#### ATTENTION: Hint suivant = solution !####
351355
```
352356

353357
```{r select5_h2-solution}
354-
urchin_sub <- urchin[ , -c(2:3, 14:17)]
358+
urchin_sub <- urchin[ , -c(1:3)]
355359
# visualisation des premières lignes du nouveau tableau
356360
head(urchin_sub)
357361
```
@@ -398,7 +402,7 @@ Essayez maintenant d'obtenir un sous tableau constitué uniquement des individus
398402

399403
Affichez ensuite les premières lignes de votre nouveau tableau avec la fonction `head()`.
400404

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.
402406

403407
### SciViews::R et tidyverse
404408

@@ -477,25 +481,27 @@ biom_sub <- biometry[biometry$gender == "W" & biometry$height >= 180, c(1, 3, 4)
477481
head(biom_sub)
478482
```
479483

480-
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`.
481485

482486
Affichez ensuite les premières lignes de votre nouveau tableau avec la fonction `head()`.
483487

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.
485489

486490
### Avec SciViews::R et tidyverse
487491

488492
```{r filter3_h2, exercise = TRUE}
489493
___ %>.%
490494
filter(., ___ ___ ___ & ___ > ___) %>.%
491495
select(., ___) -> urchin_sub
496+
# visualisation des premières lignes du nouveau tableau
492497
___(___)
493498
```
494499

495500
```{r filter3_h2-hint-1}
496501
DF %>.%
497502
filter(., origin == ___ & height > ___) %>.%
498503
select(., height, ___, ___) -> urchin_sub
504+
# visualisation des premières lignes du nouveau tableau
499505
head(___)
500506
501507
#### ATTENTION: Hint suivant = solution !####
@@ -505,6 +511,7 @@ head(___)
505511
urchin %>.%
506512
filter(., origin == "Farm" & height > 30) %>.%
507513
select(., height, weight, skeleton) -> urchin_sub
514+
# visualisation des premières lignes du nouveau tableau
508515
head(urchin_sub)
509516
```
510517

@@ -514,25 +521,30 @@ grade_code("Bien. Notez l'utilité du pipe (`%>.%`) qui vous permet de passez le
514521

515522
### Avec R de base
516523

524+
La sélecton des variables doit se faire grâce aux noms des variables.
525+
517526
```{r filter4_h2, exercise = TRUE}
518527
urchin_sub <- ___[___ == ___ & ___ > ___, ___]
528+
# visualisation des premières lignes du nouveau tableau
519529
___(___)
520530
```
521531

522532
```{r filter4_h2-hint-1}
523533
urchin_sub <- DF[DF$VAR1 == ___ & DF$VAR2 > ___, c(___, ___, ___)]
534+
# visualisation des premières lignes du nouveau tableau
524535
head(___)
525536
526537
#### ATTENTION: Hint suivant = solution !####
527538
```
528539

529540
```{r filter4_h2-solution}
530541
urchin_sub <- urchin[urchin$origin == "Farm" & urchin$height > 30, c("height", "weight", "skeleton")]
542+
# visualisation des premières lignes du nouveau tableau
531543
head(urchin_sub)
532544
```
533545

534546
```{r filter4_h2-check}
535-
grade_code("Excellent ! Vous commencez à vraiment bien maitrisez la syntaxe R de base.")
547+
grade_code("Excellent ! Vous commencez à vraiment bien maitriser la syntaxe R de base.")
536548
```
537549

538550
## Conclusion

0 commit comments

Comments
 (0)