首页 > 解决方案 > 熊猫从具有相同日期的行中提取某些条目的时间

问题描述

我对 pandas 很陌生,我正在尝试找出如何从 DataFrame 中提取时间值,其中的行包含相同不同的日期、不同的卖家、不同的状态以及每个状态的时间戳。

在此处输入图像描述

我需要从 DataFrame 和每个卖家中提取每个日期第一次出现where State= "received"的行。

正如您在上面的屏幕截图中所见,同一卖家的“已收到”状态在同一日期出现两次,但时间戳不同,我只需要它第一次出现的行。

PS。不幸的是,我没有尝试过任何代码,我搜索了很多,结果都是空的。任何帮助表示赞赏。

标签: pythonpandasdatetime

解决方案


IIUC,你需要pandas.groupby

>>> df[df["State"]=="Received"].groupby(["Date", "Seller"])["Time"].first()
Date      Seller  
6/1/2021  Seller_1    8:00:36
          Seller_2    9:45:30
6/2/2021  Seller_1    8:00:36
          Seller_2    9:33:02

如果您需要最早出现而不是first,则应min()改为使用。


推荐阅读