Pandas将行复制到唯一的行

时间:2015-10-13 16:29:21

标签: python pandas

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

df = pd.DataFrame({'Id':['1', '1', '1', '2', '2'], 'Name':['A', 'B', 'C', 'A', 'B']})

我想要的是得到这样的东西。

df1 = pd.DataFrame({'Id':['1', '2'], 'Name':['A', 'B', 'C', 'A', 'B']})

我有一个像上面这样的数据框但我必须做一些分析,所以我使用以下代码将其拆分:

df2 = pd.concat([Series(row['Id'], row['Name'].split(',')) for _, row in df.iterrows()]).reset_index()

我正在寻求扭转代码,但我陷入困境。

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:1)

试试这个:

df.groupby('Id')['Name'].apply(','.join)

您可能需要重置索引并重命名列,但这应该是作业的主要部分。