>백엔드 개발 >파이썬 튜토리얼 >Python의 시계열 예측 팁

Python의 시계열 예측 팁

PHPz
PHPz원래의
2023-06-10 08:10:441752검색

데이터 시대가 도래하면서 분석과 예측을 위해 수집되고 활용되는 데이터가 점점 더 많아지고 있습니다. 시계열 데이터는 시간을 기준으로 한 일련의 데이터를 포함하는 일반적인 데이터 유형입니다. 이러한 유형의 데이터를 예측하는 데 사용되는 방법을 시계열 예측 기술이라고 합니다. Python은 강력한 데이터 과학 및 기계 학습 지원을 갖춘 매우 인기 있는 프로그래밍 언어이므로 시계열 예측에도 매우 적합한 도구입니다.

이 기사에서는 Python에서 일반적으로 사용되는 시계열 예측 기술을 소개하고 실제 프로젝트에서 사용하는 몇 가지 예를 제공합니다.

  1. 정상 시계열 및 차분 기법

정상 시계열이란 통계적 특성이 시간이 지남에 따라 변동하고 시간이 지나도 변하지 않는 시계열을 말합니다. 많은 경우 시계열 데이터는 고정되어 있지 않습니다. 즉, 시간 추세와 계절 구성 요소가 있음을 의미합니다. 이 데이터를 고정 시계열로 변환하기 위해 두 연속 시점 간의 차이를 계산하는 차분 기법을 사용할 수 있습니다. Python의 pandas 라이브러리는 이 작업을 수행하는 데 사용할 수 있는 함수를 제공합니다.

다음은 차분 기술을 사용하여 비정상 시계열을 정상 시계열로 변환하는 예입니다.

import pandas as pd

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

# 对数据进行一阶差分
data_diff = data.diff().dropna()
  1. 이동 평균

이동 평균은 원본 데이터를 특정 범위 내 데이터의 평균으로 바꾸는 것을 의미합니다. 주어진 기간의 집합 동일한 기간의 값에 대한 방법입니다. Rolling() 함수로 구현된 pandas 라이브러리를 사용하여 구현할 수 있습니다. 이동 평균은 노이즈를 제거하고, 시계열을 평활화하고, 추세 및 순환(예: 계절성) 구성 요소를 찾는 데 유용합니다.

다음 시계열 값을 예측하기 위해 이동 평균을 사용하는 방법에 대한 샘플 코드는 다음과 같습니다.

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)
  1. 자동 회귀 이동 평균(ARIMA)

자동 회귀 이동 평균(ARIMA)은 일반적으로 사용되는 시계열 예측 모델입니다. 자동회귀 과정과 이동평균 과정으로 구성된 선형 모델로 Python의 statamod 라이브러리에 있는 ARIMA() 함수를 사용하여 구현할 수 있으며 시계열 데이터의 정상성과 이동평균 매개변수를 지정할 수 있습니다. .

다음은 ARIMA 모델을 사용한 시계열 예측을 위한 샘플 코드입니다.

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)

Summary

Python에는 시계열 분석 및 예측을 위한 강력한 도구가 있습니다. 그 중 고정 시계열과 차분 기법은 비정상 시계열을 고정 시계열로 변환할 수 있습니다. 이동 평균은 잡음을 줄이고 시계열을 평활화하기 위해 널리 사용되는 평활화 기술입니다. ARIMA(자기회귀 이동평균)는 자기회귀 및 이동평균을 사용하는 일반적으로 사용되는 시계열 예측 모델입니다.

이러한 기술을 사용하면 주식 예측, 일기 예보 등을 포함한 응용 시나리오를 사용하여 독립적이고 반복 가능한 시계열 분석 및 예측 코드를 Python으로 작성할 수 있습니다.

위 내용은 Python의 시계열 예측 팁의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.