假设我有一个Pandas数据框架:
index name A
0 one a
1 two a
2 one b
3 two a
如何合并具有相同"名称"的行,以便新列A是与每个"名称"相关联的所有A的列表?因此,输出将是:
index name A
0 one [a, b]
1 two [a]
更新答案
df = pd.DataFrame({
'name' : ['one', 'two', 'one', 'two'],
'A' : ['a', 'a', 'a', 'a'],
'B': ['a', 'b', 'a', 'a']
})
df['COLUMN_MERGE'] = df['A'].astype(str) + ' ' + df['B'].astype(str)
df = df.groupby(['name'])['COLUMN_MERGE'].apply(set).apply(list).reset_index(name = 'Distinct_Merge')