CommencerCommencer gratuitement

Évaluer la précision des prévisions pour des méthodes saisonnières

Comme vous l’avez vu dans le premier chapitre, la fonction window() permet d’indiquer le start et la end d’une série temporelle en utilisant les instants pertinents plutôt que les indices. Chacun de ces deux arguments peut être fourni sous forme de vecteur comme c(year, period), que vous avez également utilisé comme argument de ts(). Ici encore, period correspond au trimestre.

Vous allez utiliser les nombres trimestriels de visiteurs à Melbourne (visnights[, "VICMetro"]) pour créer trois jeux d’entraînement, en omettant respectivement les 1, 2 et 3 dernières années. Examinez les données visnights préchargées dans votre console avant de commencer l’exercice ; cela vous aidera à déterminer la valeur correcte à utiliser pour le paramètre h (qui indique le nombre de valeurs à prévoir) dans vos méthodes de prévision.

Pour chaque jeu d’entraînement, calculez ensuite l’année suivante, puis comparez enfin la mean absolute percentage error (MAPE) des prévisions à l’aide de accuracy(). Pourquoi pensez‑vous que le MAPE varie autant ?

Cet exercice fait partie du cours

Prévision en R

Afficher le cours

Instructions

  • Utilisez window() pour créer trois jeux d’entraînement à partir de visnights[,"VICMetro"], en omettant les 1, 2 et 3 dernières années ; nommez‑les respectivement train1, train2 et train3. Renseignez le paramètre end en conséquence.
  • Calculez une année de prévisions pour chaque jeu d’entraînement avec la méthode snaive(). Nommez‑les respectivement fc1, fc2 et fc3.
  • En suivant la structure de l’exemple de code, comparez le MAPE des trois ensembles de prévisions en utilisant la fonction accuracy() avec votre jeu de test.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Create three training series omitting the last 1, 2, and 3 years
train1 <- window(visnights[, "VICMetro"], end = c(2015, 4))
train2 <- ___
train3 <- ___

# Produce forecasts using snaive()
fc1 <- snaive(___, h = ___)
fc2 <- ___
fc3 <- ___

# Use accuracy() to compare the MAPE of each series
accuracy(fc1, visnights[, "VICMetro"])["Test set", "MAPE"]
___
___
Modifier et exécuter le code