Pandas에서 BusinessDay.freqstr 속성을 사용하면 주어진 BusinessDay 오프셋 객체에 적용된 빈도를 문자열 형태로 손쉽게 확인할 수 있습니다. 이 속성은 날짜 오프셋의 빈도 정보를 사람이 읽기 쉬운 문자열로 반환해 주기 때문에, 시계열 데이터를 다룰 때 유용하게 활용됩니다.
필수 라이브러리 가져오기
먼저 필요한 라이브러리를 임포트합니다.
import datetime import pandas as pd
타임스탬프 생성
Pandas에서 타임스탬프 객체를 설정합니다.
timestamp = pd.Timestamp('2021-1-1 01:55:02.000045')BusinessDay 오프셋 생성
BusinessDay는 DateOffset의 하위 클래스입니다. 여기서는 7일 7시간 7분의 오프셋을 가지는 BusinessDay 객체를 생성합니다.
bdOffset = pd.tseries.offsets.BusinessDay(offset = datetime.timedelta(days = 7, hours = 7, minutes = 7))
업데이트된 타임스탬프 확인
생성한 오프셋을 원래 타임스탬프에 더하면 새로운 날짜가 계산됩니다.
print("\nUpdated Timestamp...\n", timestamp + bdOffset)적용된 빈도를 문자열로 반환
주어진 BusinessDay 객체에 적용된 빈도를 문자열로 출력합니다.
print("\nFrequency on the given BusinessDay Offset...\n", bdOffset.freqstr)전체 예제 코드
다음은 위 과정을 모두 포함한 전체 코드입니다.
import datetime
import pandas as pd
# Pandas에서 타임스탬프 객체 설정
timestamp = pd.Timestamp('2021-1-1 01:55:02.000045')
# 타임스탬프 출력
print("Timestamp...\n", timestamp)
# BusinessDay 오프셋 생성
# BusinessDay는 DateOffset의 하위 클래스입니다
bdOffset = pd.tseries.offsets.BusinessDay(offset = datetime.timedelta(days = 7, hours = 7, minutes = 7))
# BusinessDay 오프셋 출력
print("BusinessDay Offset...\n", bdOffset)
# 업데이트된 타임스탬프 출력
print("\nUpdated Timestamp...\n", timestamp + bdOffset)
# 주어진 BusinessDay 객체에 적용된 빈도를 문자열로 반환
print("\nFrequency on the given BusinessDay Offset...\n", bdOffset.freqstr)실행 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
Timestamp... 2021-01-01 01:55:02.000045 BusinessDay Offset... <BusinessDay: offset=datetime.timedelta(days=7, seconds=25620)> Updated Timestamp... 2021-01-11 09:02:02.000045 Frequency on the given BusinessDay Offset... B+7D7H7Min
정리
실행 결과를 보면, freqstr 속성이 B+7D7H7Min이라는 문자열을 반환한 것을 확인할 수 있습니다. 이는 영업일(B) 기준에 7일, 7시간, 7분의 추가 오프셋이 적용되었음을 의미합니다. 또한 원래 타임스탬프인 2021년 1월 1일에 오프셋을 적용하면 2021년 1월 11일 09:02:02로 계산된 것을 볼 수 있습니다. 이처럼 freqstr 속성을 활용하면 복잡한 날짜 오프셋의 빈도 구성을 한눈에 파악할 수 있습니다.