调整Pandas中的datetime以获得CustomBusinessW

2024-09-28 23:32:54 发布

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

我有一个很长的股票日价格系列,我试图得到一周的价格做一些计算。我已经阅读了文件,我看到你可以得到一个星期的具体日期,这是我想要的。这是假设股票是我运行的循环的一部分的代码。你知道吗

df_clean_BW[WEEKLY_PricesFriday'] = stock.resample('W-FRI').last()

但对美国股市来说,有很多天是周五的假期,所以我看到你可以调整这个假期。这就是我使用的代码

from pandas.tseries.offsets import CustomBusinessDay
from pandas.tseries.holiday import USFederalHolidayCalendar
bday_us = CustomBusinessDay(calendar=USFederalHolidayCalendar())

但是我不知道如何把这两者结合起来,这样如果星期五有假期就可以在前一天(改为星期四)放假。所以像这样的东西,但这抛出了一个错误

df_clean_BW[WEEKLY_PricesFriday'] = stock.resample('W-FRI' & bday_us).last()

我有一个很长的日期列表,所以我不想创建一个例外日期列表,因为这太长了。下面是我想要的输出示例。在这种情况下,2016年1月1日是星期五,所以我只想以2015年12月31日为准。这一定是一个常见的要求,任何人谁看股票数据,但我不能想出一个办法来做。你知道吗

Date         Price     Week Price
12/30/2015  103.3227
12/31/2015  101.3394
1/4/2016    101.426    101.3394   << Take 12/31 as 1.1 is holiday
1/5/2016    98.8844 
1/6/2016    96.9492 
1/7/2016    92.8575 
1/8/2016    93.3485     93.3485

Tags: 代码fromcleanpandasdfstock价格股票