gpt4 book ai didi

python - 将排序应用于 pandas groupby 操作

转载 作者:行者123 更新时间:2023-12-02 02:58:55 38 4
gpt4 key购买 nike

如何将排序应用于 pandas groupby 操作?下面的命令返回一个错误,指出“bool”对象不可调用

import pandas as pd

df.groupby('cokey').sort('A')

cokey A B
11168155 18 56
11168155 0 18
11168155 56 96
11168156 96 152
11168156 0 96

最佳答案

通常,排序是在 groupby 键上执行的,并且您发现无法对 groupby 对象调用 sort ,您可以做的是调用 apply > 并传递 DataFrame.sort 函数并将列作为 kwarg 参数传递:

In [58]:

df.groupby('cokey').apply(pd.DataFrame.sort, 'A')
Out[58]:
cokey A B
cokey
11168155 1 11168155 0 18
0 11168155 18 56
2 11168155 56 96
3 11168155 96 152

或者,您可以在分组之前对 df 进行排序:

df.sort('A').groupby('cokey')

更新

对于 0.17.0 及更高版本,DataFrame.sort 现已弃用,请参阅 docs ,现在应该使用 DataFrame.sort_values :

df.groupby('cokey').apply(pd.DataFrame.sort_values, 'A')

在此处的评论中添加@xgdgsc的答案;如果您需要设置升序标志。

df.groupby('cokey').apply(pd.DataFrame.sort_values, 'A', ascending=False)

关于python - 将排序应用于 pandas groupby 操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29479357/

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