如何减去日期列表中的周末?

时间:2019-01-20 07:22:07

标签: python pandas dataframe

我正在使用已加载csv文件及其日期的pandas数据框。可以说

Assigned Date 
1/15/2019

Resolved Date
1/20/2019

我正在计算差异

df0['ResDate']  = df0['Resolved Date'].apply(lambda t: pd.to_datetime(t).date())
df0['RepDate']  = df0['Assigned Date'].apply(lambda t: pd.to_datetime(t).date())
df0['Woda']=df0['ResDate']-df0['RepDate']

我得到了正确的区别,但是我需要在这个周末进行练习。

我该如何进行。

谢谢

2 个答案:

答案 0 :(得分:2)

使用numpy.busday_count

df0['Assigned Date'] = pd.to_datetime(df0['Assigned Date'])
df0['Resolved Date'] = pd.to_datetime(df0['Resolved Date'])

df0['Woda'] = [np.busday_count(b,a) for a, b in zip(df0['Resolved Date'],df0['Assigned Date'])]

答案 1 :(得分:0)

您可以使用datetime模块来查找两天之间的差额:

import datetime

d1 = datetime.datetime.strptime('2019-01-15', '%Y-%m-%d')
d2 = datetime.datetime.strptime('2019-01-20', '%Y-%m-%d')
diff_days = (d2 - d1).days
diff_weekdays = diff_days - (diff_days // 7) * 2

print(diff_weekdays)