使用groupby()。一次对多个列应用(列表)

2022-07-06 11:25:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图将一个数据帧的多行合并成一行,并将具有不同值的列合并到一个列表中。有多个具有不同值的列

如果只需要将一列('b'在本例中)添加到列表中,df.groupby('a')['b'].apply(list)效果很好,但我不知道如何对多个列执行此操作

数据帧:

   a  b  c       d
0  1  b  1   first
1  1  b  2  second
2  2  c  1   third
3  2  c  2  fourth
4  2  c  3   fifth

首选数据帧后期操作:

   a  b          c                       d
0  1  b     [1, 2]         [first, second]
1  2  c  [1, 2, 3]  [third, fourth, fifth]

有没有一个简单的方法可以做到这一点


Tags: 数据方法df列表listfirstapplysecondgroupby效果thirdfourth本例fifth

热门问题