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

如何在pandas中对DataFrame按分组聚合行,合并同组列值

实现方案

pandas完全可以满足该需求,且针对10万级食品数据的场景具备足够的性能,核心实现代码如下:

import pandas as pd

# 示例数据集构造
df = pd.DataFrame(data={"product":["crisps", "crisps", "crisps",
                                   "bread", "bread", "bread",
                                   "pasta","pasta"], 
                   "ingredients": ["potato", "oil", "salt", 
                                   "flour", "salt", "water", 
                                   "flour", "eggs"]})

# 按产品分组聚合配料,直接拼接
result_df = df.groupby('product', as_index=False)['ingredients'].agg(','.join)

如果需要对同一产品的重复配料去重,可以使用如下写法:

result_df = df.groupby('product', as_index=False)['ingredients'].agg(lambda x: ','.join(x.unique()))

性能说明

pandas的groupby底层为优化过的C实现,常规10万级产品的聚合操作可在秒级完成。如果数据量达到千万级条目,可提前对product列做排序,能进一步提升分组聚合的效率。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.20 13:15:04