gpt4 book ai didi

python - Pandas groupBy 多列和聚合

转载 作者:行者123 更新时间:2023-12-05 04:45:49 48 4
gpt4 key购买 nike

数据框中有 4 列 col_A、col_B、col_C、col_D。需要对列(col_A、col_B、col_C)进行分组并按 col_D 聚合平均值。下面是我试过的代码片段,它有效

df.groupby(['col_A','col_B','col_C']).agg({'col_D':'mean'}).reset_index()

但除了上述结果外,还需要按 ('col_A','col_B','col_C') 的计数分组并进行聚合。请提供任何帮助。

最佳答案

使用 Named Aggregation :

result = (
df.groupby(['col_A', 'col_B', 'col_C'], as_index=False)
.agg(mean=('col_D', 'mean'), count=('col_D', 'count'))
)

对于 count 列,您在选择聚合函数时有 2 个选择:

  • count=('col_D', 'count') 将忽略 col_D
  • 中的任何 NaN 值
  • count=('col_D', 'size') 将在 col_D
  • 中包含 NaN 值

关于python - Pandas groupBy 多列和聚合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69038101/

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