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

使用Pandas对DataFrame执行groupby时报错求助

解决Pandas分组求和的代码错误问题

代码中的明确错误及修正

  1. sum()方法参数使用错误
    Pandas的groupby.sum()不支持直接传入单列名字符串指定求和列,正确指定目标列的方式有两种:

    • 方式一:分组后直接索引目标列再调用求和
    • 方式二:用agg()方法明确指定列与聚合规则
  2. 列名拼写错误
    重命名列时把Department误写为Dapartment,会导致最终结果列名不符合预期。

修正后的完整代码

import pandas as pd
df = pd.read_csv(r"C:\Users\Ouis AL-Hetar\Documents\TestEmployeeTable1.csv")

# 方式一:指定列后求和
sal = df.groupby("Department")["Salary"].sum().reset_index()
# 或者方式二:用agg明确指定聚合规则
# sal = df.groupby("Department").agg({"Salary": "sum"}).reset_index()

sal.columns = ["Department", "Sum_of_salary"]
print(sal)

额外排查方向(若修正后仍报错)

  • 检查Salary列的数值类型:如果CSV中Salary包含非数值字符(如$、逗号),需先清洗转换:
    df["Salary"] = df["Salary"].replace(r'[\$,]', '', regex=True).astype(float)
    
  • 确认Department列无异常值:用df["Department"].unique()查看所有唯一值,排除空格、不可见字符导致的分组失效。

内容的提问来源于stack exchange,提问作者Ouis AL-Hetar

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 10:52:01