Skip to main content
 首页 » 编程设计

python之在 Pandas 中加入或聚合属于同一组的字符串

2025年05月04日28虾米姐

给定这样的 CSV,我如何合并来自同一列的信息?

First,Last,Email,Group 
Tim,Elfelt,tim@domain.com,Information Systems 
Tim,Elfelt,tim@domain.com,Technology Training 

应该根据合并的电子邮件列输出这个

First,Last,Email,Group 
Tim,Elfelt,tim@domain.com,Information Systems;Technology Training 

编辑:感谢 coldspeed,这里的工作解决方案:

import pandas as pd 
data = pd.read_csv('combinedemails.csv', encoding='utf-8', 
                   usecols=['First', 'Last', 'Email', 'Group', 'List']).groupby(['First', 'Last', 'Email']).Group.apply( 
    '; '.join).reset_index(name='Group') 
 
data.to_csv('output.csv', sep=',', encoding='utf-8') 

请您参考如下方法:

你可以使用groupby + str.join:

df.groupby(['First', 'Last', 'Email']).Group.apply('; '.join).reset_index(name='Group') 
 
  First    Last           Email                                     Group 
0   Tim  Elfelt  tim@domain.com  Information Systems; Technology Training