gpt4 book ai didi

python - Pandas - 按组成员编号排序

转载 作者:行者123 更新时间:2023-11-28 16:22:50 25 4
gpt4 key购买 nike

当面对大量组时,您制作的任何图表都可能因为线条太多和图例难以理解而变得毫无用处。在这些情况下,能够找到其中信息最多和最少的组非常有用。然而,虽然 x.size() 告诉您组成员(在使用 groupby 之后),但我无法找到使用此信息重新排序数据框的方法,这样您就可以使用限制循环来仅绘制前 x 个组。

最佳答案

您可以使用transform 获取该列的计数和排序:

df = pd.DataFrame({'A': list('aabababc'), 'B': np.arange(8)})
df
Out:
A B
0 a 0
1 a 1
2 b 2
3 a 3
4 b 4
5 a 5
6 b 6
7 c 7

df['counts'] = df.groupby('A').transform('count')
df
Out:
A B counts
0 a 0 4
1 a 1 4
2 b 2 3
3 a 3 4
4 b 4 3
5 a 5 4
6 b 6 3
7 c 7 1

现在您可以按计数排序:

df.sort_values('counts')
Out:
A B counts
7 c 7 1
2 b 2 3
4 b 4 3
6 b 6 3
0 a 0 4
1 a 1 4
3 a 3 4
5 a 5 4

一行:

df.assign(counts = df.groupby('A').transform('count')).sort_values('counts')

关于python - Pandas - 按组成员编号排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38858177/

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