Skip to content

Commit 57fb1c6

Browse files
committed
C04La_ts_intro revised
1 parent 109bdb4 commit 57fb1c6

File tree

1 file changed

+20
-22
lines changed

1 file changed

+20
-22
lines changed

inst/tutorials/C04La_ts_intro/C04La_ts_intro.Rmd

Lines changed: 20 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ author: "Guyliann Engels & Philippe Grosjean"
44
description: "**SDD III Module 4** Statistiques glissantes, création et manipulation d'objets ts."
55
tutorial:
66
id: "C04La_ts_intro"
7-
version: 2.0.0/6
7+
version: 2.0.1/9
88
output:
99
learnr::tutorial:
1010
progressive: true
@@ -33,8 +33,6 @@ BioDataScience3::learnr_server(input, output, session)
3333

3434
------------------------------------------------------------------------
3535

36-
**Ce tutoriel correspond à la version 2021-2022. Il est en cours de révision pour la version 2022-2023. Vous devez probablement penser à installer une version plus récente du package qui contient les exercices finalisés !**
37-
3836
## Objectifs
3937

4038
- Utilisez les statistiques glissantes pour décrire une série spatio-temporelle,
@@ -45,7 +43,7 @@ BioDataScience3::learnr_server(input, output, session)
4543

4644
## Température de l'air
4745

48-
La température moyenne mensuelle de l'air est étudié entre 1920 et 1939 au château de Nottingham. Ètant en Angleterre, cette mesure est effectuée en degrés Fahrenheit.
46+
La température moyenne mensuelle de l'air est étudié entre 1920 et 1939 au château de Nottingham. Étant en Angleterre, cette mesure est effectuée en degrés Fahrenheit.
4947

