我有一个电子表格,列出了不同学校的假期。下面是一个例子:
Labor Day Fall Break Veterans Day Random Holiday
DistrictA 9/2 10/14 11/11
DistrictB 9/2 10/13-10/14 11/11 12/17,12/19 假日可以是单个日期、范围(用连字符分隔)或多个日期(用逗号分隔)。
我正在尝试创建一个数组,其中给定了一个区域名称和一个日期,它将简单地返回这是否是假日(True/False)。
我所拥有的基础知识是:
import pandas as pd
vacation = pd.read_excel("Vacations.xlsx")
v = {}
for index, row in vacation.iterrows():
v[row[0]] = row.values.tolist()[1:]
print(v)这将创建一个字典,其中键是地区名称,值是时间范围值的数组(datetime对象、Timestamp对象、字符串(如果日期是范围或倍数)、nan (不是#)或NaT (不是时间))
我的一个想法是遍历每个日期值,并将日期追加到一个新列表中。举个例子:
'DistrictA': [datetime.datetime(2019,9,2), '10/13-10/15', Timestamp('2019-11-11 00:00:00')]会变成
'DistrictA': [datetime.datetime(2019,9,2), datetime.datetime(2019,10,13), datetime.datetime(2019,10,14), datetime.datetime(2019,10,15), datetime.datetime(2019,11,11)]但我相信有一个更好的方法。检查给定日期是否为假日的最佳方法是什么?
发布于 2020-04-17 06:57:10
似乎已使用pandas.tseries.holiday https://stackoverflow.com/a/24645696/5298555进行了应答
https://stackoverflow.com/questions/61261295
复制相似问题