Pandas에서 timedelta.ceil() 메서드를 사용하면 지정된 해상도로 올림(ceil) 처리된 새로운 Timedelta 객체를 반환할 수 있습니다. 분(minute) 단위로 올림하고 싶다면 freq 매개변수에 'T' 값을 설정하면 됩니다.
필요한 라이브러리 불러오기
먼저 필요한 라이브러리를 임포트합니다.
import pandas as pd
Timedelta 객체 생성
TimeDelta는 파이썬 표준 datetime 라이브러리의 timedelta와는 다른 방식으로 시간 간격을 표현합니다. 아래와 같이 Timedelta 객체를 생성해 보겠습니다.
timedelta = pd.Timedelta('2 days 10 hours 45 min 20 s')생성한 Timedelta 객체를 출력합니다.
print("Timedelta...\n", timedelta)분 단위 올림 해상도로 올림된 Timestamp를 반환합니다.
timedelta.ceil(freq='T')
전체 예제 코드
지금까지 설명한 내용을 하나의 코드로 정리하면 다음과 같습니다.
import pandas as pd
# TimeDelta는 파이썬 표준 datetime 라이브러리의 timedelta와 다른 방식으로 시간 간격을 표현합니다.
# Timedelta 객체 생성
timedelta = pd.Timedelta('2 days 10 hours 45 min 20 s')
# Timedelta 출력
print("Timedelta...\n", timedelta)
# 분 단위 올림 해상도로 올림된 Timestamp 반환
res = timedelta.ceil(freq='T')
# 올림된 Timestamp 출력
print("\nTimedelta (minutely ceiled)...\n", res)실행 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
Timedelta... 2 days 10:45:20 Timedelta (minutely ceiled)... 2 days 10:46:00
결과를 보면 원래 값 '2일 10시간 45분 20초'가 분 단위로 올림되어 '2일 10시간 46분 0초'로 변환된 것을 확인할 수 있습니다. 이처럼 ceil() 메서드는 초 단위의 나머지를 버리고 지정된 해상도의 다음 단위로 반올림(올림)할 때 유용하게 사용됩니다.