gpt4 book ai didi

python - Pandas - Groupby 数据框存储为数据框而不聚合

转载 作者:行者123 更新时间:2023-12-05 08:42:58 26 4
gpt4 key购买 nike

我是 Pandas 的新手,我在这里阅读了很多文档、帖子和答案,但我一直无法辨别一个好的策略来实现我的目标,抱歉,如果它已经回答了,我找不到它。这是我所拥有的:

df = {'key': ['A', 'B', 'A', 'B'], 'value': [2,2,1,1]}
df = pd.DataFrame(df)
df
key value
0 A 2
1 B 2
2 A 1
3 B 1

我知道执行 groupby() 会返回一个 groupby 对象,而且我知道我可以使用 groupby 对象做很多聚合操作(计数、大小、平均值等)。但是,我不想聚合,我只想根据“键”列对我的数据框进行分组并将其存储为如下数据框:

   key  value
0 A 2
1 A 1
2 B 2
3 B 1

完成此步骤后,我最终想要的是按值对每个组进行排序,如下所示:

   key  value
0 A 1
1 A 2
2 B 1
3 B 2

非常感谢任何回答、评论或提示。谢谢!

最佳答案

您可以通过使用 sort_values 对数据框进行排序来获得所需的输出。而不是执行 groupby

df.sort_values(['key', 'value'], inplace=True)

编辑:

如果你真的想使用 groupby 来执行键的分组,那么可以将一个简单的 filter 应用于 groupby 对象。

df = df.groupby('key').filter(lambda x: True)

这似乎不是取回数据帧的最佳方式,但我马上就没有想到其他方法。之后您仍然需要使用 sort_values 对值列进行排序。

关于python - Pandas - Groupby 数据框存储为数据框而不聚合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36069373/

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