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

Pandas groupby后原分组列变为索引无法调用,如何转为普通列?

解决方案

你可以通过以下三种方式实现需求:

  • 方法1:分组时禁止将分组键转为索引
    在groupby方法中添加as_index=False参数,分组后的model会保留为普通列:
df = df.groupby(['model'], as_index=False).mean()
# 后续可以正常使用df['model']执行你的lambda操作
df['num_topics'] = df['model'].apply(lambda x: x.split('-')[1])
  • 方法2:对已生成的分组结果重置索引
    如果已经完成groupby操作,可以调用reset_index()方法将索引列恢复为普通数据列:
df = df.groupby(['model']).mean()
# 重置索引,model会从索引转为普通列
df = df.reset_index()
df['num_topics'] = df['model'].apply(lambda x: x.split('-')[1])
  • 方法3:直接访问索引处理(无需修改DataFrame结构)
    如果你不需要调整DataFrame的索引结构,也可以直接操作索引值完成计算,不需要额外把model转成普通列:
df = df.groupby(['model']).mean()
df['num_topics'] = df.index.map(lambda x: x.split('-')[1])

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 07:15:03