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

如何在Pandas DataFrame中按指定列分组合并数据为数组?

Pandas按多列分组合并列值的实现方法

步骤1:构造示例数据

先还原你给出的DataFrame:

import pandas as pd

df = pd.DataFrame({
    'A': ['a', 'a', 'b', 'a'],
    'B': ['b', 'c', 'a', 'b'],
    'C': ['c1', 'c2', 'c3', 'c4']
})

步骤2:分组合并C列

使用groupby结合agg方法,按A、B列分组后将C列值合并为列表:

# 分组并聚合C列为列表
result = df.groupby(['A', 'B'])['C'].agg(list).reset_index()

可选:处理单元素列表(转为单个值)

如果希望单个元素的分组不显示列表格式(和你给出的输出一致),可以对结果再做一次处理:

result['C'] = result['C'].apply(lambda x: x[0] if len(x) == 1 else x)

最终结果

执行上述代码后,得到的result就是你需要的格式:

A  B          C
0  a  b  [c1, c4]
1  a  c        c2
2  b  a        c3

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 09:33:16