Ich habe monatliche Daten von 1993 bis 2015 und möchte diese Daten prognostizieren. Ich habe das tsoutliers-Paket verwendet, um die Ausreißer zu erkennen, aber ich weiß nicht, wie ich mit meinen Daten weiter prognostizieren soll.
Das ist mein Code:
product.outlier<-tso(product,types=c("AO","LS","TC"))
plot(product.outlier)
Dies ist meine Ausgabe vom tsoutliers-Paket
ARIMA(0,1,0)(0,0,1)[12]
Coefficients:
sma1 LS46 LS51 LS61 TC133 LS181 AO183 AO184 LS185 TC186 TC193 TC200
0.1700 0.4316 0.6166 0.5793 -0.5127 0.5422 0.5138 0.9264 3.0762 0.5688 -0.4775 -0.4386
s.e. 0.0768 0.1109 0.1105 0.1106 0.1021 0.1120 0.1119 0.1567 0.1918 0.1037 0.1033 0.1040
LS207 AO237 TC248 AO260 AO266
0.4228 -0.3815 -0.4082 -0.4830 -0.5183
s.e. 0.1129 0.0782 0.1030 0.0801 0.0805
sigma^2 estimated as 0.01258: log likelihood=205.91
AIC=-375.83 AICc=-373.08 BIC=-311.19
Outliers:
type ind time coefhat tstat
1 LS 46 1996:10 0.4316 3.891
2 LS 51 1997:03 0.6166 5.579
3 LS 61 1998:01 0.5793 5.236
4 TC 133 2004:01 -0.5127 -5.019
5 LS 181 2008:01 0.5422 4.841
6 AO 183 2008:03 0.5138 4.592
7 AO 184 2008:04 0.9264 5.911
8 LS 185 2008:05 3.0762 16.038
9 TC 186 2008:06 0.5688 5.483
10 TC 193 2009:01 -0.4775 -4.624
11 TC 200 2009:08 -0.4386 -4.217
12 LS 207 2010:03 0.4228 3.746
13 AO 237 2012:09 -0.3815 -4.877
14 TC 248 2013:08 -0.4082 -3.965
15 AO 260 2014:08 -0.4830 -6.027
16 AO 266 2015:02 -0.5183 -6.442
Ich habe auch diese Warnmeldungen.
Warning messages:
1: In locate.outliers.iloop(resid = resid, pars = pars, cval = cval, :
stopped when ‘maxit’ was reached
2: In locate.outliers.iloop(resid = resid, pars = pars, cval = cval, :
stopped when ‘maxit’ was reached
3: In locate.outliers.oloop(y = y, fit = fit, types = types, cval = cval, :
stopped when ‘maxit’ was reached
4: In arima(x, order = c(1, d, 0), xreg = xreg) :
possible convergence problem: optim gave code = 1
5: In auto.arima(x = c(5.77, 5.79, 5.79, 5.79, 5.79, 5.79, 5.78, 5.78, :
Unable to fit final model using maximum likelihood. AIC value approximated
Zweifel:
- Wenn ich mich nicht irre, entfernt das tsoutliers-Paket die erkannten Ausreißer und gibt uns durch die Verwendung des Datensatzes mit entfernten Ausreißern das beste für den Datensatz geeignete Arima-Modell. Ist es korrekt?
- Der Datensatz für die Anpassungsserie wird aufgrund der Entfernung der Pegelverschiebung usw. Um ein Vielfaches nach unten verschoben. Bedeutet dies nicht, dass die Ausgabe der Prognose sehr ungenau ist, wenn die Prognose für die angepasste Serie durchgeführt wird, da die neueren Daten bereits mehr als 12 sind, während die angepassten Daten sie auf etwa 7-8 verschieben.
- Was bedeutet Warnmeldung 4 und 5? Bedeutet dies, dass auto.arima mit der angepassten Serie nicht ausgeführt werden kann?
- Was bedeutet [12] in ARIMA (0,1,0) (0,0,1) [12]? Ist es nur meine Häufigkeit / Periodizität meines Datensatzes, die ich auf monatlich eingestellt habe? Und bedeutet das auch, dass meine Datenreihen auch saisonabhängig sind?
- Wie erkenne ich die Saisonalität in meinem Datensatz? Aus der Visualisierung des Zeitreihendiagramms kann ich keinen offensichtlichen Trend erkennen. Wenn ich die Zerlegungsfunktion verwende, wird davon ausgegangen, dass es einen saisonalen Trend gibt. Glaube ich also nur, was die Tsoutliers mir sagen, wo es saisonale Trends gibt, da es MA der Ordnung 1 gibt?
- Wie mache ich meine Prognosen mit diesen Daten weiter, nachdem ich diese Ausreißer identifiziert habe?
- Wie können diese Ausreißer in andere Prognosemodelle integriert werden - Exponential Smoothing, ARIMA, Strutural Model, Random Walk, Theta? Ich bin sicher, dass ich die Ausreißer nicht entfernen kann, da es zu einer Pegelverschiebung kommt. Wenn ich nur angepasste Seriendaten nehme, sind die Werte zu klein. Was kann ich also tun?
Muss ich diese Ausreißer als Regressor in der auto.arima für die Prognose hinzufügen? Wie funktioniert das dann?