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

按Category分组处理DataFrame:Size区间聚合与提取最大Size行

Pandas 数据处理解决方案

步骤1:按Category分组并创建Size的25相近区间,计算Total Count

先给每个Size值划分到最近的25倍数区间,再按Category+区间分组统计Count总和。这里用round(df['Size']/25)*25获取Size对应的最近25倍数作为区间标识,若需要按区间下限分组,可替换为(df['Size']//25)*25。

import pandas as pd

# 原始数据
data = {
    "Category": ["900IG", "900IG", "900IG", "900IG", "900IG", "900IG", "900IG", "900IG", "900IG", "900IG", "165LK", "165LK", "165LK", "165LK", "165LK", "165LK", "165LK", "165LK", "165LK", "165LK"],
    "Size": [1041.4, 1020, 711.2, 660.4, 648.6, 584.2, 562.8, 508, 495.3, 488.95, 381, 431.8, 482.6, 520.7, 533.4, 558.8, 584.2, 609.6, 660.4, 750.062],
    "Count": [6, 1, 10, 10, 10, 23, 22, 1, 6, 3, 7, 2, 5, 8, 9, 22, 23, 10, 10, 6]
}

df = pd.DataFrame(data)

# 生成Size的25相近区间列
df['Size_Interval'] = round(df['Size'] / 25) * 25

# 计算每个Category+区间的Total Count,并合并回原DataFrame
df = df.merge(
    df.groupby(['Category', 'Size_Interval'])['Count'].sum().rename('Total Count'),
    on=['Category', 'Size_Interval'],
    how='left'
)

步骤2:提取每个区间内Size最大的行

按Category和Size_Interval分组,每组筛选出Size值最大的记录:

# 分组筛选Size最大的行
result = df.groupby(['Category', 'Size_Interval'], as_index=False).apply(
    lambda group: group[group['Size'] == group['Size'].max()]
).reset_index(drop=True)

# 调整列顺序(可选)
result = result[['Category', 'Size_Interval', 'Size', 'Count', 'Total Count']]

# 查看结果
print(result)

结果示例

运行后输出结果如下:

Category  Size_Interval     Size  Count  Total Count
0    165LK          375.0   381.00      7            7
1    165LK          425.0   431.80      2            2
2    165LK          475.0   482.60      5            5
3    165LK          525.0   533.40      9           17
4    165LK          550.0   558.80     22           22
5    165LK          575.0   584.20     23           23
6    165LK          600.0   609.60     10           10
7    165LK          650.0   660.40     10           10
8    165LK          750.0   750.06      6            6
9    900IG          475.0   495.30      6            9
10   900IG          500.0   508.00      1            1
11   900IG          550.0   562.80     22           22
12   900IG          575.0   584.20     23           23
13   900IG          650.0   660.40     10           20
14   900IG          700.0   711.20     10           10
15   900IG         1025.0  1041.40      6            7

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 11:35:06