Mevsimsel yöntemlerin tahmin doğruluğunu değerlendirme
İlk bölümde öğrendiğin gibi, window() fonksiyonu bir zaman serisinin start ve end değerlerini indeksler yerine ilgili zamanları kullanarak belirtir. Bu iki argümandan herhangi biri, daha önce ts() için de argüman olarak kullandığın c(year, period) şeklinde bir vektör olarak biçimlendirilebilir. Burada period yine çeyrek anlamına gelir.
Burada, Melbourne üç aylık ziyaretçi sayılarını (visnights[, "VICMetro"]) kullanarak sırasıyla son 1, 2 ve 3 yılı çıkartıp üç farklı eğitim kümesi oluşturacaksın. Egzersize başlamadan önce konsolunda önceden yüklenmiş visnights verisini incele; bu, tahmin yöntemlerinde (kaç değeri tahmin etmek istediğini belirleyen) h anahtar sözcüğü için doğru değeri belirlemene yardım edecektir.
Ardından her eğitim kümesi için sonraki yılın verisini tahmin et ve son olarak accuracy() ile tahminlerin ortalama mutlak yüzde hatası (MAPE) değerlerini karşılaştır. Sence MAPE'lerin bu kadar farklı olmasının nedeni ne olabilir?
Bu egzersiz, kursun bir parçasıdır
R ile Tahminleme
Egzersiz talimatları
visnights[,"VICMetro"]verisindenwindow()kullanarak son 1, 2 ve 3 yılı çıkartıp üç eğitim kümesi oluştur; bunları sırasıylatrain1,train2vetrain3olarak adlandır.endanahtarını buna göre ayarla.- Her eğitim kümesi için
snaive()yöntemiyle bir yıllık tahminler üret. Bunları sırasıylafc1,fc2vefc3olarak adlandır. - Örnek kodun yapısını izleyerek,
accuracy()fonksiyonunu test kümesi olarak kullanıp üç tahmin kümesinin MAPE değerlerini karşılaştır.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# Create three training series omitting the last 1, 2, and 3 years
train1 <- window(visnights[, "VICMetro"], end = c(2015, 4))
train2 <- ___
train3 <- ___
# Produce forecasts using snaive()
fc1 <- snaive(___, h = ___)
fc2 <- ___
fc3 <- ___
# Use accuracy() to compare the MAPE of each series
accuracy(fc1, visnights[, "VICMetro"])["Test set", "MAPE"]
___
___