Python 改变大熊猫的选择性索引日期
我有一份日期清单:Python 改变大熊猫的选择性索引日期,python,python-3.x,pandas,datetime,Python,Python 3.x,Pandas,Datetime,我有一份日期清单: xl_file Day Date 2011-01-26 Wednesday 2011-03-02 Wednesday 2011-04-12 Tuesday 2011-04-14 Thursday 2011-04-22 Friday ... 2020-05-25 Monday 2020-10-02 Friday 2020-11-16
xl_file
Day
Date
2011-01-26 Wednesday
2011-03-02 Wednesday
2011-04-12 Tuesday
2011-04-14 Thursday
2011-04-22 Friday
...
2020-05-25 Monday
2020-10-02 Friday
2020-11-16 Monday
2020-11-30 Monday
2020-12-25 Friday
[144 rows x 1 columns]
在上面数据框中列出的日期中,以下是我需要更改的日期:
list_of_dates
Empty DataFrame
Columns: []
Index: [2018-01-25 00:00:00, 2018-02-22 00:00:00, 2018-04-26 00:00:00, 2018-05-31 00:00:00, 2018-06-28 00:00:00, 2018-07-26 00:00:00, 2018-08-30 00:00:00, 2018-09-27 00:00:00, 2018-10-25 00:00:00, 2018-11-29 00:00:00, 2018-12-27 00:00:00, 2019-01-31 00:00:00, 2019-02-28 00:00:00, 2019-03-28 00:00:00, 2019-04-25 00:00:00, 2019-05-30 00:00:00, 2019-06-27 00:00:00, 2019-07-25 00:00:00, 2019-08-29 00:00:00, 2019-09-26 00:00:00, 2019-10-31 00:00:00, 2019-11-28 00:00:00, 2019-12-26 00:00:00, 2020-01-30 00:00:00, 2020-02-27 00:00:00, 2020-03-26 00:00:00, 2020-04-30 00:00:00, 2020-05-28 00:00:00, 2020-06-25 00:00:00]
我想做的是,无论日期出现在xl_文件中的日期数据框列表中的什么位置,Date
都将更改为:
list_of_dates.index + BDay()
但是,行的内容保持不变
例如,如果xl\u文件中的日期为
2020-06-25 Thursday
该日期也在日期列表中,因此应该将该日期更改为下一个日期,即:
2020-06-26 Thursday
不更改行其余部分的条目。我如何才能做到这一点?您可以执行以下操作:
xl_file["Date"] = xl_file["Date"].apply(lambda x: x + BDay() if x in list_of_dates.index else x)
编辑:刚刚注意到您正在调整索引,因此您可以执行以下操作:
xl_file.index = xl_file.index.map(lambda x: x + BDay() if x in list_of_dates.index else x)