Pracuję nad małym projektem z jednym szeregiem czasowym, który mierzy dane o wizytach klientów (codziennie). Moje zmienne towarzyszące są zmienną ciągłąDay
mierzącą liczbę dni, które upłynęły od pierwszego dnia zbierania danych, oraz niektóre zmienne zastępcze, takie jak to, czy ten dzień jest Bożym Narodzeniem, a który dzień tygodnia itd.
Część moich danych wygląda następująco:
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
Mój plan polega na zastosowaniu modelu ARIMAX w celu dopasowania danych. Można to zrobić za pomocą funkcji Rauto.arima()
. Rozumiem, że muszę wstawić zmienne towarzyszące do xreg
argumentu, ale mój kod dla tej części zawsze zwraca błąd.
Oto mój kod:
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)
Komunikat o błędzie zwrócony przez R to:
Error in model.frame.default(formula = x ~ xreg, drop.unused.levels = TRUE)
:variable lengths differ (found for 'xreg')
Wiele się nauczyłem od Jak dopasować model ARIMAX do R? Ale nadal nie jestem bardzo jasny, jak ustawić zmienne towarzyszące lub manekiny w funkcji xreg
argumentu auto.arima()
.
źródło
diff
ts
auto.arima(diff(visits), xreg = xreg)
auto.arima
nrow