详谈pandas中agg函数和apply函数的区别

yipeiwu_com7年前Python基础

在利用python进行数据分析 这本书中其实没有明确表明这两个函数的却别,而是说apply更一般化.

其实在这本书的第九章‘数组及运算和转换'点到了两者的一点点区别:agg是用来聚合运算的,所谓的聚合当然是合成的成分比较大些,这一节开头就点到了:聚合只不过是分组运算的其中一种而已。它是数据转换的一个特例,也就是说,它接受能够将一维数组简化为标量值的函数。

当然这两个函数都是作用在groupby对象上的,也就是分完组的对象上的,分完组之后针对某一组,如果值是一维数组,在利用完特定的函数之后,能做到简化的话,agg就能调用,反之,如果比如自定义的函数是排序,或者像是书中278页所定义的top这一类的函数,当然是agg所不能解决的,这时候用apply就可以解决。因为他更一般化,不存在什么简化,什么一维数组,什么标量值。

以上纯属个人见解,不喜勿喷。

这篇详谈pandas中agg函数和apply函数的区别就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

下载糗事百科的内容_python版

复制代码 代码如下:#coding:utf-8 import urllib.request import xml.dom.minidom import sqlite3 import th...

Python 用户登录验证的小例子

复制代码 代码如下:#!/usr/bin/python#coding=gbk class User:    def __init__(self,userna...

python基于celery实现异步任务周期任务定时任务

python基于celery实现异步任务周期任务定时任务

这篇文章主要介绍了python基于celery实现异步任务周期任务定时任务,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 hello,...

11个并不被常用但对开发非常有帮助的Python库

11个并不被常用但对开发非常有帮助的Python库

近来,越来越多的数据科学家开始使用Python,我不由得想到,尽管他们从pandas、scikit-learn和numpy这些库中得到了不少好处,但是他们也许错过了一些也许较老但同样有帮...

Python如何实现动态数组

Python如何实现动态数组

Python序列类型 在本博客中,我们将学习探讨Python的各种“序列”类,内置的三大常用数据结构——列表类(list)、元组类(tuple)和字符串类(str)。 不知道你发现没有...