[파이썬기초] 시계열 데이터 생성하기
2020. 4. 13. 10:48ㆍ노트/Python : 프로그래밍
시계열 데이터 생성
# 시계열 데이터 생성
import pandas as pd
data_ix = pd.date_range("2020/04/13",periods=5,freq="D") #일
>>>DatetimeIndex(['2020-04-13', '2020-04-14', '2020-04-15', '2020-04-16',
'2020-04-17'],
dtype='datetime64[ns]', freq='D')
data_ix = pd.date_range("2020/04/13",periods=5,freq="M") #월
>>>DatetimeIndex(['2020-04-30', '2020-05-31', '2020-06-30', '2020-07-31',
'2020-08-31'],
dtype='datetime64[ns]', freq='M')
data_ix = pd.date_range("2020/04/13",periods=5,freq="Y") #년
>>>DatetimeIndex(['2020-12-31', '2021-12-31', '2022-12-31', '2023-12-31',
'2024-12-31'],
dtype='datetime64[ns]', freq='A-DEC')
data_ix = pd.date_range("2020/04/13",periods=5,freq="H") #시
>>>DatetimeIndex(['2020-04-13 00:00:00', '2020-04-13 01:00:00',
'2020-04-13 02:00:00', '2020-04-13 03:00:00',
'2020-04-13 04:00:00'],
dtype='datetime64[ns]', freq='H')
- data_range("시작일" , periods= 기간 , freq="단위")
시계열 데이터 보간하기
data_ix2 = pd.date_range("2020/04/01",periods=30,freq="D")
data.reindex(data_ix2)
ffill, bfill 메소드
data.reindex(data_ix2, method="ffill") # 마지막 값으로 다음 시점 결측치 보간
data.reindex(data_ix2, method="bfill") # 첫번째 값으로 이전 시점 결측치 보간
data.reindex(data_ix2, fill_value=0) # 결측치 0으로 보간
interpolate() 함수
예제 데이터 생성
import pandas as pd
import numpy as np
from datetime import datetime
dateStr = ["2020/1/13","2020/1/16","2020/1/17","2020/1/20"]
date = pd.to_datetime(dateStr)
date
>>> DatetimeIndex(['2020-01-13', '2020-01-16', '2020-01-17', '2020-01-20'], dtype='datetime64[ns]', freq=None)
ts=pd.Series([1,np.nan,np.nan,10],index=date)
ts
>>> 2020-01-13 1.0
2020-01-16 NaN
2020-01-17 NaN
2020-01-20 10.0
dtype: float64
ts.interpolate() # 선형적으로 비례하여 결측값 보간
>>> 2020-01-13 1.0
2020-01-16 4.0
2020-01-17 7.0
2020-01-20 10.0
dtype: float64
ts.interpolate(method = "time") # 시간을 기준으로 결측값 보간
>>> 2020-01-13 1.000000
2020-01-16 4.857143
2020-01-17 6.142857
2020-01-20 10.000000
dtype: float64
ts.interpolate(method = "time", limit = 1) # limit : 결측값 제한
>>> 2020-01-13 1.000000
2020-01-16 4.857143
2020-01-17 NaN
2020-01-20 10.000000
dtype: float64
'노트 > Python : 프로그래밍' 카테고리의 다른 글
[파이썬기초] 데이터 합치기(병합) (0) | 2020.04.13 |
---|---|
[파이썬기초] 문자열(str) 데이터 다루기 (0) | 2020.04.13 |
[토픽모델링] LSA (Latent Similarity Analysis)를 이용한 토픽모델링 파이썬 코드 (1) | 2020.04.09 |
[추천시스템] 넷플릭스 영화 추천 시스템 구현 파이썬 코드 (13) | 2020.04.08 |
[파이썬기초] 데이터전처리 중복값 처리 (0) | 2020.04.07 |