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

如何用Python pandas按多维度生成分数频率与占比统计表

实现代码及说明
  • 原代码存在两个问题:一是谷歌云盘的共享预览链接无法直接被pandas读取,需转换为导出链接;二是仅按两个维度分组且未计算占比字段,不符合需求。
  • 完整可运行实现如下:
import pandas as pd

# 转换谷歌云盘链接为可直接读取的csv导出链接
df = pd.read_csv('https://drive.google.com/uc?id=1pL8fHCc25-XRBYgj9n6NdRt5VHrIr-p1', sep=',')

# 按Containe、Class、score三个维度分组统计频次
result = df.groupby(['Containe', 'Class', 'score'], as_index=False).agg(频次=('score', 'count'))

# 计算全局占比,按需求保留2位小数
total_count = len(df)
result['占比(%)'] = round(result['频次'] / total_count * 100, 2)

# 若需计算每个Containe+Class分组内的占比,替换上一行占比计算逻辑即可
# result['组内占比(%)'] = result.groupby(['Containe', 'Class'])['频次'].transform(lambda x: round(x/x.sum()*100, 2))

# 输出结果
print(result)
  • 若需要生成交叉表样式的展示结果,可额外增加透视操作:
# 以Class为行、Containe为列生成透视表
pivot_result = result.pivot_table(
    index='Class',
    columns='Containe',
    values=['频次', '占比(%)'],
    aggfunc='sum'
)
print(pivot_result)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 13:36:03