本站消息

  本站每日ip已达10000,出租广告位,位置价格可谈,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

在pandas groupby中对列表中的行进行分组

发布于2019-08-21 19:06     阅读(640)     评论(0)     点赞(5)     收藏(4)


我有一个像熊猫一样的数据框:

a b
A 1
A 2
B 5
B 5
B 4
C 6

我希望按第一列分组,并将第二列作为行中的列表:

A [1,2]
B [5,5,4]
C [6]

使用pandas groupby可以做这样的事吗?


解决方案


您可以使用groupby以对感兴趣的列进行分组,然后apply list对每个组进行分组:

In [1]:
# create the dataframe    
df = pd.DataFrame( {'a':['A','A','B','B','B','C'], 'b':[1,2,5,5,4,6]})
df
Out[1]:
   a  b
0  A  1
1  A  2
2  B  5
3  B  5
4  B  4
5  C  6

[6 rows x 2 columns]

In [76]:
df.groupby('a')['b'].apply(list)

Out[76]:
a
A       [1, 2]
B    [5, 5, 4]
C          [6]
Name: b, dtype: object


所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接: https://www.pythonheidong.com/blog/article/51017/

来源: python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

5 0
收藏该文
已收藏

评论内容:(最多支持255个字符)