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

如何使用Python计算箱线图各分类的平均值,解决相关运行报错?

报错原因与修正代码

你遇到的类型错误是最后一行代码逻辑完全错误导致的:

  • 你写的sum('Low')是尝试对字符串'Low'执行求和运算,字符串属于文本类型,无法和求和函数默认的初始整数值做加法,直接触发类型报错
  • 同时len('earnings')计算的是'earnings'这个字符串本身的字符长度,完全没有读取你数据集里的收入字段,根本达不到计算分组平均收入的目的。

要按教育水平分组计算平均收入,直接调用pandas的分组聚合方法即可,完整可用代码如下:

import pandas as pd
import matplotlib.pyplot as plt

# 教育水平分组代码可正常运行,保留即可
mydata['LevelEduc'] = pd.cut(mydata['education'], bins = [0,12,16,float('Inf')],labels=['Low','Medium','High'])

# 箱线图绘制代码保留即可
mydata.boxplot(column='education',by='LevelEduc')
plt.title("")
plt.show()

# 按教育水平分组计算平均收入
avg_earnings = mydata.groupby('LevelEduc')['earnings'].mean()
# 输出所有分组的平均收入结果
print(avg_earnings)
# 如果需要单独提取低教育水平的平均收入,执行下行代码即可
# low_avg = avg_earnings['Low']

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 18:03:03