返回日期自参考日期起260个工作日

时间:2017-11-21 21:28:09

标签: python pandas

我有按日期编制索引的每日数据数据框(df) - 头部位于以下位置:

                  nominal  
date                                                                          
2016-01-04      114185.481138            
2016-01-04       17841.990960            
2016-01-04       -8799.514730          
2016-01-04           0.000000                 
2016-01-04       -3028.765682 

我可以使用

找到最大日期
maxDate = df.index.max()

如何在此日期之前找到260个工作日(1个工作日)的日期?我怎样才能从260天前从maxDate中检索日期?

3 个答案:

答案 0 :(得分:4)

使用Bday

from pandas.tseries.offsets import BDay
df.index.max()-BDay(260)

Timestamp('2015-01-05 00:00:00')

答案 1 :(得分:0)

import datetime
#Only use the following line if the column type for your 'date' column is
# string
df['date'] = pd.to_datetime(df['date'])
(max(df['date']) - pd.tseries.offsets.BDay(260)).strftime('%Y-%m-%d')
#The line above produces:
# '2015-01-06'

答案 2 :(得分:0)

如果我理解你想要减去一个日期,在你的情况下它会是这样的:     导入日期时间     dat = datetime.datetie(2016,1,4)     dd = datetime.timedelta(天= 260)     print(dat - dd)

输出:2015-04-19