CommencezCommencez gratuitement

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

Comme vous l'avez vu au premier chapitre, la fonction window() précise le start et la end d'une série chronologique à l'aide des moments pertinents plutôt que des indices. Ces deux paramètres peuvent être fournis sous forme de vecteur comme c(year, period), que vous avez aussi déjà 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 ensembles 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 bonne valeur à utiliser pour le paramètre h (qui indique le nombre de valeurs à prévoir) dans vos méthodes de prévision.

Ensuite, pour chaque ensemble d'entraînement, calculez l'année suivante de données, puis comparez finalement le taux d'erreur absolue moyen (MAPE) des prévisions à l'aide de accuracy(). Pourquoi pensez-vous que le MAPE varie autant?

Cette activité fait partie du cours

Prévision en R

Voir le cours

Instructions de l’exercice

  • Utilisez window() pour créer trois ensembles 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. Définissez le paramètre end en conséquence.
  • Calculez une année de prévisions pour chaque ensemble d'entraînement à l'aide de 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 à l'aide de la fonction accuracy() comme jeu de test.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# 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