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
**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
-
38
36
## Objectifs
39
37
40
38
- Utilisez les statistiques glissantes pour décrire une série spatio-temporelle,
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.
49
47
50
48
```{r, echo = TRUE}
51
49
plot(nottem)
@@ -65,7 +63,7 @@ Les statistiques glissantes (*sliding statistics* en anglais) permettent de calc
65
63
66
64
Réalisez des statistiques glissantes sur la série `nottem`. Vous devez produire un graphique qui montre les valeurs moyenne par blocs *annuels*.
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")
93
91
```
94
92
95
93
#### Blocs de 3 ans
96
94
97
95
Réalisez de nouvelles statistiques glissantes sur `nottem` et visualisez les valeurs moyennes et médianes par blocs de *3 ans*.
@@ -160,13 +158,13 @@ grade_code("Lorsque la taille du bloc est une fraction de l'unité de mesure du
160
158
161
159
## Construction d'un objet **ts**
162
160
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.
164
162
165
163
### Série 1
166
164
167
165
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()`.
168
166
169
-
```{r ts1, exercise = TRUE}
167
+
```{r ts1, exercise=TRUE}
170
168
serie <- ts(vec, start = ___, frequency = ___)
171
169
plot(___)
172
170
```
@@ -178,14 +176,14 @@ plot(serie)
178
176
```
179
177
180
178
```{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.")
182
180
```
183
181
184
182
### Série 2
185
183
186
184
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.
187
185
188
-
```{r ts2, exercise = TRUE}
186
+
```{r ts2, exercise=TRUE}
189
187
serie <- ts(vec, start = c(___,___), frequency = ___)
190
188
plot(___)
191
189
```
@@ -197,14 +195,14 @@ plot(serie)
197
195
```
198
196
199
197
```{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).")
201
199
```
202
200
203
201
### Série 3
204
202
205
203
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.
206
204
207
-
```{r ts3, exercise = TRUE}
205
+
```{r ts3, exercise=TRUE}
208
206
serie <- ts(vec, start = c(___, ___), frequency = ___)
209
207
plot(___)
210
208
```
@@ -216,7 +214,7 @@ plot(serie)
216
214
```
217
215
218
216
```{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)`.")
220
218
```
221
219
222
220
## Manipulation d'un objet ts
@@ -227,7 +225,7 @@ Vous avez à disposition une série spatio-temporelle sous forme d'objet **ts**
227
225
228
226
Combien d'observations `serie` contient-elle par unité de temps ?
229
227
230
-
```{r manip1, exercise = TRUE, exercise.lines=3}
228
+
```{r manip1, exercise=TRUE, exercise.lines=3}
231
229
___(___)
232
230
```
233
231
@@ -237,14 +235,14 @@ frequency(serie)
237
235
```
238
236
239
237
```{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.")
241
239
```
242
240
243
241
### Exercice 2
244
242
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) ?
246
244
247
-
```{r manip2, exercise = TRUE, exercise.lines=3}
245
+
```{r manip2, exercise=TRUE, exercise.lines=3}
248
246
___(___)
249
247
```
250
248
@@ -254,7 +252,7 @@ start(serie)
254
252
```
255
253
256
254
```{r manip2-check}
257
-
grade_code("Aussi simple, `start()` nous l'indique.")
255
+
grade_code("Ici, c'est effectivement `start()` qui nous l'indique.")
258
256
```
259
257
260
258
### Exercice 3
@@ -267,7 +265,7 @@ boxplot(split(serie, cycle(serie)), col = "cornsilk")
267
265
268
266
Reproduisez-le par vous-même.
269
267
270
-
```{r manip3, exercise = TRUE, exercise.lines=3}
268
+
```{r manip3, exercise=TRUE, exercise.lines=3}
271
269
___(___(___,___(___)), col = "cornsilk")
272
270
```
273
271
@@ -277,7 +275,7 @@ boxplot(split(serie, cycle(serie)), col = "cornsilk")
277
275
```
278
276
279
277
```{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.")
0 commit comments