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

按字符串与数值列分组DataFrame时sum函数返回异常结果求助

问题原因与解决方法
  • 问题根源:你的Price列是字符串类型(object),不是数值类型(int/float),所以groupby后的sum()方法没有执行数值相加,而是把所有字符串内容拼接在了一起,就出现了48.5200.048.5200.0这种异常结果。

  • 解决步骤:

    1. 先确认列类型:执行print(df_data['Price'].dtype),结果应该是object,验证这个判断。
    2. 转换Price列为数值型,同时把无效值转成NaN:
      df_data['Price'] = pd.to_numeric(df_data['Price'], errors='coerce')
      
    3. 过滤掉Price为空(NaN)或等于0的行:
      df_data = df_data[df_data['Price'].notna() & (df_data['Price'] != 0)]
      
    4. 重新执行分组求和:
      total_spent_by_org = df_data.groupby('Organisation')['Price'].sum()
      

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 14:04:51