In Teil 3.1 Wir haben begonnen, zu diskutieren, wie die Zeitreihendaten in Pattern-, Saisonalitäts- und Restkomponenten zerlegt werden. Da es sich um eine glättungsbasierte Technik handelt, müssen wir für STL eine harte Schätzung des Traits und der Saisonalität benötigen, um eine Glättung durchzuführen.

Zu diesem Zweck haben wir eine grobe Schätzung eines Traits berechnet, indem wir ihn unter Verwendung der zentrierten Transferring -Durchschnittsmethode berechnet haben, und dann mit diesem anfänglichen Pattern die anfängliche Saisonalität berechnet. (Eine detaillierte Mathematik wird in erörtert Teil 3.1)

In diesem Teil implementieren wir die LOESS (lokal geschätzte Streuplot -Glättung) Methode Als nächstes den letzten Pattern und die saisonalen Komponenten der Zeitreihe.

Am Ende von Teil 3.1 haben wir folgende Daten:

Tabelle: Zentrierte saisonale Werte aus Teil 3.1

Da wir die zentrierte saisonale Komponente haben, besteht der nächste Schritt darin, dies von der ursprünglichen Zeitreihe abzuziehen, um die deseasonalisierte Serie zu erhalten.

Tabelle: Deseasonalisierte Werte

Wir haben die Serie von Desesta -Werten erhalten und wissen, dass dies sowohl Pattern- als auch Restkomponenten enthält.

Jetzt wenden wir Löss (lokal geschätzte Streuplot -Glättung) in dieser descesaison -Serie an.

Hier wollen wir das Konzept und die Mathematik hinter der Lösungstechnik verstehen. Zu diesem Zweck betrachten wir einen einzelnen Datenpunkt aus der deseasonalisierten Serie und implementieren Sie die Lösungslösungen Schritt für Schritt und beobachten, wie sich der Wert ändert.


Bevor wir die Mathematik hinter der Löss verstehen, versuchen wir zu verstehen, was tatsächlich im Lösungs -Glättungsprozess getan wird.

Losse ist der Prozess ähnlich wie die einfache lineare Regression, aber der einzige Unterschied besteht darin, dass wir den Punkten Gewichte zuweisen, so dass die Punkte, die dem Zielpunkt näher sind, mehr Gewicht und weiter vom Zielpunkt entfernt werden.

Wir können es eine gewichtete einfache lineare Regression nennen.

Hier ist der Zielpunkt der Punkt, an dem die Lösungsglättung durchgeführt wird, und in diesem Prozess wählen wir einen Alpha -Wert, der zwischen 0 und 1 liegt.

Meistens verwenden wir 0,3 oder 0,5 als Alpha -Wert.

Nehmen wir beispielsweise an, Alpha = 0,3, was bedeutet, dass 30% der Datenpunkte in dieser Regression verwendet werden. Wenn wir 100 Datenpunkte haben, werden in diesem Glättungsprozess 15 Punkte vor dem Zielpunkt und 15 Punkte nach dem Zielpunkt (einschließlich Zielpunkt) verwendet.

Gleich wie bei einer einfachen linearen Regression passen wir in diesem Glättungsprozess eine Linie mit zusätzlichen Gewichten an die Datenpunkte.

Wir fügen den Datenpunkten Gewichte hinzu, da es der Linie hilft, sich an das lokale Verhalten der Daten anzupassen und Schwankungen oder Ausreißer zu ignorieren, da wir versuchen, die Trendkomponente in diesem Prozess abzuschätzen.

Jetzt haben wir die Idee, dass wir im Lösungsglättungsprozess eine Zeile passen, die am besten zu den Daten passt, und von diesem, dem wir den geglätteten Wert am Zielpunkt berechnen.

Als nächstes werden wir Loess -Glättung implementieren, indem wir als Beispiel einen einzelnen Punkt annehmen.


Versuchen wir zu verstehen, was tatsächlich in der Lösungsglättung getan wird, indem wir als Beispiel einen einzigen Punkt annehmen.

Betrachten Sie den 01.08.2010, hier beträgt der desesseinalisierte Wert 14751.02.

Um die Mathematik hinter LOESS leicht zu verstehen, sollten wir eine Zeitspanne von fünf Punkten betrachten.

Hier bedeutet die Spannweite von fünf Punkten, die Punkte, die dem Zielpunkt (1-8-2010) in der Nähe des Zielpunkts am nächsten sind.

Bild des Autors

Um im August 2010 Lösungsglättung zu demonstrieren, haben wir die Werte von Juni 2010 bis Oktober 2010 berücksichtigt.

Hier stammen die Indexwerte (ab Null) aus den Originaldaten.

Der erste Schritt bei der Loess -Glättung besteht darin, dass wir die Abstände zwischen dem Zielpunkt und den benachbarten Punkten berechnen.

Wir berechnen diesen Abstand basierend auf den Indexwerten.

Bild des Autors

Wir haben die Abstände berechnet und der maximale Abstand vom Zielpunkt ist ‚2‘.

Der nächste Schritt bei der Glättung von Lösern besteht nun darin, die Tricube -Gewichte zu berechnen. Los weist jedem Punkt auf der Grundlage der skalierten Abstände Gewichte zu.

Bild des Autors

Hier sind die Tricube -Gewichte für 5 Punkte (0,00, 0,66, 1,00, 0,66, 0,00).

