gpt4 book ai didi

python - 将 pandas DataFrame 中的日期时间值与特定的 data_time 值进行比较并返回壁橱中的日期时间值

转载 作者:太空宇宙 更新时间:2023-11-04 01:53:44 26 4
gpt4 key购买 nike

我在 pandas DataFrame 中有一个日期列,如下所示:

index   date_time
1 2013-01-23
2 2014-01-23
3 2015-8-14
4 2015-10-23
5 2016-10-28

我想将 date_time 列 中的值与特定日期进行比较,例如 date_x = 2015-9-14 广告返回此日期之前的日期,并且它是最壁橱,即 2015-8-14。

我考虑过将 date_time 列中的值转换为列表,然后将它们与特定日期进行比较。但是,我认为这不是一个有效的解决方案。

有什么解决办法吗?

谢谢。

最佳答案

这是使用 searchsorted 的一种方法,如果不执行 df=df.sort_values('date_time'),我的所有方法都假设数据已经排序/p>

df.date_time=pd.to_datetime(df.date_time)
date_x = '2015-9-14'
idx=np.searchsorted(df.date_time,pd.to_datetime(date_x))
df.date_time.iloc[idx-1]
Out[408]:
2 2015-08-14
Name: date_time, dtype: datetime64[ns]

或者我们可以做

s=df.date_time-pd.to_datetime(date_x)
df.loc[[s[s.dt.days<0].index[-1]]]
Out[417]:
index date_time
2 3 2015-08-14

关于python - 将 pandas DataFrame 中的日期时间值与特定的 data_time 值进行比较并返回壁橱中的日期时间值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57404020/

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