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

Flask结合Pandas计算指定两列均值报500错误解决方法

问题根源

从全量计算均值的返回结果可以确认,Height(Inches)、Weight(Pounds)两个列本身存在且为可计算的数值类型,筛选列触发500错误的核心原因有两个:

  1. 读取CSV时没有指定文件自带的行号列为索引,pandas把这列识别成了名为Index的普通数据列,部分pandas版本在多列筛选后计算统计值、再做字符串转换时会触发序列化异常
  2. 你贴出的代码中函数内部的逻辑行没有做缩进,Python是缩进敏感语言,语法错误也会直接导致服务返回500
可直接运行的解决方法

任选一种即可:

  • 方法一:读取CSV时指定第一列为索引,过滤掉冗余的行号列,再做筛选计算
@app.route('/csv')
def get_average_parameters():
    # index_col=0 表示将文件第一列作为DataFrame索引,不作为数据列加载
    dataset = pd.read_csv('hw.csv', index_col=0)
    average = dataset[['Height(Inches)', 'Weight(Pounds)']].mean()
    return str(average)
  • 方法二:不修改CSV读取逻辑,全量计算完均值后直接提取目标两列的结果,跳过列筛选步骤
@app.route('/csv')
def get_average_parameters():
    dataset = pd.read_csv('hw.csv')
    all_avg = dataset.mean()
    target_avg = {
        "Height(Inches)": all_avg["Height(Inches)"],
        "Weight(Pounds)": all_avg["Weight(Pounds)"]
    }
    return str(target_avg)

提示:写完代码注意检查函数内代码的缩进,统一保持4个空格的缩进量,避免低级语法错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 05:30:55