Nachdem wir die Tricube -Gewichte berechnet haben, besteht der nächste Schritt darin, eine gewichtete einfache lineare Regression durchzuführen.

Die Formeln sind ähnlich wie SLR, wobei die üblichen Durchschnittswerte durch gewichtete Durchschnittswerte ersetzt werden.

Hier ist die vollständige Schritt -für -Schritt -Mathematik zur Berechnung des loess -geglätteten Wertes bei t = 7.

Bild des Autors
Bild des Autors

Hier beträgt die Schätzung des Lösungstrends im August 2010 14212,96, was geringer ist als der sessichtisierte Wert von 14751.02.

Wenn wir in unserem 5-Punkte-Fenster die Werte der benachbarten Monate sehen, können wir feststellen, dass die Werte abnehmen und der Wert im August wie ein plötzlicher Sprung aussieht.

LOESS versucht, eine Zeile anzupassen, die am besten zu den Daten passt, die den zugrunde liegenden lokalen Pattern darstellen. Es glättet scharfe Spikes oder Dips und gibt uns ein echtes lokales Verhalten der Daten.


So berechnet Löss den geglätteten Wert für einen Datenpunkt.

Für unseren Datensatz, wenn wir die STL -Dekomposition mit Python implementieren, kann der Alpha -Wert zwischen 0,3 und 0,5 basierend auf der Anzahl der Punkte im Datensatz liegen.

Wir können auch verschiedene Alpha -Werte ausprobieren und sehen, welche die Daten am besten darstellen, und wählen Sie die entsprechenden aus.

Dieser Vorgang wird für jeden Punkt in den Daten wiederholt.

Sobald wir die loess -geglättete Trendkomponente erhalten haben, wird sie von der Originalserie abgezogen, um Saisonalität und Rauschen zu isolieren.

Als nächstes folgen wir den gleichen Lösungsglättungsverfahren über saisonale Unterserien wie alle Januarare, Februars usw. (wie in Teil 3.1), um loess -geglättete saisonale Komponente zu erhalten.

Nachdem wir sowohl den loess geglätteten Pattern als auch die Saisonalitätskomponenten erhalten haben, subtrahieren wir sie von Originalserien, um den Relaxation zu erhalten.

Danach wird der gesamte Vorgang wiederholt, um die Komponenten weiter zu verfeinern, die loess -glättete Saisonalität wird von der Originalserie abgezogen, um einen loess -geglätteten Pattern zu finden, und dieser neue Lösungsstrend wird von der Originalserie abgehoben, um die Loess Smoothed Saisonalität zu finden.

Dies können wir als eine Iteration bezeichnen, und nach mehreren Iterationsrunden (10-15) werden die drei Komponenten stabilisiert und es gibt keine weitere Änderung und STL gibt den endgültigen Pattern, die Saisonalität und die Restkomponenten zurück.

Dies passiert, wenn wir den folgenden Code verwenden, um die STL -Dekoration auf dem Datensatz anzuwenden, um die drei Komponenten zu erhalten.

import pandas as pd
import matplotlib.pyplot as plt
from statsmodels.tsa.seasonal import STL

# Load the dataset
df = pd.read_csv("C:/RSDSELDN.csv", parse_dates=('Observation_Date'), dayfirst=True)
df.set_index('Observation_Date', inplace=True)
df = df.asfreq('MS')  # Guarantee month-to-month frequency

# Extract the time collection
collection = df('Retail_Sales')

# Apply STL decomposition
stl = STL(collection, seasonal=13)
end result = stl.match()

# Plot and save STL elements
fig, axs = plt.subplots(4, 1, figsize=(10, 8), sharex=True)

axs(0).plot(end result.noticed, coloration='sienna')
axs(0).set_title('Noticed')

axs(1).plot(end result.development, coloration='goldenrod')
axs(1).set_title('Pattern')

axs(2).plot(end result.seasonal, coloration='darkslategrey')
axs(2).set_title('Seasonal')

axs(3).plot(end result.resid, coloration='rebeccapurple')
axs(3).set_title('Residual')

plt.suptitle('STL Decomposition of Retail Gross sales', fontsize=16)
plt.tight_layout()

plt.present()
Bild des Autors

Datensatz: In diesem Weblog werden öffentlich verfügbare Daten von Fred (Wirtschaftsdaten der Federal Reserve) verwendet. Die Serie Voraussetzungen für den Einzelhandel: Kaufhäuser (RSDSELD) wird vom US Census Bureau veröffentlicht und kann zur Analyse und Veröffentlichung mit angemessenem Zitat verwendet werden.

Offizielles Zitat:
US Census Bureau, Voraussetzungen für den Einzelhandel: Kaufhäuser (Rsdseld), abgerufen von Fred, Federal Reserve Financial institution of St. Louis; https://fred.stlouisfed.org/collection/rsdseld7. Juli 2025.

Hinweis: Alle Bilder, sofern nicht anders angegeben, werden vom Autor.

Ich hoffe, Sie haben eine grundlegende Vorstellung davon, wie die STL -Zersetzung funktioniert, von der Berechnung des anfänglichen Traits und der Saisonalität bis hin zur Suche nach endgültigen Komponenten mithilfe von Loess -Glättung.

Als nächstes in der Serie diskutieren wir ‚Stationarität einer Zeitreihe ‚ ausführlich.

Danke fürs Lesen!

Von admin

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert