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

如何对DataFrame中A、B列重复行的C列执行Unstack合并操作?

解决思路与实现代码

直接使用groupby()结合聚合函数即可实现需求,比pivot()/unstack()更贴合这类分组合并场景:

实现代码

import pandas as pd

# 构造原始DataFrame
df = pd.DataFrame()
df["A"] = [2,2,4,4,4,8,9]
df["B"] = [2,2,4,4,4,7,9]
df["C"] = list("axcdxef")

# 按A、B分组,合并C列为逗号分隔的字符串
df2 = df.groupby(['A', 'B'])['C'].agg(','.join).reset_index()

# 打印结果
print(df2.to_string(index=False))

代码说明

  • groupby(['A', 'B']):将A、B列值完全相同的行划分为同一组
  • agg(','.join):对每组的C列元素执行字符串拼接,用逗号作为分隔符
  • reset_index():将分组时作为索引的A、B列重新转为普通列,得到目标结构的DataFrame

执行后输出结果与需求一致:

A  B      C
 2  2    a,x
 4  4  c,d,x
 8  7      e
 9  9      f

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 07:10:33