簡體   English   中英

用python放出周末和特定假期,計算兩個日期之間的工作日數

[英]Calculate the number of working days between two dates by exiling the weekends and specific holidays with python

我有一個存儲在 excel 文件中的假期列表。 我想通過忽略存儲在我的 excel 文件中的假期來計算兩個日期( date_1date_2 )之間的工作日數。

我試過np.busday_count但我不知道如何包含我的假期文件。 這是我的代碼:

claim=pd.read_excel("claim.xlsx")
Holydays=pd.read_excel("Holidays.xlsx")
claim.columns

claim["Resolved"] = pd.to_datetime(claim["Resolved"]).dt.strftime('%Y-%m-%d')
claim["Received_date"] = pd.to_datetime(claim["Received_date"]).dt.strftime('%Y-%m-%d')

#Je définie mes dates
date_1=claim["Received_date"]
date_2=claim["Resolved"]

#Calcul du nombre de jours entre la date et la date de résolution du dossier
claim["nb_jours"] = np.busday_count(date_1, date_2)

這應該可以解決問題:

import numpy as np

maskcal=np.busdaycalendar(
    holidays=[
         '2019-12-24', 
         '2020-01-01', 
         '2020-01-06', 
         '2020-01-10'
                     ])

diff_days=np.busday_count(
      '2019-12-20', '2020-01-20', 
         busdaycal=maskcal
)

輸出:

17

np.busdaycalendar適用於周末(即周六至周日)。 您只需要讀取您的 excel 文件,並將其格式化為datetime可讀格式的日期list

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM