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

如何将pandas列值计数结果转为含特征、计数两列的DataFrame

pandas统计单列值出现次数并转换为指定格式DataFrame方案

核心实现代码

你可以直接通过pandas原生链式操作完成转换,全程为向量化运算,适配超大数据量的批量处理需求:

import pandas as pd

# 示例源数据
df_1 = pd.DataFrame({'id': ['001', '002', '003', '004', '005', '006', '007', '008'],
                     'color_value': ['blue', 'red', 'yellow', 'orange',
                     'blue','red', 'blue', 'orange']})

# 统计+格式转换一步完成
result_df = (
    df_1['color_value']
    .value_counts()  # 统计各值出现次数
    .reset_index(name='counts')  # 将索引转为普通列,计数列命名为counts
    .rename(columns={'color_value': 'feature'})  # 重命名特征列
)

该方法全程调用pandas原生优化接口,无自定义遍历逻辑,即使是TB级体量的大数据场景也可正常运行,不需要手动调整格式,批量使用时仅需替换color_value为目标统计列名即可。

输出结果示例

转换后的result_df完全符合你要求的格式:

featurecounts
blue3
orange2
red2
yellow1

后续绘图参考

可以直接基于转换后的结果绘制分布图表,示例如下:

import seaborn as sns
import matplotlib.pyplot as plt

plt.rcParams['font.sans-serif'] = ['SimHei']  # 解决中文显示问题
sns.barplot(data=result_df, x='feature', y='counts')
plt.title('特征值计数分布')
plt.show()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 12:57:03