Pandas-连接标识符中的值



我正试图在panda中制作一个全面的数据框架,该框架基于围绕标识符构建的数据。

我的输入数据帧:

>>> 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

我对熊猫不是很有经验,所以我想知道这是否可以直接对熊猫进行,如果可以,怎么做?

给定

>>> 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

最新更新