pandas笔记:groupby整理

0 数据集

# Visual Python: Data Analysis > File
vp_df = pd.read_csv('https://raw.githubusercontent.com/visualpython/visualpython/main/visualpython/data/sample_csv/fish.csv')
vp_df

 1 单列聚合

vp_df.groupby('Type')['Kg'].mean()
'''
Type
mackerel     1.417456
salmon       5.996645
tuna        18.038317
Name: Kg, dtype: float64
'''

按照Type 聚类,聚类后将同组的Kg属性合并,求均值

聚合的内容可以是 max, min, mean, unique(唯一值), nunique(唯一值数量),lambda 表达式

1.1 单列聚合多个操作

vp_df.groupby('Type')[['Kg']].agg(['mean','max'])

  

1.2 单列聚合多个属性

vp_df.groupby('Type')[['Kg','Depth']].mean()

 

 按照Type 聚类,聚类后将同组的Kg、Depth属性合并,求均值

1.3 单列聚合多个属性多个操作

vp_df.groupby('Type')[['Kg','Depth']].agg(['mean','max'])

 1.4 多列聚合

vp_df.groupby(['Type','Depth']).agg(mean_kg=('Kg','mean'),
                         max_depth=('Depth','max'))

 

 2 对聚合结果重命名

重命名的名字=(需要操作的列名,需要的操作名)

vp_df.groupby('Type').agg(mean_kg=('Kg','mean'),
                         max_depth=('Depth','max'))

 3 生成了多少个组 ngroups

vp_df.groupby(['Type','Depth']).ngroups
#1500

4 每一个不同的group 各有多少个元素

vp_df.groupby(['Type']).count()

 

4.1 使用reset_index

data.groupby(['LONCOL', 'LATCOL'])['VehicleNum'].count()
'''
LONCOL  LATCOL
36      63        3
        64        2
        65        1
        66        1
        67        8
                 ..
182     44        1
183     44        2
184     44        1
185     44        2
186     43        5
Name: VehicleNum, Length: 3382, dtype: int64
'''

 

data.groupby(['LONCOL', 'LATCOL'])['VehicleNum'].count().reset_index()

 

参考内容:Python数据分组处理必备:pandas groupby (qq.com) 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

UQI-LIUWJ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值