You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jupyter Notebook中DataFrame.groupby函数无法正常工作求助

解决方法

针对你遇到的groupby().mean()报错问题,以下两种方案可以实现按Type 1分组后计算数值列均值的需求:

方案一:明确指定要计算的数值列

手动选择需要统计的数值列,避免无关列(如序号#、布尔列Legendary)的干扰:

# 定义需要计算均值的数值列列表
target_cols = ['HP', 'Attack', 'Defense', 'Sp. Atk', 'Sp. Def', 'Speed', 'Generation']
# 分组计算均值
a = df.groupby(['Type 1'])[target_cols].mean()
display(a)

方案二:使用numeric_only=True参数自动筛选数值列

利用pandas的numeric_only参数,让mean()仅对数值类型列(int64、float64等)计算均值,同时可以后续移除不需要的列:

# 分组计算所有数值列均值,自动排除非数值列(如Name、Type 2)
a = df.groupby(['Type 1']).mean(numeric_only=True)
# 移除不需要的列(如序号#、布尔列Legendary)
a = a.drop(columns=['#', 'Legendary'])
display(a)

说明

报错的常见原因是旧版pandas中mean()默认尝试处理所有列(包括布尔列Legendary),或存在隐式类型转换问题。上述两种方案都能规避这类问题,精准得到你需要的分组均值结果。

内容的提问来源于stack exchange,提问作者Uttiya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 21:57:18