Prognostisering av elförbrukning
Det går också att modellera daglig elförbrukning som en funktion av temperaturen. Som du kanske har sett på din elräkning förbrukas mer el varma dagar på grund av luftkonditionering och kalla dagar på grund av uppvärmning.
I den här övningen anpassar du en kvadratisk regressionsmodell med ett ARMA-fel. Ett års dagliga data finns lagrade i elecdaily, och inkluderar total daglig efterfrågan, en indikatorvariabel för arbetsdagar (en arbetsdag representeras med 1 och en icke-arbetsdag med 0) samt dagliga maximitemperaturer. Eftersom det finns veckosäsongsvariationer har frequency satts till 7.
Här är de tre första raderna:
> 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 har förinslästs i din arbetsmiljö.
Den här övningen är en del av kursen
Prognoser i R
Övningsinstruktioner
- Skapa tidsplottar för enbart den dagliga efterfrågan och maximitemperaturerna med facettering.
- Sätt upp en matris med regressorer som inkluderar
MaxTempför maximitemperaturerna,MaxTempSqsom representerar det kvadrerade värdet av maximitemperaturen, ochWorkday, i den ordningen. Den andra argumentet icbind()kräver en enkel matematisk operator. - Anpassa en dynamisk regressionsmodell av efterfrågekolumnen med ARIMA-fel och kalla denna
fit. - Om nästa dag är en arbetsdag (indikator är 1) med en prognostiserad maxtemperatur på 20°C, vad är den prognostiserade efterfrågan? Fyll i lämpliga värden i
cbind()för argumentetxregiforecast().
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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(___, ___, ___))