gpt4 book ai didi

python - 如何在数据框中查找日期时间值的上一行和下一行?

转载 作者:太空宇宙 更新时间:2023-11-04 11:16:41 24 4
gpt4 key购买 nike

我有一个数据框,其中包含带有日期时间列的事件。现在我想为特定的日期时间值查找上一个和下一个事件行。有没有一种有效的方法来做到这一点?

我的数据框 df 看起来像这样:

       Datetime           Event    ...
0 2019-04-01 00:00:00 x ...
1 2019-04-01 07:16:54 y
2 2019-04-01 07:17:22 z
3 2019-04-01 07:18:31 a
4 2019-04-01 07:22:23 b
5 2019-04-01 07:23:24 c..

我试过的是这样的:

time = pd.to_datetime('2019-04-01 07:20:02')
prev_row = df[df['Datetime'] < time].tail(1)
next_row = df[df['Datetime'] > time].head(1)

这将使我获得上一行和下一行,但我正在徘徊是否有更有效的方法来做到这一点(类似于 .between(),但是 for around...)

最佳答案

检查 searchsorted

s=np.searchsorted(df.Datetime,time)

然后

df.iloc[[s-1,s],:]

关于python - 如何在数据框中查找日期时间值的上一行和下一行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56855200/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com