Python 문법/Pandas_Dates and Times
[Dates and times](3) : pd.DatetimeIndex(), pd.date_range(), pd.timedelta_range()
jasonshin
2021. 11. 23. 12:49
시작일과 종료일을 세팅하면 알아서 날짜를 채워준다.
pd.date_range('2021-11-12', '2021-12-29' )
DatetimeIndex(['2021-11-12', '2021-11-13', '2021-11-14', '2021-11-15',
'2021-11-16', '2021-11-17', '2021-11-18', '2021-11-19',
'2021-11-20', '2021-11-21', '2021-11-22', '2021-11-23',
'2021-11-24', '2021-11-25', '2021-11-26', '2021-11-27',
'2021-11-28', '2021-11-29', '2021-11-30', '2021-12-01',
'2021-12-02', '2021-12-03', '2021-12-04', '2021-12-05',
'2021-12-06', '2021-12-07', '2021-12-08', '2021-12-09',
'2021-12-10', '2021-12-11', '2021-12-12', '2021-12-13',
'2021-12-14', '2021-12-15', '2021-12-16', '2021-12-17',
'2021-12-18', '2021-12-19', '2021-12-20', '2021-12-21',
'2021-12-22', '2021-12-23', '2021-12-24', '2021-12-25',
'2021-12-26', '2021-12-27', '2021-12-28', '2021-12-29'],
dtype='datetime64[ns]', freq='D')
시작일, 종료일, 주기도 세팅할 수 있다.
# 한시간 단위
pd.date_range('2021-11-12', '2021-12-29', freq='H')
DatetimeIndex(['2021-11-12 00:00:00', '2021-11-12 01:00:00',
'2021-11-12 02:00:00', '2021-11-12 03:00:00',
'2021-11-12 04:00:00', '2021-11-12 05:00:00',
'2021-11-12 06:00:00', '2021-11-12 07:00:00',
'2021-11-12 08:00:00', '2021-11-12 09:00:00',
...
'2021-12-28 15:00:00', '2021-12-28 16:00:00',
'2021-12-28 17:00:00', '2021-12-28 18:00:00',
'2021-12-28 19:00:00', '2021-12-28 20:00:00',
'2021-12-28 21:00:00', '2021-12-28 22:00:00',
'2021-12-28 23:00:00', '2021-12-29 00:00:00'],
dtype='datetime64[ns]', length=1129, freq='H')
# 주단위
pd.date_range('2021-11-12', '2021-12-29', freq='W')
DatetimeIndex(['2021-11-14', '2021-11-21', '2021-11-28', '2021-12-05',
'2021-12-12', '2021-12-19', '2021-12-26'],
dtype='datetime64[ns]', freq='W-SUN')
# 매수 수요일 단위로
pd.date_range('2021-11-12', '2021-12-29', freq='W-Wed')
tetimeIndex(['2021-11-17', '2021-11-24', '2021-12-01', '2021-12-08',
'2021-12-15', '2021-12-22', '2021-12-29'],
dtype='datetime64[ns]', freq='W-WED')
# 시작일만 정하고, 개수표시, 주기표시 할 수도 있다.
pd.date_range('2021-11-07', periods=10, freq='M')
DatetimeIndex(['2021-11-30', '2021-12-31', '2022-01-31', '2022-02-28',
'2022-03-31', '2022-04-30', '2022-05-31', '2022-06-30',
'2022-07-31', '2022-08-31'],
dtype='datetime64[ns]', freq='M')
# 월초로
pd.date_range('2021-11-07', periods=10, freq='MS')
# 연말로
pd.date_range('2021-11-07', periods=10, freq='Y')
# 연초로
pd.date_range('2021-11-07', periods=10, freq='YS')
# 일하는 날짜로
pd.date_range('2021-11-07', periods=100, freq='B')
timedelta_range()
pd.timedelta_range(0, periods=10, freq='2H30T')
TimedeltaIndex(['0 days 00:00:00', '0 days 02:30:00', '0 days 05:00:00',
'0 days 07:30:00', '0 days 10:00:00', '0 days 12:30:00',
'0 days 15:00:00', '0 days 17:30:00', '0 days 20:00:00',
'0 days 22:30:00'],
dtype='timedelta64[ns]', freq='150T')
반응형