首页 > 解决方案 > 检索熊猫数据框中属性的对应行

问题描述

我试图在一个相当大的数据框中返回与最近日期相对应的“ID”和“ctn”的值。下面是数据框 (df) 的一个小示例。

  ID cnt date
  1  US  2018-02-01
  2  CA  2017-10-01
  3  UK  2018-06-10
  2  UK  2018-08-23
  1  FR  2017-05-01

因此,输出应如下所示。

  ID cnt  date
  2  UK   2018-08-23
  3  UK   2018-06-10
  1  US   2018-02-01

在“ID”上应用“group_by”方法,然后将日期的“max()”应用为

df.groupby('ID')['date'].max() 

给我每个“ID”的最近日期;但是,我不确定如何在“df”中检索相应的“ctn”值。谢谢!

标签: pythonpandas

解决方案


在分组之前按日期对数据框进行排序。最近的条目将始终是最后一个:

df.sort_values('date').groupby('ID').last()

推荐阅读