我的数据框中有两列in_date和out_date。我需要检查在给定的两个日期之间是否有周末(星期六,星期日)?
Input
df['in_date'] df['out_date']
04/04/19 08/04/19
01/05/19 03/05/19
01/05/19 06/05/19
Expected Output
df['in_date'] df['out_date'] df['Weekend]
04/04/19 08/04/19 Y
01/05/19 03/05/19 N
01/05/19 06/05/19 Y
我可以使用以下代码获得工作日:
pd.to_datetime(df['checkin_date'],format='%d/%m/%y').dt.dayofweek
但是无法找到检查周末是否在给定日期之间的逻辑。 谁能帮我实现上述逻辑。谢谢。
答案 0 :(得分:4)
这是一种方法。希望有人能发布更短,更好的内容:
((pd.to_datetime(df['out_date'],format='%d/%m/%y') - pd.to_datetime(df['in_date'],format='%d/%m/%y')).dt.days + pd.to_datetime(df['in_date'],format='%d/%m/%y').dt.dayofweek) > 4