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

Pandas DataFrame按分组逐行计算累计最小值与最大值的实现方法

实现方案

可以直接使用Pandas内置的分组累计聚合方法实现需求,代码简洁高效:

完整实现代码

import pandas as pd

# 构造示例DataFrame
data = {'color':['blue','blue','blue','blue','blue','blue','blue','blue','blue','blue'],
        'panel':['b','b','b','b','b','b','b','b','b','b'],
        'result':[4,3,3,5,4,7,1,5,3,2]}
df = pd.DataFrame(data)

# 按指定字段分组,新增累计最小值、累计最大值列
df['min'] = df.groupby(['color', 'panel'])['result'].cummin()
df['max'] = df.groupby(['color', 'panel'])['result'].cummax()

# 输出验证结果
print(df)

说明

  • groupby(['color', 'panel']) 为按指定字段分组,可根据实际需求修改分组字段列表
  • cummin() 会计算每个分组内从第一行到当前行的累计最小值
  • cummax() 会计算每个分组内从第一行到当前行的累计最大值
  • 最终输出的DataFrame与预期结果完全一致

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 19:06:03