一个学校有三个班级,根据成绩取每个班级的前三名;
一个公司有三个销售部门,根据销售业绩取三个部门的销冠。。。
类型这样的需要有很多种。



一个excel表中,三个sheet(三个班级),把考试成绩的前三名排列出来。
import pandas as pd
# sheet_name=None遍历为字典,读取所有数据
df = pd.read_excel("成绩.xlsx", sheet_name=None)
# 三个表格合并成为一个大表格
df_all = pd.concat(df.values())
# sample从序列a中随机抽取n个元素,并将n个元素生以list形式返回
df_all.sample(3)
# groupby函数主要的作用是进行数据的分组以及分组后地组内运算;nlargest返回按列降序排列的前n行。
df_all.groupby(['班级']).apply(lambda x: x.nlargest(3, "成绩")).to_excel("结果.xlsx")
结果输出:

该篇博客介绍了如何利用Python的Pandas库处理Excel文件,分别从三个班级的成绩表和三个销售部门的业绩表中提取每个班级的前三名学生和每个部门的销售冠军。通过读取Excel、合并数据、采样及使用groupby和nlargest函数,实现了数据筛选和排序,最后将结果保存到新的Excel文件中。
6166

被折叠的 条评论
为什么被折叠?



