Podczas przeprowadzania analizy interwencyjnej z wykorzystaniem danych szeregów czasowych (zwanych również przerwanymi szeregami czasowymi), jak tutaj omówiono , na przykład jednym z moich wymagań jest oszacowanie całkowitego zysku (lub straty) spowodowanego interwencją - tj. Liczby jednostek uzyskanych lub utraconych (zmienna Y ).
Nie do końca rozumiem, jak oszacować funkcję interwencji za pomocą funkcji filtrowania w obrębie R, podchodziłem do niej w sposób brutalny, mając nadzieję, że jest to wystarczająco ogólne, aby zadziałało w każdej sytuacji.
Powiedzmy, że biorąc pod uwagę dane
cds<- structure(c(2580L, 2263L, 3679L, 3461L, 3645L, 3716L, 3955L,
3362L, 2637L, 2524L, 2084L, 2031L, 2256L, 2401L, 3253L, 2881L,
2555L, 2585L, 3015L, 2608L, 3676L, 5763L, 4626L, 3848L, 4523L,
4186L, 4070L, 4000L, 3498L), .Dim = c(29L, 1L), .Dimnames = list(
NULL, "CD"), .Tsp = c(2012, 2014.33333333333, 12), class = "ts")
decydujemy, że najlepiej dopasowany model jest następujący, z funkcją interwencji jako
gdzieXtoznacza puls w październiku 2013 r.
fit4 <- arimax(log(cds), order = c(1,1,0),include.mean=FALSE,
xtransf = data.frame(Oct13 = 1*(seq_along(cds)==22)),
transfer = list(c(1,0))
,xreg=1*(seq_along(cds)==3))
fit4
# ARIMA(1,1,0)
# Coefficients:
# ar1 xreg Oct13-AR1 Oct13-MA0
# -0.0184 0.2718 0.4295 0.4392
# s.e. 0.2124 0.1072 0.3589 0.1485
# sigma^2 estimated as 0.02176: log likelihood=13.85
# AIC=-19.71 AICc=-16.98 BIC=-13.05
Mam dwa pytania:
1) Mimo, że różnicowaliśmy błędy ARIMA, aby ocenić funkcję interwencji, która następnie była technicznie odpowiednia przy użyciu zróżnicowanej serii jest coś, co musimy zrobić, aby „cofnąć” oszacowanie ω 0 lub δ z używając ▽ X t do X t ?
2) Jest to poprawne: W celu określenia wzmocnienia zabiegu, to wykonana interwencji z tych parametrów. Po mam m t wtedy porównać dopasowanych wartości od modelu fit4 (exp (), w celu odwrócenia log) Dośw (wartości w dopasowanych minus m t ) i określa, że w obserwowanym okresie interwencja spowodowało 3342.37 dodatkowych urządzeń.
Czy ten proces jest prawidłowy, aby ogólnie określić zysk na podstawie analizy interwencji?
int_vect1<-1*(seq_along(cds)==22)
wo<- 0.4392
delta<-0.4295
mt<-rep(0,length(int_vect1))
for (i in 1:length(int_vect1))
{
if (i>1)
{
mt[i]<-wo*int_vect1[i]+delta*mt[i-1]
}
}
mt
sum(exp(fitted(fit4)) - (exp(fitted(fit4) - mt)))