Saya sedang mengerjakan proyek kecil dengan satu seri waktu yang mengukur data kunjungan pelanggan (setiap hari). Kovariat saya adalah variabel kontinu Day
untuk mengukur berapa hari telah berlalu sejak hari pertama pengumpulan data, dan beberapa variabel dummy, seperti apakah hari itu Natal, dan hari apa dalam seminggu, dll.
Bagian dari data saya terlihat seperti:
Date Customer_Visit Weekday Christmas Day
11/28/11 2535 2 0 1
11/29/11 3292 3 0 2
11/30/11 4103 4 0 3
12/1/11 4541 5 0 4
12/2/11 6342 6 0 5
12/3/11 7205 7 0 6
12/4/11 3872 1 0 7
12/5/11 3270 2 0 8
12/6/11 3681 3 0 9
Rencana saya adalah menggunakan model ARIMAX agar sesuai dengan data. Ini dapat dilakukan dalam R, dengan fungsi auto.arima()
. Saya mengerti bahwa saya harus memasukkan kovariat saya ke dalam xreg
argumen, tetapi kode saya untuk bagian ini selalu menghasilkan kesalahan.
Ini kode saya:
xreg <- c(as.factor(modelfitsample$Christmas), as.factor(modelfitsample$Weekday),
modelfitsample$Day)
modArima <- auto.arima(ts(modelfitsample$Customer_Visit, freq=7), allowdrift=FALSE,
xreg=xreg)
Pesan kesalahan yang dikembalikan oleh R adalah:
Error in model.frame.default(formula = x ~ xreg, drop.unused.levels = TRUE)
:variable lengths differ (found for 'xreg')
Saya belajar banyak dari Bagaimana cara memasangkan model ARIMAX dengan R? Tapi saya masih belum begitu jelas bagaimana mengatur kovariat atau boneka dalam xreg
argumen dalam auto.arima()
fungsi.
sumber
diff
sebuahts
objek, Anda mempersingkat panjang oleh setidaknya satu pengamatan.auto.arima(diff(visits), xreg = xreg)
memintaauto.arima
agar sesuai dengan model ARIMA pada 48 pengamatan menggunakan regresi eksternal dengannrow
49.