Daten mit Fourier-Analyse deseasonalisieren

8

Ich habe Daten, denen zwei Verhaltensweisen zugrunde liegen. Erstens gibt es eine Periodizität darin. Es sieht aus wie eine Sinuskurve. Zweitens weisen die Datenpunkte ein konstantes Wachstum auf. Wenn ich also 100 Datenpunkte ohne Wachstum habe, sieht es aus wie eine Sinuskurve. Aber aufgrund der Wachstumsrate darin. Es gibt eine Zunahme der Größe von Punkt 1 auf Punkt 100.

Ich bin mir nicht sicher, nach welchem ​​Begriff ich in Google suchen soll. Gibt es eine Methode für diese Art der Datenanalyse?

user1243255
quelle
Ähnlich wie bei stats.stackexchange.com/a/213455/17230 ? Harmonische Regression oder Regression mit Fourier-Begriffen, denke ich. Die Idee kann in verschiedenen Arten von Zeitreihenmodellen verwendet werden.
Scortchi - Monica wieder einsetzen
Kannst du eine Handlung posten? mehr Kontext?
Matthew Gunn

Antworten:

5

Der Begriff, den Sie suchen, ist "Trend- und Saisonzerlegung von Zeitreihen". Google dies.

Es gibt viele Ansätze. Wenn Sie wirklich nur 100 Punkte haben, funktioniert Fourier nicht sehr gut. Yule-Walker-basierte Ansätze funktionieren möglicherweise besser. Es gibt auch filterbasierte Ansätze. Zum Beispiel Google Bandpassfilter wie bpassm von Atlanta Fed. Die Idee ist, dass Sie verschiedene Frequenzkomponenten aus der Serie herausfiltern, so dass Niederfrequenz Trend, Mittelfrequenz das Signal und Hochfrequenz - Saisonalität usw. sind.

In diesem Matlab-Beispiel ist ein vollständiger Code enthalten . Es führt Sie Schritt für Schritt durch den Prozess des Deseasoning und funktioniert meiner Erfahrung nach recht gut für Wirtschaftsdaten

Aksakal
quelle
1
Ich liebe dieses Beispiel. Das ist es, wonach ich gesucht habe.
user1243255
6

Klassische auto-regressive Modelle können Zyklen verarbeiten! Yule (1927) und Walker (1931) haben vor langer Zeit die Periodizität von Sonnenflecken anhand einer Gleichung der folgenden Form modelliert:

yt+1=a+b1yt+b2yt1+ϵt+1

Sunspot-Aktivitäten werden in der Regel in 11-Jahres-Zyklen ausgeführt, und obwohl dies nicht sofort offensichtlich ist, kann die Einbeziehung von zwei automatisch regressiven Begriffen zu zyklischem Verhalten führen! Auto-regressive Modelle sind in der modernen Zeitreihenanalyse mittlerweile allgegenwärtig. Das US Census Bureau verwendet ein ARIMA-Modell , um die saisonale Anpassung zu berechnen.

Im Allgemeinen können Sie ein ARIMA- Modell anpassen , das Folgendes umfasst:

  • p Bestellen Sie automatisch regressive Begriffe (wie oben).
  • q gleitende Durchschnittsbedingungen bestellen
  • d Unterschiede (um die Daten stationär zu machen)

Wenn Sie in die Mathematik eintauchen , gibt es eine Beziehung zwischen ARIMA-Modellen und Darstellungen im Frequenzbereich mit einer Fourier-Transformation. Sie können einen stationären Zeitreihenprozess mithilfe eines automatisch regressiven Modells, eines gleitenden Durchschnittsmodells oder der spektralen Dichte darstellen.

Praktischer Weg nach vorne:

  1. Sie müssen zuerst eine stationäre Zeitreihe erhalten . Zum Beispiel beim Bruttoinlandsprodukt oder beim Gesamtverbrauch nehmen die Menschen normalerweise den Logarithmus und berechnen die erste Differenz. (Die Grundidee ist, dass die Verteilung über prozentuale Änderungen des über die Zeit unveränderlich ist.) Um eine stationäre Zeitreihe aus dem .C tΔctCt

Δct=logCtlogCt1
  1. Sobald Sie eine stationäre Zeitreihe haben, ist es einfach, ein automatisch regressives AR (n) -Modell anzupassen. Sie können einfach die kleinsten Quadrate machen. Für ein AR (2) -Modell können Sie die Regression ausführen.

yt=a+b1yt!+b2yt2+ϵt

Natürlich kann man ausgefallener werden, aber oft funktionieren einfache Dinge überraschend gut. Es gibt gut entwickelte Pakete für die Zeitreihenanalyse in R, EViews, Stata usw.

Matthew Gunn
quelle
3

Wenn es sich bei Ihren Daten um Zeitreihen handelt, sollten Sie sich mit der dreifachen exponentiellen Glättung befassen, die auch als Holt-Winters-Methode bezeichnet wird. Dies kann additive Saisonalität (bei der die saisonale Amplitude nicht mit dem Aufwärtstrend im Laufe der Zeit wächst) und multiplikative Saisonalität berücksichtigen . Hier ist der Unterschied:

additive vs multiplikative Saisonalität

In diesem Abschnitt wird in Hyndman u Athanasopoulos kostenlosen Online - Prognoselehrbuch , erklärt Holt-Winter. Hier ist die gesamte Taxonomie exponentieller Glättungsmethoden, basierend auf Gardner (2006, International Journal of Forecasting ) . Um tatsächlich eine solche Serie zu modellieren, zu extrahieren Trend, saisonale und Fehlerkomponenten und Prognose, empfehle ich die ets()Funktion im forecastPaket für R .

Stephan Kolassa
quelle