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

如何使用Pandas groupby按布尔列标记将DataFrame行分组为不同活动

实现按活动分组的Pandas代码调整

核心逻辑是利用布尔列的累加和生成活动分组ID:new列每出现一次True,累加和就会加1,刚好对应每个活动的唯一标识,同一个活动的所有行累加和数值完全一致。

完整调整后的代码

# 生成活动分组ID:对new列做累加和
for activity_id, activity_df in df.groupby(df['new'].cumsum()):
    print(f"活动ID: {activity_id}")
    print(activity_df)

逻辑说明

  • 布尔值在Pandas中做数值计算时,True会被识别为1,False会被识别为0
  • df['new'].cumsum()会逐行累加数值,每遇到一次新活动起始(new=True),累加值就+1,刚好作为每个活动的唯一分组键
  • 你提到的预期3个活动分组的场景,生成的累加和取值会是1、2、3,刚好对应三个分组,完全符合需求

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 22:36:04