Tipps zur Zeitreihenvorhersage in Python

PHPz
Freigeben: 2023-06-10 08:10:44
Original
1670 Leute haben es durchsucht

Mit Beginn des Datenzeitalters werden immer mehr Daten gesammelt und für Analysen und Vorhersagen verwendet. Zeitreihendaten sind ein allgemeiner Datentyp, der eine Reihe zeitbasierter Daten enthält. Die zur Vorhersage dieser Art von Daten verwendeten Methoden werden als Zeitreihenvorhersagetechniken bezeichnet. Python ist eine sehr beliebte Programmiersprache mit starker Unterstützung für Datenwissenschaft und maschinelles Lernen und daher auch ein sehr geeignetes Werkzeug für Zeitreihenprognosen.

In diesem Artikel werden einige häufig verwendete Techniken zur Zeitreihenvorhersage in Python vorgestellt und einige Beispiele für deren Verwendung in realen Projekten bereitgestellt.

  1. Stationäre Zeitreihen und Differenztechniken

Eine stationäre Zeitreihe bezieht sich auf eine Zeitreihe, deren statistische Merkmale im Laufe der Zeit schwanken und sich im Laufe der Zeit nicht ändern. In vielen Fällen sind Zeitreihendaten nicht stationär, das heißt, sie weisen Zeittrends und saisonale Komponenten auf. Um diese Daten in eine stationäre Zeitreihe umzuwandeln, können wir eine Differenzierungstechnik verwenden, die die Differenz zwischen zwei aufeinanderfolgenden Zeitpunkten berechnet. Die Pandas-Bibliothek in Python stellt Funktionen bereit, mit denen dieser Vorgang ausgeführt werden kann.

Hier ist ein Beispiel für die Verwendung der Differenzierungstechnik, um eine instationäre Zeitreihe in eine stationäre Zeitreihe umzuwandeln:

import pandas as pd

# 读取时间序列数据
data = pd.read_csv("time_series_data.csv", header=None)

# 对数据进行一阶差分
data_diff = data.diff().dropna()
Nach dem Login kopieren
  1. Gleitender Durchschnitt

Der gleitende Durchschnitt bezieht sich auf das Ersetzen der Originaldaten durch den Mittelwert der Daten innerhalb einer Zeitreihe Menge vorgegebener Zeiträume Methode für Werte im gleichen Zeitraum. Es kann mithilfe der Pandas-Bibliothek implementiert werden, die mit der Funktion Rolling() implementiert wird. Gleitende Durchschnitte sind nützlich, um Rauschen zu entfernen, Zeitreihen zu glätten und Trends und zyklische Komponenten (z. B. Saisonalität) zu entdecken.

Hier ist ein Beispielcode zur Verwendung des gleitenden Durchschnitts zur Vorhersage des nächsten Zeitreihenwerts:

import pandas as pd
import numpy as np

# 读取时间序列数据
data = pd.read_csv("time_series_data.csv", header=None)

# 使用5个数据点进行移动平均
rolling_mean = data.rolling(window=5).mean()[5:]

# 预测下一个时间步的值
last_value = data.values[-1][0]
prediction = np.mean(rolling_mean) + last_value
print(prediction)
Nach dem Login kopieren
  1. Autoregressiver gleitender Durchschnitt (ARIMA)

Autoregressiver gleitender Durchschnitt (ARIMA) ist ein häufig verwendetes Zeitreihen-Prognosemodell. Es handelt sich um ein lineares Modell, das aus einem autoregressiven Prozess und einem gleitenden Durchschnittsprozess besteht und mit der Funktion ARIMA() in der Statamod-Bibliothek in Python implementiert werden kann, die es uns ermöglicht, die Parameter der Stationarität und des gleitenden Durchschnitts von Zeitreihendaten anzugeben .

Hier ist der Beispielcode für die Zeitreihenvorhersage mit dem ARIMA-Modell:

from statsmodels.tsa.arima_model import ARIMA

# 读取时间序列数据
data = pd.read_csv("time_series_data.csv", header=None).values.flatten()

# 训练ARIMA模型
model = ARIMA(data, order=(2, 1, 0))
model_fit = model.fit(disp=0)

# 预测未来 n 个时间点的值
future_prediction = model_fit.predict(start=len(data), end=len(data)+n-1)
Nach dem Login kopieren

Zusammenfassung

Python verfügt über leistungsstarke Tools für die Zeitreihenanalyse und -prognose. Unter anderem können stationäre Zeitreihen und Differenztechniken instationäre Zeitreihen in stationäre Zeitreihen umwandeln. Der gleitende Durchschnitt ist eine weit verbreitete Glättungstechnik, um Rauschen zu reduzieren und Zeitreihen zu glätten. Der autoregressive gleitende Durchschnitt (ARIMA) ist ein häufig verwendetes Zeitreihenprognosemodell, das autoregressive und gleitende Durchschnitte verwendet.

Durch den Einsatz dieser Technologien können Sie unabhängigen und wiederholbaren Zeitreihenanalyse- und Prognosecode in Python schreiben, mit Anwendungsszenarien wie Aktienprognosen, Wettervorhersagen usw.

Das obige ist der detaillierte Inhalt vonTipps zur Zeitreihenvorhersage in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!