gpt4 book ai didi

python - pandas:如何选择每个 GROUP BY 组中的第一行?

转载 作者:太空狗 更新时间:2023-10-29 16:52:58 27 4
gpt4 key购买 nike

Select first row in each GROUP BY group?基本相同仅在 Pandas 中。

df = pd.DataFrame({'A' : ['foo', 'foo', 'foo', 'foo', 'bar', 'bar', 'bar', 'bar'],
'B' : ['3', '1', '2', '4','2', '4', '1', '3'],
})

排序看起来很有希望:

df.sort('B')

A B
1 foo 1
6 bar 1
2 foo 2
4 bar 2
0 foo 3
7 bar 3
3 foo 4
5 bar 4

但是 first 不会给出想要的结果...... df.groupby('A').first()

     B
A
bar 2
foo 3

最佳答案

通常,如果您希望您的数据按分组方式排序,但它不是要分组的列之一,那么最好使用 sort执行 groupby 之前的 df:

In [5]:
df.sort_values('B').groupby('A').first()

Out[5]:
B
A
bar 1
foo 1

关于python - pandas:如何选择每个 GROUP BY 组中的第一行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30486417/

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