我有一系列名为dates
的时间戳,看起来是这样的:
1 2021-04-21 09:34:00+00:00
2 2021-04-21 10:30:02+00:00
3 2021-04-21 15:54:00+00:00
4 2021-04-22 18:33:57+00:00
5 2021-04-23 18:48:04+00:00
我试图从另一个名为PublishTime
的系列中找到最接近的日期,该系列包含6天时间段的详细数据,覆盖了一些时间戳。日期必须在时间戳之后,不能在时间戳之前。例如:
0 2021-04-21 09:30:00
1 2021-04-21 09:31:00
2 2021-04-21 09:32:00
3 2021-04-21 09:33:00
4 2021-04-21 09:34:00
有没有简单的方法可以快速找到最近的日期?我已经查看了datetime
模块,但找不到答案
编辑 我错误地说日期列包含了所有的时间戳。在我试图将其与之匹配的第二个系列中,没有周末和非营业时间的分钟数据,因此我希望在时间戳之后找到最接近的日期,而不是之前
谢谢@Quang Hoang,merge_asof工作了。因为它对我来说也是新的,所以我尝试了一下,结果如下
首先从问题中获取df,并重新格式化类型以匹配“PublishTime”系列中的类型
获取发布时间序列中的df
最后,合并asof并使用
forward
作为方向如你所见,在PublishTime系列中,我没有添加4月22日至24日的数据,以显示某些数据可能会丢失(如周末),然后在25日进行了下一次最接近的数据
相关问题 更多 >
编程相关推荐