假设我有两个panda Dataframe ,包含两列datetime,如下所示:
| 列_1|第2列|
| - ------|- ------|
| 2023年1月2日|2023年1月2日9时|
| 2023年1月3日|2023年1月2日20时|
| 2023年1月4日|2023年1月3日1时|
| 2023年1月5日|2023年1月4日9时|
| 2023年1月8日|2023年1月5日16时|
| | 2023年1月6日9时|
| | 2023年1月8日12时|
我想在Col_1日期时间的基础上使用以下条件来拟合Col_2日期时间:
如果日期时间早于12pm,则如果Col_1具有相同的日期,则保持相同的日期,如果不具有相同的日期,则切换到下一Col_1日期时间。如果时间过去或等于12pm,则切换到基于Col_1日期时间的下一日期。
但是,如果最后一个值超过12pm,并且Col_1中没有相关日期,则只需根据Col_1中的最后一天添加一天
例如,我希望Col_2如下所示:
| 列_1|第2列|
| - ------|- ------|
| 2023年1月2日|2023年1月2日|
| 2023年1月3日|2023年1月3日|
| 2023年1月4日|2023年1月3日|
| 2023年1月5日|2023年1月4日|
| 2023年1月8日|2023年1月8日|
| | 2023年1月8日|
| | 2023年1月9日|
Pandas里有什么函数可以这样做吗?或者我怎么写代码?
1条答案
按热度按时间jtoj6r0c1#
您可以编写一个自定义函数来查找
df1
中的日期,然后将其应用于df2['Col_2']
:结果: