pandas分组求和两种方法的比较
Pandas是Python语言的一个扩展程序库,被广泛应用于数据分析。在数据分析工作中,如果要将数据根据某个(多个)字段划分为不同的组(group),则需要用到Pandas的groupby方法。
在对不同的组进行求和操作时,我们既可以直接使用sum()函数,也可以使用agg聚合函数。这两种方法有什么区别呢?哪种方法会更好?
举个简单的例子:
df = pd.DataFrame({"Fruits":["apple","banana","apple","pear","apple","banana"],"Numbers":[5,8,9,3,4,5]})
df的值如下所示:
我们根据水果的种类进行分组,来求取每种水果的数量总和。
1、直接使用sum()函数
df0 = df.groupby(['Fruits'])['Numbers'].sum()
df0
得到的结果:
我们注意,得到的结果只有索引,而没有列名,结果是Series类型。
2、使用聚合函数agg
DataFrame.agg(func,axis = 0,* args,** kwargs )
参数func采用字典形式:{‘行名/列名’:‘函数名’},其使用指定轴上的一个或多个操作进行聚合。
df1 = df.groupby(['Fruits']).agg({"Numbers":"sum"})
df1
得到的结果:
此次得到的结果既有索引又有列名,因此是DataFrame类型。
pandas分组求和的两种方法,得到的结果类型是不一样的。因此,我们在使用pandas进行分组求和的时候,需要注意这两种方法的区别。个人更推荐使用agg聚合函数,因为这种方法更简明易懂。
1 声望
0 粉丝
推荐阅读
最好用的 python 库合集
🎈 分词 - jieba优秀的中文分词库,依靠中文词库,利用词库确定汉子之间关联的概率,形成分词结果 {代码...} 🎈 词云库 - wordcloud对数据中出现频率较高的 关键词 生成的一幅图像,予以视觉上的突出 {代码...} 🎈 ...
tiny极客赞 11阅读 2.9k评论 2
数据结构与算法:二分查找
一、常见数据结构简单数据结构(必须理解和掌握)有序数据结构:栈、队列、链表。有序数据结构省空间(储存空间小)无序数据结构:集合、字典、散列表,无序数据结构省时间(读取时间快)复杂数据结构树、 堆图二...
白鲸鱼赞 9阅读 5.4k
滚蛋吧,正则表达式!
你是不是也有这样的操作,比如你需要使用「电子邮箱正则表达式」,首先想到的就是直接百度上搜索一个,然后采用 CV 大法神奇地接入到你的代码中?
良许赞 3阅读 1.5k
搭个ChatGPT算法模型,从哪开始?
最近 ChatGPT 很火,火到了各行各业。记得去年更多的还是码农最新体验后拿它搜代码,现在各行各业都进来体验,问它咋理财、怎么写报告和给小孩起名。😂 也因此让小傅哥在头条的一篇关于 ChatGPT 的文章都有了26万...
小傅哥赞 6阅读 1.3k
程序员适合创业吗?
大家好,我是良许。从去年 12 月开始,我已经在视频号、抖音等主流视频平台上连续更新视频到现在,并得到了不错的评价。每个视频都花了很多时间精力用心制作,欢迎大家关注哦~考虑到有些小伙伴没有看过我的视频,...
良许赞 3阅读 1.3k
PyCharm 激活破解教程, 2023 年 2 月亲测有用
本文分享一下PyCharm 2022.2.3 版本最新激活破解教程,注意不要使用太新的版本,都是 Jetbrains 产品,本文专门配上了 Pycharm 的图片,跟着下面教程一步一步来即可。
程序员徐公阅读 10.3k评论 1
Ubuntu20.04 从源代码编译安装 python3.10
Ubuntu 22.04 Release DateUbuntu 22.04 Jammy Jellyfish is scheduled for release on April 21, 2022If you’re ready to use Ubuntu 22.04 Jammy Jellyfish, you can either upgrade your current Ubuntu syste...
ponponon赞 1阅读 4.6k评论 1
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。