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

Pandas 多层索引Series如何转换为带自定义列名的DataFrame

转换方法

你的to_frame()思路本身是对的,问题出在原Series自带的名称和索引字段重名,导致值列命名不符合预期,用下面任意一种写法都能直接得到你要的目标结构:

方法1(最简洁,推荐)

直接用reset_index()的name参数,一步完成索引转列+值列重命名:

df_result = ds_perg1_2_merged.reset_index(name='amount')

方法2(基于你之前的to_frame写法调整)

转DF的时候直接指定值列名,再重置索引即可:

df_result = ds_perg1_2_merged.to_frame(name='amount').reset_index()
原因说明

你之前运行to_frame()出问题,是因为原Series的name属性本身就是strRazaoSocial(可以从你贴的info()输出里看到Series name: strRazaoSocial),所以转换后存计数值的列会被自动命名为strRazaoSocial,和第二层索引存储企业名称的strRazaoSocial重名,才会出现列名不对的情况。
转换完成后你打印看到的同组下第二列企业名前的空白,是pandas打印时自动隐藏重复分组值的显示效果,不是数据缺失,完全不影响后续ggplot绘图调用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 04:36:23