如何在单个数据框架上合并具有相同索引的行?

时间:2015-10-29 20:41:33

标签: python pandas

我有一个如下所示的数据框:

A          B           C
1          1234        Win
1          2345        Win
2          1987        Loss
3          3456        Win
3          4567        Win

我希望这成为:

A          B           C
1          1234,2345   Win
2          1987        Loss
3          3456,4567   Win

注意:C值对于同一索引始终具有相同的值。

任何人都可以提供帮助?谢谢!

1 个答案:

答案 0 :(得分:11)

你可以在'A'和'C'上groupby看到他们的关系相同,将'B'列转换为str,join使用逗号:

In [23]:
df.groupby(['A','C'])['B'].apply(lambda x: ','.join(x.astype(str))).reset_index()

Out[23]:
   A     C          B
0  1   Win  1234,2345
1  2  Loss       1987
2  3   Win  3456,4567