首页 > 解决方案 > 数据帧子集中的第一条记录

问题描述

我有一个看起来像这样的数据框:

在此处输入图像描述

我想选择数据框中的所有列,但只选择前 1 条记录(基于数量)。所以在这种情况下,我希望看到:

1 Long  10
2 Short -2

任何想法如何在 Pandas 中做到这一点?

标签: pythonpandas

解决方案


按降序对数据帧进行排序(以防它们尚未排序),然后按 id (或位置,任何相关的)分组,并从每组中选择第一行:

df.sort_values("Amount", ascending=False).groupby("ID").first()

推荐阅读