发布于2019-08-21 19:06 阅读(717) 评论(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/462b427944dae4e63661/
来源:python黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 python黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-1
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!