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

Pandas:无需转置将多索引DataFrame分组聚合为逗号拼接的单行数据

你可以直接基于当前的多级索引做分组聚合,不需要转置操作,代码如下:

# 如果你已经提前按time排序完成,直接执行分组聚合即可
result = df.groupby(level=["id", "vid"])["pid"].agg(lambda x: ", ".join(x.astype(str))).to_frame()

说明

  • groupby(level=["id", "vid"]) 直接指定按多级索引的id、vid层级分组,不需要做额外的结构转换,计算资源消耗很低
  • 聚合逻辑里加了astype(str)是兼容pid为非字符串类型的场景,如果你的pid本身就是字符串,可以简化为agg(', '.join)
  • 最终调用to_frame()是为了和你预期的输出结构保持一致,得到列名为pid的DataFrame

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 10:15:03