>백엔드 개발 >파이썬 튜토리얼 >Python의 시계열 데이터 분석 기술

Python의 시계열 데이터 분석 기술

PHPz
PHPz원래의
2023-06-10 16:00:081469검색

데이터 시대의 지속적인 발전과 함께 데이터 분석 능력은 다양한 산업 분야의 실무자들에게 기본 자질이 되었습니다. 데이터 분석 과정에서는 시계열 데이터 분석 기술이 특히 중요합니다. 현재 가장 핫한 프로그래밍 언어 중 하나인 Python은 시계열 데이터 분석 분야에서도 널리 사용되고 있습니다. 이 기사에서는 독자가 대규모 시계열 데이터를 보다 효율적으로 분석하고 처리하는 데 도움이 되는 몇 가지 일반적으로 사용되는 Python 시계열 데이터 분석 기술을 소개합니다.

1. 데이터 유형 소개

시계열 데이터는 일별 기온, 주가, 인구, 웹 사이트 클릭 수 등 시간 순서로 배열된 데이터의 집합입니다. Python에서는 시계열 데이터 분석 및 처리를 위해 Pandas 라이브러리와 Numpy 라이브러리를 사용할 수 있습니다. Pandas에서 가장 일반적으로 사용되는 데이터 구조는 Series와 DataFrame입니다. 여기서 Series는 하나의 데이터 열을 저장하는 데 사용되는 1차원 배열이고, DataFrame은 여러 열의 데이터를 저장하는 데 사용할 수 있는 2차원 테이블 데이터 구조입니다.

2. 데이터 로딩

분석에 앞서 먼저 외부에서 데이터를 얻어와서 로딩해야 합니다. Python의 Pandas 및 Numpy 라이브러리는 다양한 형식의 데이터를 읽는 여러 가지 방법을 제공합니다. 예를 들어 CSV 형식의 데이터를 읽어보세요.

import pandas as pd

data = pd.read_csv('data.csv')

또한 Pandas 라이브러리는 데이터를 CSV 형식 파일로 출력할 수 있는 DataFrame의 to_csv 메서드도 제공합니다.

data.to_csv('data.csv')

3. 데이터 정리

데이터 정리는 데이터 분석의 필수 단계입니다. 여기에는 더러운 데이터와 빈 데이터 제거, 데이터 유형 통합, 데이터 확인 등이 포함됩니다. 시계열 데이터 분석에서 데이터 정리에는 보간 및 기능 선택과 같은 작업이 필요할 수도 있습니다. Python에서는 Pandas가 제공하는 dropna 메소드를 사용하여 누락된 데이터를 삭제할 수 있습니다.

data = data.dropna()

또한 시계열 데이터의 경우 고정되지 않은 데이터 샘플은 바람직하지 않은 결과를 초래할 수 있습니다. 예를 들어 데이터가 계절적 추세를 나타내거나 데이터가 특정 값에 접근하기 때문에 전염병이 발생할 수 있습니다. 이때 시계열 데이터를 안정화하기 위해 Pandas의 롤링 방법을 사용하여 롤링 평균을 수행할 수 있습니다.

rolling_data = data.rolling(window=8, center=False).mean()

4. 데이터 분석

시계열 데이터 분석을 위해서는 데이터의 주기적인 추세를 파악하기 위해 데이터에 대한 주기적인 분석을 수행해야 합니다. Python에서는 fft 방법을 사용하여 데이터에 대해 푸리에 변환을 수행하고 데이터의 주파수와 진폭을 얻을 수 있습니다.

import numpy as np

Fs = 1000   #采样频率
Ts = 1.0 / Fs #采样周期
L = 1500   #数据长度
t = np.linspace(0.0, L*Ts, L, endpoint=False)
data = np.sin(10*np.pi*t) + 0.5*np.sin(50*np.pi*t)

N = len(data)
yf = np.fft.fft(data)
xf = np.linspace(0.0, 1.0/(2.0*Ts), N/2)

import matplotlib.pyplot as plt

plt.plot(xf, 2.0/N * np.abs(yf[0:N/2]))
plt.grid()
plt.show()

5. 데이터 시각화

데이터 시각화는 시계열 데이터 분석의 중요한 부분으로, 데이터를 우리 앞에 표시하고 데이터를 더 잘 이해하고 통찰력을 얻을 수 있도록 도와줍니다. Matplotlib 및 Seaborn과 같은 라이브러리와 같이 Python에서 사용할 수 있는 여러 시각화 도구가 있습니다. 이러한 도구를 사용하여 시계열 도표, 상자 도표, 히스토그램 그리기 등과 같은 시계열 데이터를 시각화할 수 있습니다.

import matplotlib.pyplot as plt
import seaborn as sns

# 时间序列图
sns.lineplot(x="year", y="volume_sold", data=df)

# 箱形图
sns.boxplot(x="day", y="tip", data=tips)

# 直方图
sns.distplot(df["age"])

6. 결론

시계열 데이터 분석에는 데이터 로딩, 데이터 정리, 데이터 분석 및 데이터 시각화와 같은 여러 측면이 포함됩니다. Python에서는 Pandas 및 Numpy와 같은 라이브러리를 사용하여 날짜 및 시계열 처리를 완료할 수 있습니다. 데이터 및 분석. 시계열 데이터 분석에 Python을 사용하면 데이터 분석가가 데이터의 동적 변화와 추세를 더 잘 파악하여 해당 데이터 분석 및 처리 계획을 보다 효율적으로 공식화하는 데 도움이 될 수 있습니다.

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

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