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

如何重置Pandas Series的索引并避免列名被替换?

Pandas中value_counts()后重置索引避免列名异常的解决方法

当对Series执行value_counts()后调用reset_index(),默认会把原类别列命名为index,计数列沿用原Series的列名,导致列名不符合预期。可以通过以下方法直接得到目标格式的结果:

方法一:使用reset_index()的name参数(推荐)

直接在reset_index()中通过name参数指定计数列的名称,原类别列会自动保留原Series的列名:

df = df[df['type']=='food']['fruit'].value_counts().reset_index(name='number')

执行后直接得到预期结果:

fruit  number
0 apple  120
1 grape  110
2 orange 30

方法二:先转为DataFrame再重置索引

如果需要更灵活的列名控制,也可以先将value_counts()的结果转为DataFrame并指定计数列名,再重置索引并重命名类别列:

counts_series = df[df['type']=='food']['fruit'].value_counts()
df = pd.DataFrame(counts_series, columns=['number']).reset_index().rename(columns={'index':'fruit'})

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 19:45:43