python pandas中的agg函数用法
作者:python小工具 发布时间:2023-07-20 09:40:08
标签:python,pandas,agg
pandas中的agg函数
python中的agg函数通常用于调用groupby()函数之后,对数据做一些聚合操作,包括sum,min,max以及其他一些聚合函数
如下所示:
>>> df = pd.read_excel(r"D:/myExcel/1.xlsx")
>>> df
A B C
0 bob 12 45
1 millor 15 23
2 bob 34 88
3 bob 98 23
(1)获取按A分组后B列的最大值
>>> df.groupby(by='A').agg({'B':'max'})
B
A
bob 98
millor 15
(2)获取按A分组后B列的最大值和最小值
>>> df.groupby(by='A').agg({'B':['max','min']})
B
max min
A
bob 98 12
millor 15 15
(3)获取按A分组后B列的最大值和最小值以及C列的最大值
>>> df.groupby(by='A').agg({'B':['max','min'], 'C':'min'})
B C
max min min
A
bob 98 12 23
millor 15 15 23
(4)默认是以函数名称命名的,可以修改
>>> df.groupby(by='A').agg(
b_min=pd.NamedAgg(column='B', aggfunc='min'),
b_max=pd.NamedAgg(column='B', aggfunc='max'))
b_min b_max
A
bob 12 98
millor 15 15
通常在调用完agg函数后需要reset_index,因为pandas会默认将groupby()的列也做为index传到结果中
>>> df.groupby('A').B.agg(['min', 'max'])
min max
A
bob 12 98
millor 15 15
>>> df.groupby('A').B.agg(['min', 'max']).reset_index()
A min max
0 bob 12 98
1 millor 15 15
这就是python小工具关于agg函数的介绍,挺有用 的一个函数。
pandas详解 聚合运算agg()
在数据分析中,分组聚合二者缺一不可。对数据聚合(求和、平均值等)通常是不可避免的。pd.agg()很方便进行聚合操作。
1. 创建DataFrame对象
import pandas as pd
df1 = pd.DataFrame({'sex':list('FFMFMMF'),'smoker':list('YNYYNYY'),'age':[21,30,17,37,40,18,26],'weight':[120,100,132,140,94,89,123]})
grouped = df1.groupby(['sex','smoker'])
# sex有 F M 二值,smoker有 Y N 二值,故分成四组。
2. 单列聚合
grouped['age'].agg('mean')
sex smoker
F N 30.0
Y 28.0
M N 40.0
Y 17.5
Name: age, dtype: float64
3. 多列聚合
grouped.agg('mean')
4. 多种聚合运算
grouped['age'].agg(['min','max'])
5. 多种聚合运算并更改列名
grouped['age'].agg([('A','mean'),('B','max')])
6. 不同的列运用不同的聚合函数
grouped.agg({'age':['sum','mean'], 'weight':['min','max']})
7. 使用自定义的聚合函数
def Max_cut_Min(group):
return group.max()-group.min()
grouped.agg(Max_cut_Min)
8. 方便的descibe
grouped.describe()
来源:https://blog.csdn.net/weixin_45144170/article/details/105008350
0
投稿
猜你喜欢
- 微软昨天在其2009年专业开发者大会上展示了下一个版本的Internet Explorer浏览器IE9。尽管只是一个早期版本,IE开发团队还
- 当元素设置浮动(float)后会被移出文档流,相信大家都会经常遇到这样的问题。这问题的解决办法有N种之多,因为每种浏览器对CSS的解析各异,
- asp压缩access数据库(带密码)方法:以下是一个类文件,下面的注解是调用类的方法 注意:如果系统不支持建立Scripting
- 下面两个函数实现了对字符串中数字的判断。function isnaw(str) f
- PHP crc32() 函数实例输出 crc32() 的结果:<?php $str = crc32("Hello World
- 今天在做sql Server 2005的实验的时候碰到的问题,问题描述很清楚,怀疑是我以前给计算机修改了名称而导致的.可以用select @
- 因客户需求,要把数据库里的索引编号做成五位长度的,且能自动累加编号,我只会在SQL中使用Identity自动编号:Create Table
- 如果是在Oracle10g之前,删除一个表空间中的数据文件后,其文件在数据库数据字典中会仍然存在,除非你删除表空间,否则文件信息不会清除。但
- 数据库开发数据库应用,选择一个好的数据库是非常重要的。下面从一些方面比较了SQL Server与Oracle、DB2三种数据库,为你选择数据
- 我们在网页中使用CSS来设置网页、表格和字体大小,一般使用的是网络上较流行的9磅字:<STYLE type=TEXT/CSS
- 如何制作一个安全的页面?随后,让我们来编程:manage.asp' 登录页面<%@ Language=VB
- 我们平日办公时用得最多的软件是Execl、Word或WPS Office等,你的计算机中一定储存着大量的XLS、DOC、WPS文件吧!网页制
- 出现这样的问题是当你浏览UTF-8编码的时候,服务器默认用UTF-8的引擎来输出html,当你用再浏览GB2312的页面时,它还是用UTF-
- PHP asXML()函数实例格式化 XML(版本 1.0)中的 SimpleXML 对象的数据:<?php $note=<&l
- 1.彻底弄懂CSS盒子模式一(DIV布局快速入门) 2.彻底弄懂CSS盒子模式二(导航栏实例) 3.彻底弄懂CSS盒子模式三(浮动的表演和清
- icech: 在制作网页的时候,常常要遇到制作虚线表格的问题,下面的文章就能解决这个问题。方法一:作一个1X2的图。半黑半白,再利用表格作成
- 函数getcache,会自动建立需要的缓存。 代码如下:Function getcache(funsname,isreset,is
- 用div+css制作页面,想实现左右两部分固定宽度,而中间部分不固定,并随着屏幕分辨率的的变化而自动伸缩。大家可知道应该如何实现? &nbs
- 最近对 Range 和 Selection 比较感兴趣。基本非 IE 的浏览器都支持 DOM Level2 中的 Range,而 IE 中仅
- 英文的文档在这里,详细全面,本文仅为自己的学习笔记,只是试图通过转述加深自己的学习,不详细不全面。由于浏览器之间的差异,所以在JS中监听事件