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

Python의 시계열 예측 팁

PHPz
풀어 주다: 2023-06-10 08:10:44
원래의
1751명이 탐색했습니다.

데이터 시대가 도래하면서 분석과 예측을 위해 수집되고 활용되는 데이터가 점점 더 많아지고 있습니다. 시계열 데이터는 시간을 기준으로 한 일련의 데이터를 포함하는 일반적인 데이터 유형입니다. 이러한 유형의 데이터를 예측하는 데 사용되는 방법을 시계열 예측 기술이라고 합니다. 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