Çoklu mevsimsellik için harmonik regresyon
Zaman serilerinde birden fazla mevsimsel örüntü olduğunda harmonik regresyonlar da işe yarar. Örneğin, taylor veri kümesi 2000 yılı içinde birkaç ay boyunca İngiltere ve Galler'de yarım saatlik elektrik talebini içerir. Mevsimsel dönemler 48 (günlük mevsimsellik) ve 7 x 48 = 336 (haftalık mevsimsellik) şeklindedir. Yıllık mevsimselliği değerlendirmek için yeterli veri yok.
auto.arima() bu kadar uzun bir zaman serisini uyarlamak için çok zaman alır, bu yüzden bunun yerine tslm() fonksiyonunu kullanarak Fourier terimleri içeren standart bir regresyon modeli kuracaksın. Bu, lm() fonksiyonuna çok benzer ama zaman serilerini ele almak için tasarlanmıştır. Birden fazla mevsimsellik olduğunda, her mevsimsel dönem için \(K\) mertebesini belirtmen gerekir.
# formula argümanı, uyarlanacak modelin
# sembolik bir tanımıdır
> args(tslm)
function (formula, ...)
tslm() yeni tanıtılan bir fonksiyon, bu yüzden çoğunlukla önceden yazılmış kodu takip edebiliyor olmalısın. taylor verileri çalışma alanına yüklenmiş durumda.
Bu egzersiz, kursun bir parçasıdır
R ile Tahminleme
Egzersiz talimatları
- Her bir mevsimsellik türü için mertebe 10 kullanarak
taylorüzerindefitadlı bir harmonik regresyon kur. - 20 iş günü sonrasını
fcolarak tahmin et. Doğruhdeğerini ayarlamak için verilerin yarım saatlik olduğunu unutma. - Tahminlerin bir zaman grafiğini oluştur.
- Uydurduğun modelin artıklarını kontrol et. Gördüğün gibi,
auto.arima()daha iyi bir iş çıkarırdı.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# Fit a harmonic regression using order 10 for each type of seasonality
fit <- tslm(taylor ~ fourier(___, K = c(10, 10)))
# Forecast 20 working days ahead
fc <- forecast(___, newdata = data.frame(fourier(___, K = ___, h = ___)))
# Plot the forecasts
___
# Check the residuals of fit
___