CommencerCommencer gratuitement

Prévision de la demande d’électricité

Vous pouvez aussi modéliser la demande d’électricité quotidienne en fonction de la température. Comme vous l’avez sans doute constaté sur votre facture d’électricité, on consomme davantage les jours de forte chaleur (climatisation) et les jours de grand froid (chauffage).

Dans cet exercice, vous allez ajuster un modèle de régression quadratique avec une erreur ARMA. Une année de données quotidiennes est stockée dans elecdaily, qui contient la demande totale quotidienne, une variable indicatrice pour les jours travaillés (un jour travaillé est représenté par 1, un jour non travaillé par 0) et les températures maximales quotidiennes. En raison de la saisonnalité hebdomadaire, la frequency a été fixée à 7.

Regardons les trois premières lignes :

> elecdaily[1:3, ]
       Demand Temperature Workday
[1,] 174.8963        26.0       0
[2,] 188.5909        23.0       1
[3,] 188.9169        22.2       1

elecdaily a été préchargé dans votre environnement de travail.

Cet exercice fait partie du cours

Prévision en R

Afficher le cours

Instructions

  • Produisez des graphiques temporels uniquement de la demande quotidienne et des températures maximales avec facettage.
  • Créez une matrice de régresseurs incluant MaxTemp pour les températures maximales, MaxTempSq qui correspond au carré de la température maximale, et Workday, dans cet ordre. Clairement, le deuxième argument de cbind() nécessitera un opérateur mathématique simple.
  • Ajustez un modèle de régression dynamique de la colonne de demande avec des erreurs ARIMA et nommez-le fit.
  • Si le lendemain est un jour travaillé (indicateur égal à 1) avec une température maximale prévue de 20 °C, quelle est la demande prévue ? Renseignez les valeurs appropriées dans cbind() pour l’argument xreg de forecast().

Exercice interactif pratique

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

# Time plots of demand and temperatures
autoplot(elecdaily[, c(___, ___)], facets = ___)

# Matrix of regressors
xreg <- cbind(MaxTemp = elecdaily[, "Temperature"],
              MaxTempSq = ___,
              Workday = ___)

# Fit model
fit <- auto.arima(___, xreg = xreg)

# Forecast fit one day ahead
forecast(___, xreg = cbind(___, ___, ___))
Modifier et exécuter le code