Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python Pandas - DateTimeIndex를 시간 단위로 반올림하는 방법

<시간/>

DateTimeIndex를 시간 단위로 반올림하려면 DateTimeIndex.round()를 사용하세요. 방법. 시간당 빈도의 경우 빈도 를 사용하십시오. 값이 'H'인 매개변수.

먼저 필요한 라이브러리를 가져옵니다 -

pandas를 pd로 가져오기

기간이 5이고 빈도가 T 즉 분 -

인 DatetimeIndex를 만듭니다.
datetimeindex =pd.date_range('2021-09-29 07:00', period=5, tz='Australia/Adelaide', freq='35T')

DateTimeIndex 표시 -

print("DateTimeIndex...\n", datetimeindex)

시간별 빈도로 DateTimeIndex 날짜에 대한 반올림 작업입니다. 시간당 빈도의 경우 'H' −

를 사용했습니다.
print("\n시간 단위로 라운드 연산 수행 중...\n",datetimeindex.round(freq='H'))

예시

다음은 코드입니다 -

판다를 pd# DatetimeIndex로 가져오기 기간은 5이고 빈도는 T 즉 분# timezone은 Australia/Adelaidedatetimeindex =pd.date_range('2021-09-29 07:00', period=5, tz='Australia/Adelaide입니다. ', freq='35T')# displayprint("DateTimeIndex...\n", datetimeindex)# 시간 가져오기res =datetimeindex.hour# 시간만 표시합니다.print("\nDateTimeIndex의 시간...\n", res )# DateTimeIndex 날짜에 시간 간격으로 반올림 연산# 시간 간격으로 'H'print("\nPerforming round operation with hourly frequency...\n",datetimeindex.round(freq='H')) 

출력

이것은 다음 코드를 생성합니다 -

DateTimeIndex...DatetimeIndex(['2021-09-29 07:00:00+09:30', '2021-09-29 07:35:00+09:30','2021-09-29 08:10:00+09:30', '2021-09-29 08:45:00+09:30','2021-09-29 09:20:00+09:30'],dtype='datetime64 [ns, Australia/Adelaide]', freq='35T') DateTimeIndex...Int64Index([7, 7, 8, 8, 9], dtype='int64')부터 시간 단위로 라운드 연산을 수행합니다. .DatetimeIndex(['2021-09-29 07:00:00+09:30', '2021-09-29 08:00:00+09:30','2021-09-29 08:00:00+ 09:30', '2021-09-29 09:00:00+09:30','2021-09-29 09:00:00+09:30'],dtype='datetime64[ns, 호주/애들레이드 ]', freq=없음)