BaşlayınÜcretsiz başlayın

Mevsimsel veride auto.arima() ve ets() karşılaştırması

Yıllıktan daha sık veriler için eğitim ve test kümeleri oluşturmak istediğinde ne olur? Gerekirse, window() fonksiyonunda start ve/veya end anahtar sözcükleri için c(year, period) biçiminde bir vektör kullanabilirsin. Ayrıca tahminleme fonksiyonlarında uygun h değerlerini kullandığından emin olmalısın. Unutma, h test kümeni oluşturan verilerin uzunluğuna eşit olmalıdır.

Örneğin, verin 15 yılı kapsıyorsa, eğitim kümen ilk 10 yıldan oluşuyorsa ve son 5 yılı tahmin etmek istiyorsan, test kümen 60 aylık gözlem içereceği için h = 5 değil h = 12 * 5 kullanırsın. Eğer eğitim kümen ilk 9,5 yıldan oluşuyor ve son 5,5 yılı tahmin etmek istiyorsan, fazladan 6 ayı hesaba katmak için h = 66 kullanırsın.

Bu bölümün son egzersizinde, mevsimsel ARIMA ve ETS modellerini üç aylık çimento üretimi verisi qcement üzerinde karşılaştıracaksın. Seri çok uzun olduğu için, zaman serisi çapraz doğrulaması yerine eğitim ve test kümesi kullanabilirsin. Bu çok daha hızlıdır.

qcement verisi çalışma alanında kullanımına hazırdır.

Bu egzersiz, kursun bir parçasıdır

R ile Tahminleme

Kursa Göz Atın

Egzersiz talimatları

  • 1988 yılında başlayıp 2007'nin son çeyreğinde biten 20 yıllık qcement verisinden oluşan ve end için bir vektör kullanacağın train adlı bir eğitim kümesi oluştur; kalan veriler test kümen olacak.
  • Eğitim verisine ARIMA ve ETS modelleri kur ve bunları sırasıyla fit1 ve fit2 olarak kaydet.
  • Önceki egzersizlerde yaptığın gibi, her iki modelin artıklarının beyaz gürültü olduğunu kontrol et.
  • Her iki modelden, kalan veri için tahminleri sırasıyla fc1 ve fc2 olarak üret. h değerini test kümendeki toplam çeyrek sayısına ayarla. Dikkat: qcement içindeki son gözlem yılın son çeyreği değildir!
  • accuracy() fonksiyonunu kullanarak RMSE değerine göre daha iyi modeli bul ve bettermodel olarak kaydet.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

# Use 20 years of the qcement data beginning in 1988
train <- window(___, start = ___, end = ___)

# Fit an ARIMA and an ETS model to the training data
fit1 <- ___
fit2 <- ___

# Check that both models have white noise residuals
___
___

# Produce forecasts for each model
fc1 <- forecast(___, h = ___)
fc2 <- forecast(___, h = ___)

# Use accuracy() to find better model based on RMSE
accuracy(___, ___)
accuracy(___, ___)
bettermodel <- ___
Kodu Düzenle ve Çalıştır