pandas groupby()的使用小结

 更新时间:2023年11月08日 09:03:08   作者:m0_38093796  
在数据分析中,经常会用到分组,可用函数pandas中的groupby(),本文就来介绍一下pandas groupby()的使用小结,具有一定的参考价值,感兴趣的可以了解一下

在数据分析中,经常会用到分组,可用函数 pandas 中的groupby()。

groupby()主要的分组统计方向:

1、分组汇总
2、分组描述性统计分析
3、分组计算均值等统计量
4、分组去重
5、分组排序取样本
6、分组汇总,然后再分组计算

Date	Latitude	Longitude	Depth	Type
01/02/1965	19.246	145.616	131.6	Earthquake
01/04/1965	1.863	127.352	80.0	Earthquake
01/05/1965	-20.579	-173.972	20.0	Earthquake
01/08/1965	-59.076	-23.557	15.0	Earthquake
01/09/1965	11.938	126.427	15.0	Earthquake
#1、分组统计组内个数
df.groupby(['date','Type'])
	.size()

#2、分组统计计算‘Depth'的基本数据分布
df.groupby(['date','type'])['Depth']
	.describe()
	
#3、分组统计计算‘Latitude'的均值	
df.groupby(['date','type'])
	.agg({'Latitude':'mean'})

#分组统计计算两列数据的均值
df.groupby(['date','type'])
	.agg(la_mean = ('Latitude','mean'),
 		 lo_mean = ('Longitude','mean'),
 		 la_range = ('depth',lambda x:x.max() - x.min()))

#4、分组然后对每组去重,然后汇总去重后的个数
df.groupby('date')
	.apply(lambda x: x.drop_duplicates('Type')['Type']
		.count())

#5、分组,然后按照‘Latitude'降序,并取出每组的前3个样本。
df.groupby(['date'])
	.apply(lambda x: x.sort_values('Latitude',ascending = False)
			.head(3))

#6、分组,然后汇总计算两列数据,再进行分组,取出每一组‘la_sum'的最大值
df.groupby(['date','type'])
	.agg(la_sum = ('Latitude','sum'),
		 lo_sum = ('Longitude','sum'))
		 	.groupby(['date'])
				.apply(lambda x:x.sort_values('la_sum ',ascending = False).head(1))

#分组,然后按照type排序,再分组,取出前10汇总和后10汇总,然后再计算两者的比率
df.groupby('date')
	.apply(lambda x:x.sort_values('type'))
		.reset_index(drop = True).groupby('date')
			.agg(tail10 = ('depth',lambda x:x.head(10).sum()),
				 top10 = ('depth',lambda x:x.tail(10).sum()))
					.apply(lambda x:x['top10']/x['tail10'],axis = 1)

groupby()结合agg()和apply(),可以解决很多复杂的分组计算问题。

到此这篇关于pandas groupby()的使用小结的文章就介绍到这了,更多相关pandas groupby()使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • TensorFlow卷积神经网络AlexNet实现示例详解

    TensorFlow卷积神经网络AlexNet实现示例详解

    这篇文章主要为大家介绍了TensorFlow卷积神经网络AlexNet实现示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2021-11-11
  • Python导入模块的3种方式小结

    Python导入模块的3种方式小结

    本文主要介绍了Python导入模块的3种方式小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • python保存数据到本地文件的方法

    python保存数据到本地文件的方法

    今天小编就为大家分享一篇python保存数据到本地文件的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • Python Django的安装配置教程图文详解

    Python Django的安装配置教程图文详解

    Django是一个开放源代码的Web应用框架,由Python写成,Django是重量级选手中最有代表性的一位。许多成功的网站和APP都基于Django。这篇文章主要介绍了Python Django的安装配置,需要的朋友可以参考下
    2019-07-07
  • Python网络爬虫的基本原理解析

    Python网络爬虫的基本原理解析

    如果要获取网络上数据,我们要给爬虫一个网址(程序中通常叫URL),爬虫发送一个HTTP请求给目标网页的服务器,服务器返回数据给客户端(也就是我们的爬虫),爬虫再进行数据解析、保存等一系列操作,需要的朋友可以参考下
    2023-05-05
  • 获取CSDN文章内容并转换为markdown文本的python

    获取CSDN文章内容并转换为markdown文本的python

    这篇文章主要介绍了自己写的小工具,可以直接获取csdn文章并转换为markdown格式,需要的朋友可以参考下
    2020-09-09
  • 进一步探究Python的装饰器的运用

    进一步探究Python的装饰器的运用

    这篇文章主要介绍了更为深入的Python的装饰器的运用,Python的装饰器是Python学习进阶当中的重要知识点,需要的朋友可以参考下
    2015-05-05
  • django生产环境搭建(uWSGI+django+nginx+python+MySQL)

    django生产环境搭建(uWSGI+django+nginx+python+MySQL)

    本文主要介绍了django生产环境搭建,主要包括uWSGI+django+nginx+python+MySQL,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • python使用xmlrpc实例讲解

    python使用xmlrpc实例讲解

    这篇文章主要介绍了python中使用xmlrpc的实例,大家参考使用吧
    2013-12-12
  • Scrapy的简单使用教程

    Scrapy的简单使用教程

    Scrapy,Python开发的一个快速,高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据。Scrapy用途广泛,可以用于数据挖掘、监测和自动化测试。
    2017-10-10

最新评论