5048
```{r, echo = TRUE}
5149
plot(nottem)
@@ -65,7 +63,7 @@ Les statistiques glissantes (*sliding statistics* en anglais) permettent de calc
6563

6664
Réalisez des statistiques glissantes sur la série `nottem`. Vous devez produire un graphique qui montre les valeurs moyenne par blocs *annuels*.
6765

68-
```{r statslide1_h3, exercise = TRUE}
66+
```{r statslide1_h3, exercise=TRUE}
6967
not.stat <- stat.slide(___, ___, xmin = ___, deltat = ___)
7068
plot(not.stat, stat = "___")
7169
```
@@ -89,14 +87,14 @@ plot(not.stat, stat = "mean")
8987
```
9088

9189
```{r statslide1_h3-check}
92-
grade_code("Donc, le premier argument est le temps (obtenu à l'aide de `time(ma_serie)`. Le second aregument est la série elle-même. Les autres arguments précisent comment l'axe temporel est découpé. Ici, `xmin = 1920` indique que le découpage commence le 1er janvier 1920 et `deltat = 1` précise que l'intervalle de temps à considérer pour chaque bloc successif est de une unité qui est ici l'année")
90+
grade_code("Donc, le premier argument est le temps (obtenu à l'aide de `time(ma_serie)`. Le second argument est la série elle-même. Les autres arguments précisent comment l'axe temporel est découpé. Ici, `xmin = 1920` indique que le découpage commence le 1er janvier 1920 et `deltat = 1` précise que l'intervalle de temps à considérer pour chaque bloc successif est de une unité qui est ici l'année")
9391
```
9492

9593
#### Blocs de 3 ans
9694

9795
Réalisez de nouvelles statistiques glissantes sur `nottem` et visualisez les valeurs moyennes et médianes par blocs de *3 ans*.
9896

99-
```{r statslide2_h3, exercise = TRUE}
97+
```{r statslide2_h3, exercise=TRUE}
10098
not.stat <- stat.slide(___, ___, xmin = ___, deltat = ___)
10199
plot(not.stat, stat = "___") # Moyennes d'abord
102100
___(not.stat, stat = "___") # Médianes ensuite
@@ -131,7 +129,7 @@ grade_code("Par rapport à l'exercice précédent, nous utilisons `deltat = 3` (
131129

132130
Calculez une troisième fois les statistiques glissantes sur `nottem` et visualisez la moyenne, mais cette fois-ci avec des blocs de *6 mois*.
133131

134-
```{r statslide3_h3, exercise = TRUE}
132+
```{r statslide3_h3, exercise=TRUE}
135133
not.stat <- stat.slide(___, ___, xmin = ___, deltat = ___)
136134
plot(not.stat, stat = "___")
137135
```
@@ -160,13 +158,13 @@ grade_code("Lorsque la taille du bloc est une fraction de l'unité de mesure du
160158

161159
## Construction d'un objet **ts**
162160

163-
Avant de manipuler un objet **ts**, il faut être capable de le construire. La fonction `ts()` set à cela. Pour plus d'informations sur cedtte fonction et ses arguments, voyez `?ts` dans la console R. Nous n'utiliserons que les principaux arguments dans ce tutoriel.
161+
Avant de manipuler un objet **ts**, il faut être capable de le construire. La fonction `ts()` set à cela. Pour plus d'informations sur cette fonction et ses arguments, voyez `?ts` dans la console R. Nous n'utiliserons que les principaux arguments dans ce tutoriel.
164162

165163
### Série 1
166164

167165
Vous allez construire une série fictive qui débute au 1er janvier 2000. Une observation est réalisée chaque mois. Un vecteur de valeurs numériques correspondant aux observations de cette série est à votre disposition sous le nom `vec`. Transformez-le en un objet **ts** nommés `serie` en prenant soin de bien encoder le temps. Réalisez ensuite un graphique de cette série avec la fonction `plot()`.
168166

169-
```{r ts1, exercise = TRUE}
167+
```{r ts1, exercise=TRUE}
170168
serie <- ts(vec, start = ___, frequency = ___)
171169
plot(___)
172170
```
@@ -178,14 +176,14 @@ plot(serie)
178176
```
179177

180178
```{r ts1-check}
181-
grade_code("Pour spécifier le temps d'un objet **ts**, vous commencez par choisir l'unité de temps. Ici, l'unité la plus facile est l'année. Ensuite, vous spécifiez complètement l'axe du temps avec des observations réalisées à intervalle régulier à l'aide de deux paramètres parmi ces quatres : `start`, `end`, `deltat` ou `frequency`. Ici, nous avons utilisé `start = 2000` (premier jour de l'an 2000, sinon, on doit ajouter une décimale correspondant au nombre de jours écoulés, ou s'il s'agit de mois, on peut aussi indiquer par exemple `start = c(2000, 3)` pour le début du troisième mois, soit le 1er mars 2000) et `frequency=`, la fréquence des observations. Ici 12, puisqu'il y a une observation pa mois, donc 12 pas an.")
179+
grade_code("Pour spécifier le temps d'un objet **ts**, vous commencez par choisir l'unité de temps. Ici, l'unité la plus facile est l'année. Ensuite, vous spécifiez complètement l'axe du temps avec des observations réalisées à intervalle régulier à l'aide de deux paramètres parmi ces quatres : `start`, `end`, `deltat` ou `frequency`. Ici, nous avons utilisé `start = 2000` (premier jour de l'an 2000, sinon, on doit ajouter une décimale correspondant au nombre de jours écoulés, ou s'il s'agit de mois, on peut aussi indiquer par exemple `start = c(2000, 3)` pour le début du troisième mois, soit le 1er mars 2000) et `frequency =`, la fréquence des observations. Ici 12, puisqu'il y a une observation pa mois, donc 12 pas an.")
182180
```
183181

184182
### Série 2
185183

186184
Toujours à partir du vecteur des observations `vec`, vous allez maintenant considérer que votre série fictive débute le 1er juillet 2005. Faites le même exercice que ci-dessus avec cette nouvelle information.
187185

188-
```{r ts2, exercise = TRUE}
186+
```{r ts2, exercise=TRUE}
189187
serie <- ts(vec, start = c(___,___), frequency = ___)
190188
plot(___)
191189
```
@@ -197,14 +195,14 @@ plot(serie)
197195
```
198196

199197
```{r ts2-check}
200-
grade_code("Il est plus simple et plus parlant d'indiquer `c(2005, 7)` pour le 1er juillet 2005, plkutôt que d'écrire `2005 + 7/12`, bien que cette dernière forme convienne aussi (si on considère en première approximation que chaque mois est exactement 1/12 d'année, ce qui n'est pas parfaitement correct comme vous le savez).")
198+
grade_code("Il est plus simple et plus parlant d'indiquer `c(2005, 7)` pour le 1er juillet 2005, plutôt que d'écrire `2005 + 7/12`, bien que cette dernière forme convienne aussi (si on considère en première approximation que chaque mois est exactement 1/12 d'année, ce qui n'est pas parfaitement correct comme vous le savez).")
201199
```
202200

203201
### Série 3
204202

205203
Toujours à partir de vos observations dans `vec`, faite une troisième fois un exercice similaire, mais cette fois-ci, vous considérerez que vos observations commencent le premier jour du second trimestre de 1993 et que vous avez une observation par trimestre.
206204

207-
```{r ts3, exercise = TRUE}
205+
```{r ts3, exercise=TRUE}
208206
serie <- ts(vec, start = c(___, ___), frequency = ___)
209207
plot(___)
210208
```
@@ -216,7 +214,7 @@ plot(serie)
216214
```
217215

218216
```{r ts3-check}
219-
grade_code("Effectivement, la fréquence est de 4 ici. Le premier trimestre est constitué de janvier, février et mars. Le début du second trimestre de 1993 est donc le 1er avril, soit `c(1993, 4)`.")
217+
grade_code("La fréquence est de 4 ici. Le premier trimestre est constitué de janvier, février et mars. Le début du second trimestre de 1993 est donc le 1er avril, soit `c(1993, 4)`.")
220218
```
221219

222220
## Manipulation d'un objet ts
@@ -227,7 +225,7 @@ Vous avez à disposition une série spatio-temporelle sous forme d'objet **ts**
227225

228226
Combien d'observations `serie` contient-elle par unité de temps ?
229227

230-
```{r manip1, exercise = TRUE, exercise.lines=3}
228+
```{r manip1, exercise=TRUE, exercise.lines=3}
231229
___(___)
232230
```
233231

@@ -237,14 +235,14 @@ frequency(serie)
237235
```
238236

239237
```{r manip1-check}
240-
grade_code("Tout simplement `frenquency()` nous donne cette information.")
238+
grade_code("C'est bien la fonction `frenquency()` nous donne cette information.")
241239
```
242240

243241
### Exercice 2
244242

245-
Quand débute `serie`(sachant que son unité de temps ext l'année) ?
243+
Quand débute `serie` (sachant que son unité de temps est l'année) ?
246244

247-
```{r manip2, exercise = TRUE, exercise.lines=3}
245+
```{r manip2, exercise=TRUE, exercise.lines=3}
248246
___(___)
249247
```
250248

@@ -254,7 +252,7 @@ start(serie)
254252
```
255253

256254
```{r manip2-check}
257-
grade_code("Aussi simple, `start()` nous l'indique.")
255+
grade_code("Ici, c'est effectivement `start()` qui nous l'indique.")
258256
```
259257

260258
### Exercice 3
@@ -267,7 +265,7 @@ boxplot(split(serie, cycle(serie)), col = "cornsilk")
267265

268266
Reproduisez-le par vous-même.
269267

270-
```{r manip3, exercise = TRUE, exercise.lines=3}
268+
```{r manip3, exercise=TRUE, exercise.lines=3}
271269
___(___(___,___(___)), col = "cornsilk")
272270
```
273271

@@ -277,7 +275,7 @@ boxplot(split(serie, cycle(serie)), col = "cornsilk")
277275
```
278276

279277
```{r manip3-check}
280-
grade_code("Ici plusieurs traitements sont combinés pour obtenir le résultat. Tout d'abord `cycle()` indique l'ordre des observations selon un cycle d'une unité de temps. Pour l'année ici, les observations de janvier se voient toutes attribuer `1`, celles de février `2`, etc. Ensuite `split()` sépare la série initiale en 12 sous-série, ayant même valeurs pour le cycle. Autrement dit, on sépare les données de chaque mois dans sa série propre. Enfin, `boxplot()` est la fonction qui crée une boite de dispersion parallèle en R de base. On final, on compare la distribution des obervations pour chaque mois au cours des années.")
278+
grade_code("Ici plusieurs traitements sont combinés pour obtenir le résultat. Tout d'abord `cycle()` indique l'ordre des observations selon un cycle d'une unité de temps. Pour l'année ici, les observations de janvier se voient toutes attribuer `1`, celles de février `2`, etc. Ensuite `split()` sépare la série initiale en 12 sous-séries, ayant chacune même valeur pour le cycle. Autrement dit, on sépare les données de chaque mois dans sa série propre. Enfin, `boxplot()` est la fonction qui crée une boite de dispersion parallèle en R de base. Au final, on compare la distribution des observations pour chaque mois au cours des années.")
281279
```
282280

283281
## Conclusion

0 commit comments

Comments
 (0)