pandas groupby
pandas中groupby用法详解是什么呢?不知道的小伙伴来看看小编今天的分享吧!
在Pandas中,社交领域将用户根据画像(性别、年龄)进行细分,研究用户的使用情况和偏好等主要运用groupby完成。
Groupby的基本原理
在pandas中,实现分组操作的代码很简单,仅需一行代码,在这里,将上面的数据集按照pany字段进行划分
In [5]: group = data.groupby("pany")
将上述代码输入ipython后,会得到一个DataFraGroupBy对象
In [6]: group
Out[6]: <pandas.core.groupby.generic.DataFraGroupBy object at 0x000002B7E2650240>
那这个生成的DataFraGroupBy是啥呢?对data进行了groupby后发生了什么?ipython所返回的结果是其内存地址,并不利于直观地理解,为了看看group内部究竟是什么,这里把group转换成list的形式来看
In [8]: list(group)
Out[8]:
[('A', pany salary age
3 A 20 22
6 A 23 33),
('B', pany salary age
4 B 10 17
5 B 21 40
8 B 8 30),
('C', pany salary age
0 C 43 35
1 C 17 25
2 C 8 30
7 C 49 19)]
转换成列表的形式后,可以看到,列表由三个元组组成,每个元组中,第一个元素是组别(这里是按照pany进行分组,所以分为了A,B,C),第二个元素的是对应组别下的DataFra,整个过程可以图解如下
来说,groupby的过程就是将原有的DataFra按照groupby的字段(这里是pany),划分为若干个分组DataFra,被分为多少个组就有多少个分组DataFra。所以说,在groupby之后的一系列操作(如agg、apply等),均是基于子DataFra的操作。
以上就是小编今天的分享了,希望可以帮助到大家。