본문 바로가기
카테고리 없음

시계열 데이터 분석 with pandas

by 문자메일 2019. 8. 12.

Time Series with Pandas

시계열 데이터 특성

ETS 모델

SMA, WMA, SES 모델

ARIMA 모델

 

시계열 데이터는 시간 데이터를 인덱스로 하는 연속된 데이터 입니다.

시간 데이터를 Python의 DateTime 타입으로 바꾸어 Pandas 가 제공하는 시계열 데이터를 처리하는 아래 기능들을 학습합니다.

DateTime 인덱스

Time Resampling

Time Shifts

Rolling and Expanding

 

DateTime Index

-time 또는 date 정보는 별개의 칼럼이기보다 인덱스인 경우가 많다.

-Pandas 에 내장된 기능들로 DateTime 인덱스를 생성하고 활용하는 방법을 다룬다.

 

Time Resampling

-시계열 데이터의 인덱스는 시, 분 등 작은 단위 DateTime 인덱스로 이뤄진 경우도 많다.

-더 넓은 주기로 데이터를 집계 해야 하는 경우 Time Resampling 이 필요하다.

-groupby 를 사용함으로써 Time Resampling 을 수행할 수는 있지만, 비즈니스 도메인에서 분기나 회계년도를 편리하게 처리할 방법은 못된다.

-Pandas는 이런 경우에 활용할 수 있는 frequency sampling 도구를 지원한다.

 

Time Shifting

시계열 분석 알고리즘을 사용하기 위해 데이터를 임의 시간만큼 앞 또는 뒤로 이동시켜야 할때가 있다.

pandas는 이런 경우에도 매우 쉬운 방법을 제공한다.

 

Rolling and Expanding

매일 수집한 데이터들에는 노이즈가 포함되기도 한다.

이럴 경우 데이터의 일반적인 트랜드를 구하기 위해 rolling mean (또는 moving average) 를 사용하기도 한다.

Pandas에 내장된 rolling 함수를 이용하면 주어진 시한 내 평균 (rolling mean) 등을 구할 수 있다.

임의 시간 간격의 window를 만들고 그 안에서 mean 같은 통계적 aggregation을 실행하면 된다.

댓글