pandas date_range 不排除节假日
pandas date_range does not exclude holidays
我一直试图从我的 pandas bdate_range 结果中排除一组日期,但由于某些原因它们不断出现。
我正在关注这里的注释 https://pandas.pydata.org/docs/reference/api/pandas.bdate_range.html,即应用 bdate_range 和 freq='C' 。我认为我从列表中排除的设置不正确,但是当脚本为 运行.
时我没有看到任何错误抛出
示例代码如下。有谁能看到我做错了什么?宁愿 bdate_range 工作而不是放置某种解决方法
import pandas as pd
import datetime
exclude = [pd.datetime(2020, 1, 7), pd.datetime(2020, 1, 27)]
pd.bdate_range('2020/1/1','2020/1/31',freq='C', holidays=exclude, )
结果仍然包括我试图排除的第 7 和第 27 个
DatetimeIndex(['2020-01-01', '2020-01-02', '2020-01-03', '2020-01-06',
'2020-01-07', '2020-01-08', '2020-01-09', '2020-01-10',
'2020-01-13', '2020-01-14', '2020-01-15', '2020-01-16',
'2020-01-17', '2020-01-20', '2020-01-21', '2020-01-22',
'2020-01-23', '2020-01-24', '2020-01-27', '2020-01-28',
'2020-01-29', '2020-01-30', '2020-01-31'],
dtype='datetime64[ns]', freq='C')
也尝试过按照建议使用 from datetime,但结果相同
你确定你正在执行你在这里与我们分享的同一件事吗?我只是 运行 你的代码,它似乎排除了你提到的日期:
DatetimeIndex(['2020-01-01', '2020-01-02', '2020-01-03', '2020-01-06',
'2020-01-08', '2020-01-09', '2020-01-10', '2020-01-13',
'2020-01-14', '2020-01-15', '2020-01-16', '2020-01-17',
'2020-01-20', '2020-01-21', '2020-01-22', '2020-01-23',
'2020-01-24', '2020-01-28', '2020-01-29', '2020-01-30',
'2020-01-31'],
dtype='datetime64[ns]', freq='C')
如果您收到弃用警告,请不要使用 pd.datetime
,而是使用 from datetime import datetime
.
从它自己的库中导入它
而不是
import datetime
做
from datetime import datetime
而不是
exclude = [pd.datetime(2020, 1, 7), pd.datetime(2020, 1, 27)]
做
exclude = [datetime(2020, 1, 7), datetime(2020, 1, 27)]
我一直试图从我的 pandas bdate_range 结果中排除一组日期,但由于某些原因它们不断出现。
我正在关注这里的注释 https://pandas.pydata.org/docs/reference/api/pandas.bdate_range.html,即应用 bdate_range 和 freq='C' 。我认为我从列表中排除的设置不正确,但是当脚本为 运行.
时我没有看到任何错误抛出示例代码如下。有谁能看到我做错了什么?宁愿 bdate_range 工作而不是放置某种解决方法
import pandas as pd
import datetime
exclude = [pd.datetime(2020, 1, 7), pd.datetime(2020, 1, 27)]
pd.bdate_range('2020/1/1','2020/1/31',freq='C', holidays=exclude, )
结果仍然包括我试图排除的第 7 和第 27 个
DatetimeIndex(['2020-01-01', '2020-01-02', '2020-01-03', '2020-01-06',
'2020-01-07', '2020-01-08', '2020-01-09', '2020-01-10',
'2020-01-13', '2020-01-14', '2020-01-15', '2020-01-16',
'2020-01-17', '2020-01-20', '2020-01-21', '2020-01-22',
'2020-01-23', '2020-01-24', '2020-01-27', '2020-01-28',
'2020-01-29', '2020-01-30', '2020-01-31'],
dtype='datetime64[ns]', freq='C')
也尝试过按照建议使用 from datetime,但结果相同
你确定你正在执行你在这里与我们分享的同一件事吗?我只是 运行 你的代码,它似乎排除了你提到的日期:
DatetimeIndex(['2020-01-01', '2020-01-02', '2020-01-03', '2020-01-06',
'2020-01-08', '2020-01-09', '2020-01-10', '2020-01-13',
'2020-01-14', '2020-01-15', '2020-01-16', '2020-01-17',
'2020-01-20', '2020-01-21', '2020-01-22', '2020-01-23',
'2020-01-24', '2020-01-28', '2020-01-29', '2020-01-30',
'2020-01-31'],
dtype='datetime64[ns]', freq='C')
如果您收到弃用警告,请不要使用 pd.datetime
,而是使用 from datetime import datetime
.
而不是
import datetime
做
from datetime import datetime
而不是
exclude = [pd.datetime(2020, 1, 7), pd.datetime(2020, 1, 27)]
做
exclude = [datetime(2020, 1, 7), datetime(2020, 1, 27)]