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

Python中获取Top 10数值及对应占比的实现求助

实现按Store分组的Top10 Size及占比计算

你可以在现有代码基础上,通过计算总Size并生成占比列来实现需求,修改后的完整代码如下:

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns

# 读取数据
df = pd.read_csv('train_feature_store.csv')

# 按Store分组求和Size
size_by_store = df[['Size','Store']].groupby(['Store'], as_index=False).sum()

# 计算所有Store的Size总和
total_size = size_by_store['Size'].sum()

# 新增占比列,保留两位小数
size_by_store['Percentage'] = round((size_by_store['Size'] / total_size) * 100, 2)

# 按Size降序排序,取Top10
top10_stores = size_by_store.sort_values(by=['Size'], ascending=False).head(10)

print(top10_stores)

代码说明:

  • 先通过groupby完成按Store分组求和Size的操作,得到每个Store的总Size
  • 用size_by_store['Size'].sum()计算所有Store的Size总和,作为占比计算的分母
  • 新增Percentage列,通过(单店Size / 总Size) * 100得到百分比,并用round保留两位小数让结果更整洁
  • 最后按Size降序排序后取前10行,得到包含Store、Size、Percentage的Top10结果

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 16:57:30