这篇文章主要介绍“怎么使用python groupby函数实现分组后选取最值”,在日常操作中,相信很多人在怎么使用python groupby函数实现分组后选取最值问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么使用python groupby函数实现分组后选取最值”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
现在需要将course分组,然后选择出每一组里面的最大值和最小值,并保留下来
实现下面数据结果:
直接使用groupby函数,不能直接达到此效果,需要在groupby函数上添加apply和lambda函数
代码如下:
import pandas as pddata = pd.read_excel('group_apply.xlsx')data1 = data.groupby('course').apply(lambda t: t[(t['grade']==t['grade'].min()) ^ (t['grade']==t['grade'].max())])
前面的index,是两列,所以需要处理一下,这个是groypby函数处理之后所产生,只需要删除即可
data2 = data1.reset_index(drop=True)
代码整合:
import pandas as pddata = pd.read_excel('group_apply.xlsx')data1 = data.groupby('course').apply(lambda t: t[(t['grade']==t['grade'].min()) ^ (t['grade']==t['grade'].max())])data2 = data1.reset_index(drop=True)
写入到excel中:
到此,关于“怎么使用python groupby函数实现分组后选取最值”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!