繁体   English   中英

Pandas groupby 与 agg 一起使用不返回键列

[英]Pandas groupby used with agg doesn't return key columns

在我正在研究的一个项目中,我被迫使用 Pandas 1.1.5 版。 我正在尝试按操作进行分组,以便使用多个函数聚合变量:

import pandas as pd
import numpy as np

df = pd.DataFrame( { 
        "Name" : ["Alice", "Bob", "James", "Mallory", "Bob" , "Lucas", "Alice", "Bob", "James", "Mallory", "Bob" , "Lucas"] , 
        "Apples" : [22, 31, 35, 41, 27, 32, 64, 12, 59, 45, 65, 31] } )

apple_df = df.groupby('Name', as_index = False).agg(
    apple_avg = ('Apples', np.mean),
    apple_median = ('Apples', np.median),
    apple_count = ('Apples', np.count_nonzero)
)
apple_df

我期望名称列与其他聚合变量的结果如下:

在此处输入图像描述

但我得到以下信息:

在此处输入图像描述

此问题的任何已知错误和解决方法?

PS All 适用于 Pandas 1.3.0,但我不能在这个项目中使用它。

您可以尝试删除 as_index 参数并改为使用 a.reset_index() :

apple_df = df.groupby('Name').agg(
    apple_avg = ('Apples', np.mean),
    apple_median = ('Apples', np.median),
    apple_count = ('Apples', np.count_nonzero)
).reset_index()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM