Fenêtres extensibles

Manipuler des séries temporelles en R

Harrison Brown

Graduate Researcher in Geography

Fenêtres glissantes vs extensibles

Fenêtre glissante :

  • Point de départ mobile
  • Largeur de fenêtre fixe

Fenêtre extensible :

  • Point de départ fixe
  • Largeur de fenêtre croissante
Manipuler des séries temporelles en R

Processus de fenêtre extensible

Largeur de fenêtre croissante :

  • Largeur 1 à l'observation 1,
  • Largeur 2 à l'observation 2,
  • Largeur 3 à l'observation 3,
  • …

Quel résumé des données est à notre disposition ?

Point de départ fixe :

  • Les fenêtres commencent toutes au début de la série temporelle.

Schéma conceptuel d'une fenêtre extensible sur une série temporelle. Quatre cases, numérotées de un à quatre, sont alignées horizontalement, représentant une série temporelle conceptuelle. Sous la série, quatre lignes horizontales de longueur croissante : la première part de l'extrémité gauche et s'arrête à la fin de la première case ; la deuxième s'arrête à la deuxième case, et ainsi de suite.

Manipuler des séries temporelles en R

Calculer une fenêtre extensible

Fenêtres extensibles en R :

  • zoo::rollapply() !
  • width peut être un nombre ou un vecteur

Largeurs de fenêtre extensible :

  • 1, 2, 3, 4, ...

Fonction pour une séquence de nombres :

  • base::seq_along()
seq_along(daily_temp)
[1] 1 2 3 4 5 6 7 8 9 ...
    ... 363 364 365
Manipuler des séries temporelles en R

Calculer une fenêtre extensible

exp_widths <- seq_along(daily_temp)

exp_widths
[1] 1 2 3 4 5 ... 363 364 365
temp_expand <- 
  rollapply(
    data = daily_temp,
    FUN = mean,
    width = exp_widths,
    # Alignment must be 'right'
    align = 'right'
  )
Manipuler des séries temporelles en R

Tracer des fenêtres extensibles

ggplot() + 
# Données d'origine
  geom_line(data = daily_temp,
            aes(x = Index,
            y = daily_temp),
            color = 'grey50') +

# Tracé de la fenêtre extensible geom_line(data = temp_expand, aes(x = Index, y = temp_expand), color = 'red') + theme_light() + labs(y = 'Degrés Celsius')

Graphique d'une série temporelle de températures quotidiennes. Une ligne grise « bruitée » montre une forte variabilité jour après jour. Par-dessus, une ligne rouge représente la moyenne extensible de l'ensemble de données.

Manipuler des séries temporelles en R

Inférences avec fenêtre extensible

  • Les statistiques approchent des résumés globaux
  • La moyenne extensible devient moins sensible aux variations
  • Les premières observations sont plus sensibles aux variations

Graphique d'une série temporelle de températures quotidiennes. Une ligne grise « bruitée » montre une forte variabilité jour après jour. Par-dessus, une ligne rouge représente la moyenne extensible de l'ensemble de données.

Manipuler des séries temporelles en R

Passons à la pratique !

Manipuler des séries temporelles en R

Preparing Video For Download...