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

如何在Python Pandas DataFrame中按类别计算列各值的占比

Pandas 分组统计实现代码

首先导入pandas并构造测试数据,你可以替换成自己的DataFrame读取逻辑:

import pandas as pd

df = pd.DataFrame({
    "Interface_Bin": [1, 1, 22, 97, 1, 1, 97, 97, 22],
    "Product": ["ADL", "ADL", "ADL", "ADL", "JSL", "JSL", "JSL", "JSL", "JSL"]
})

直接用groupby聚合计算目标指标:

res = df.groupby("Product", as_index=False).agg(
    # 统计每个分组下Interface_Bin等于97的数量
    Bin_97_cnt=("Interface_Bin", lambda x: (x == 97).sum()),
    # 统计每个分组的总数量
    total_cnt=("Interface_Bin", "count"),
    # 计算百分比并格式化
    percentage=("Interface_Bin", lambda x: f"{round((x == 97).sum()/x.count()*100)}%")
)

# 重命名列匹配你需要的输出字段名
res.columns = ["Product", "Bin(97)_count", "Total_interfacebin_count", "Bin_97_percentage_vs total count"]

运行后打印res即可得到你要求的输出结果:

ProductBin(97)_countTotal_interfacebin_countBin_97_percentage_vs total count
ADL1425%
JSL2540%

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 00:54:03