Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 调整Pandas中的datetime以获得CustomBusinessWeek_Python_Pandas_Datetime - Fatal编程技术网

Python 调整Pandas中的datetime以获得CustomBusinessWeek

Python 调整Pandas中的datetime以获得CustomBusinessWeek,python,pandas,datetime,Python,Pandas,Datetime,我有一个很长的股票日价格序列,我试图得到一周的价格做一些计算。我一直在阅读文档,我看到你可以设置一周的具体日期,这正是我想要的。这是假设股票是我运行的循环的一部分的代码 df_clean_BW[WEEKLY_PricesFriday'] = stock.resample('W-FRI').last() 但对于美国股市来说,周五有很多天是假期,所以我看到你可以调整这一点,以适应美国的黄金假期。这是我使用的代码 from pandas.tseries.offsets import CustomBu

我有一个很长的股票日价格序列,我试图得到一周的价格做一些计算。我一直在阅读文档,我看到你可以设置一周的具体日期,这正是我想要的。这是假设股票是我运行的循环的一部分的代码

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
日期价格周价格
12/30/2015  103.3227
12/31/2015  101.3394

2016年1月4日101.426 101.3394首先生成包括假日在内的星期五数组。然后使用以如下方式偏移它们:

np.busday_offset(fridays, 0, roll='backward', busdaycal=bday_us.calendar)