Začněte nyníZačněte zdarma

Předpověď spotřeby elektřiny

Denní spotřebu elektřiny lze také modelovat jako funkci teploty. Jak možná víš ze svých účtů za elektřinu, v horkých dnech se spotřebovává více elektřiny kvůli klimatizaci a v chladných dnech kvůli vytápění.

V tomto cvičení natrénuješ kvadratický regresní model s ARMA chybou. K dispozici máš roční denní data uložená jako elecdaily, která zahrnují celkovou denní spotřebu, indikátorovou proměnnou pro pracovní dny (pracovní den je reprezentován hodnotou 1, nepracovní den hodnotou 0) a denní maximální teploty. Protože data vykazují týdenní sezónnost, je frequency nastavena na 7.

Podívejme se na první tři řádky:

> 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 je předem načteno do tvého pracovního prostředí.

Toto cvičení je součástí kurzu

Forecasting v R

Zobrazit kurz

Pokyny k cvičení

  • Vytvoř časové grafy pouze denní spotřeby a maximálních teplot s použitím facettingu.
  • Sestav matici regresorů obsahující MaxTemp pro maximální teploty, MaxTempSq představující druhou mocninu maximální teploty a Workday, v tomto pořadí. Druhý argument cbind() bude přirozeně vyžadovat jednoduchý matematický operátor.
  • Natrénuj model dynamické regrese sloupce spotřeby s ARIMA chybami a výsledek ulož jako fit.
  • Pokud bude následující den pracovní (indikátor je 1) s předpovídanou maximální teplotou 20 °C, jaká bude předpovězená spotřeba? Doplň odpovídající hodnoty do cbind() pro argument xreg ve funkci forecast().

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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(___, ___, ___))
Upravit a spustit kód