首页 > 解决方案 > 有没有办法让频率包括工作日但在 Python 中没有(美国)假期?

问题描述

我试图pandas.DataFrame在 2017 年生成所有“交易日”,基本上是工作日减去假期。或者,我可以制作一个list(从另一个pandas.DataFrame,称为 'dates' 以供争论。)并传递它,但不太确定如何传递。

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

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

标签: pythonpandasdatetime-seriesfrequency

解决方案


干得好。这将取消自定义工作日的所有假期。

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

推荐阅读