【问题标题】:How To Identify days before and after a holiday within pandas?如何识别熊猫假期前后的日子?
【发布时间】:2023-03-26 14:50:01
【问题描述】:

目标:通过二进制化的方式识别节前2天和节后3天。

详细信息:具体来说,我正在尝试使用 TRUE 或 FALSE 获取 df['is_2_days_before'] 和 df['is_3_days_after'] 的结果。

import pandas as pd
from pandas.tseries.holiday import USFederalHolidayCalendar as calendar

dr = pd.date_range(start='2015-07-01', end='2015-07-31')
df = pd.DataFrame()
df['Date'] = dr

cal = calendar()
holidays = cal.holidays(start=dr.min(), end=dr.max())

df['holiday'] = df['Date'].isin(holidays)
df

上面的代码只是识别哪些日期是假期。

任何帮助将不胜感激。

【问题讨论】:

    标签: python-3.x pandas date


    【解决方案1】:

    我们只需要使用DateOffset

    df['2 day before holiday'] = df['Date'].isin(holidays-pd.DateOffset(2))
    df['3 day after holiday'] = df['Date'].isin(holidays+pd.DateOffset(3))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-09-03
      • 2020-05-25
      • 2018-12-12
      • 1970-01-01
      • 2021-05-09
      • 2019-05-20
      • 2019-05-08
      • 1970-01-01
      相关资源
      最近更新 更多