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

如何从pandas DataFrame中获取各Manager对应的唯一SalesMan列表

解决方法

你可以直接通过groupby搭配聚合函数实现,以下是两种常用实现方案:

方案1:先去重再聚合(数据量大时效率更高)

先剔除重复的「Manager-销售」配对,再分组聚合成列表:

# 提取所需列、去重后分组聚合
res_df = df[["Manager", "SalesMan"]].drop_duplicates() \
        .groupby("Manager", as_index=False)["SalesMan"] \
        .agg(list_of_salesmen=list)

方案2:分组后组内去重聚合(写法更简洁)

直接分组后,在每个Manager的组内对销售去重再转列表:

res_df = df.groupby("Manager", as_index=False)["SalesMan"] \
        .agg(list_of_salesmen=lambda x: list(x.unique()))

两种方案最终得到的res_df就是你需要的结构,如果不需要保留没有对应销售人员的Manager,结果会自动过滤掉这类记录。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 15:06:05