tim*_*123 1 python string dataframe pandas
给定这样的CSV,我如何组合来自同一列的信息?
First,Last,Email,Group
Tim,Elfelt,tim@domain.com,Information Systems
Tim,Elfelt,tim@domain.com,Technology Training
Run Code Online (Sandbox Code Playgroud)
应该输出这个,基于组合电子邮件列
First,Last,Email,Group
Tim,Elfelt,tim@domain.com,Information Systems;Technology Training
Run Code Online (Sandbox Code Playgroud)
编辑:感谢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')
Run Code Online (Sandbox Code Playgroud)
你可以使用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
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
54 次 |
| 最近记录: |