学无先后,达者为师

网站首页 编程语言 正文

python groupby函数实现分组选取最大值与最小值_python

作者:Vergil_Zsh   更新时间: 2022-10-23 编程语言

原数据展示

现在需要将course分组,然后选择出每一组里面的最大值和最小值,并保留下来

实现下面数据结果:

在这里插入图片描述

直接使用groupby函数,不能直接达到此效果,需要在groupby函数上添加apply和lambda函数

代码如下:

import pandas as pd
data = 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 pd
data = 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中:

在这里插入图片描述

原文链接:https://blog.csdn.net/KIKI_ZSH/article/details/124548025

栏目分类
最近更新