【问题标题】:Flag holidays in DataFrame on python3在 python3 上的 DataFrame 中标记假期
【发布时间】:2020-02-28 22:19:24
【问题描述】:

我有一个带有时间戳和一组假期日期时间的 pandas DataFrame

{datetime.date(2016, 1, 1), datetime.date(2016, 3, 25), datetime.date(2016, 3, 27), datetime.date(2016, 3, 28), datetime.date(2016, 5, 2), datetime.date(2016, 5, 30), datetime.date(2016, 8, 29), datetime.date(2016, 12, 25), datetime.date(2016, 12, 26), datetime.date(2016, 12, 27)}

我想标记是否是假期。如果你能教我如何做到这一点,那就太好了。谢谢!

    timestamp
0   2016-01-01 00:00:00
1   2016-01-01 00:00:00
2   2016-01-01 00:00:00
3   2016-01-01 00:00:00
4   2016-01-01 00:00:00
... ...
20216095    2016-12-31 23:00:00
20216096    2016-12-31 23:00:00
20216097    2016-12-31 23:00:00
20216098    2016-12-31 23:00:00
20216099    2016-12-31 23:00:00

【问题讨论】:

    标签: python-3.x pandas dataframe timestamp time-series


    【解决方案1】:

    确保timestamp 列的类型为日期时间,然后使用date 与假期集进行比较。

    df['timestamp'] = pd.to_datetime(df['timestamp'])
    df['holidays'] = pd.np.where(df['timestamp'].dt.date.isin(holidays), 1, 0)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-02
      • 1970-01-01
      • 2022-01-03
      • 1970-01-01
      • 1970-01-01
      • 2019-10-05
      • 2016-10-02
      • 2020-10-18
      相关资源
      最近更新 更多