[python] 파이썬 workalendar를 사용하여 특정 날짜의 영업일들의 평균 간격 계산하기

workalendar는 파이썬 패키지로, 날짜와 관련된 작업을 수행하기 위한 풍부한 기능을 제공합니다. 이 패키지를 사용하여 특정 날짜의 영업일들의 평균 간격을 계산하는 방법을 알아보겠습니다.

필요한 패키지 설치하기

먼저, workalendar 패키지를 설치해야 합니다. 아래 명령어를 사용하여 설치할 수 있습니다:

pip install workalendar

코드 작성하기

다음은 workalendar 패키지를 사용하여 특정 날짜의 영업일들의 평균 간격을 계산하는 코드 예시입니다:

from datetime import date
from workalendar.registry import registry

# 특정 날짜 설정
start_date = date(2022, 1, 1)
end_date = date(2022, 12, 31)

# 영업일과 간격 저장을 위한 변수 초기화
total_days = 0
business_days = 0

# 모든 국가의 캘린더를 순회하면서 영업일과 간격 계산
for cal in registry:
    holidays = cal.holidays(start_date, end_date)
    for d in holidays:
        total_days += 1
        if cal.is_working_day(d):
            business_days += 1

# 평균 간격 계산
average_interval = total_days / business_days

# 결과 출력
print(f"평균 간격: {average_interval}일")

위 코드에서는 datetime 모듈의 date 클래스를 사용하여 특정 날짜를 설정하고, workalendar.registry 모듈의 registry 변수를 사용하여 모든 국가의 캘린더를 순회합니다. 이후, 각 국가별로 해당 날짜가 영업일인지 확인하고, 영업일인 경우 business_days 변수를 증가시킵니다. 최종적으로, 총 영업일 수를 총 일수로 나누어 평균 간격을 계산합니다.

실행 결과

위 예시 코드에서는 2022년 1월 1일부터 2022년 12월 31일까지의 영업일들의 평균 간격을 계산합니다. 해당 결과는 평균 간격: <계산된 값>일 형식으로 출력될 것입니다.

참고 자료