我正在尝试以围绕标识符为基础的数据在熊猫中建立一个综合的数据框。
我的输入数据框:
>>> data = [['x', '34H52'], ['x', '38B55'], ['y', '34H52'], ['y', '38B55'], ['z', '38B55'], ['z', '38B55']]
>>> df = pd.DataFrame(data, columns=['identifier', 'data'])
>>> df
identifier data
0 x 34H52
1 x 38B55
2 y 34H52
3 y 38B55
4 z 38B55
5 z 38B55
我需要通过标识符来连接值。
我想要的输出:
identifier data
0 x 34H52,38B55
1 y 34H52,38B55
2 z 38B55,38B55
我对熊猫不是很有经验,所以我想知道熊猫是否可以直接做到这一点,如果可以,怎么办?
答案 0 :(得分:0)
给予
>>> df
identifier data
0 x 34H52
1 x 38B55
2 y 34H52
3 y 38B55
4 z 38B55
5 z 38B55
您可以按标识符分组,然后在聚合步骤中应用str.join
。
>>> df.groupby('identifier', as_index=False).agg(lambda s: ','.join(s))
identifier data
0 x 34H52,38B55
1 y 34H52,38B55
2 z 38B55,38B55