有没有办法让Python中的频率包括工作日但没有(美国)假日?

2024-05-15 11:07:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图生成一个^{cd1>,其中包含2017年所有的“交易日”,基本上是营业日减去假期。或者,我可以制作^{cd2>}(从另一个^{cd1>},为参数名为“date”),并传递该参数,但不确定如何传递。

下面是我当前正在生成的代码,但包括假期。

new_fut = pd.DataFrame(pd.date_range(start = '2017-1-1', end = '2018-1-1',  freq = 'b'), columns = ['ds'])

Tags: 代码dataframenew参数daterangestartend
3条回答

Pandas支持定制假期,还内置了一个美国联邦假日日历,可能会满足您的需要。在

您可以在这里找到更多:

http://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html

向下滚动到假日/假日日历 在DateOffset对象下

给你。这将从定制工作日起取消所有假期。在

import pandas as pd
from pandas.tseries.holiday import USFederalHolidayCalendar
from pandas.tseries.offsets import CustomBusinessDay
start ='2017-1-1'
end = '2018-1-1'
us_bd = CustomBusinessDay(calendar=USFederalHolidayCalendar())
df=pd.DatetimeIndex(start=start,end=end, freq=us_bd)

df

检查bdate_range和您的自定义假日列表(yourlist

pd.bdate_range(start='2017-1-1', end='2018-1-1',holidays = yourlist)

相关问题 更多 >