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

Python Pandas分组筛选后结果未显示City字段如何解决

问题根因

分组后看不到City字段,是因为Pandas的groupby()默认会把分组字段City_y设为结果表的行索引,不再作为普通数据列展示,不是数据丢失了。

排查步骤

先跑两行代码确认问题:

# 打印结果表的索引名
print(most_polluted_citites_by_industry.index.name)
# 打印结果表的普通列名列表
print(most_polluted_citites_by_industry.columns.tolist())

如果输出索引名是City_y,就和上述判断一致。

修复方案
  • 方案1:写分组逻辑时直接加as_index=False参数,让分组列保留为普通列,优化后完整代码:
most_polluted_cities_by_industry = filtered_dataframe[['City_y','I_P_C']]\
    .groupby("City_y", as_index=False)\
    .median()\
    # 原代码升序取尾10逻辑等价于降序取前10,可读性更高
    .sort_values(by='I_P_C', ascending=False)\
    .head(10)

*顺便修正了原代码里citites的拼写笔误,避免后续调用变量时报错。

  • 方案2:如果已经生成了结果表不想重跑,直接重置索引把分组字段转回普通列即可:
most_polluted_citites_by_industry = most_polluted_citites_by_industry.reset_index()

运行后City_y就会作为普通列正常显示。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 19:03:50