首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

盘点一个Python自动化办公实战问题——统计民主评议表格

山映斜阳天接水,芳草无情,更在斜阳外。

大家好,我是皮皮。

一、前言

前几天在Python最强王者交流群【东哥】问了一个Python自动化办公的问题。问题如下所示:大佬们,请教一个Python自动化办公问题,我有7个这样的民主评议表格,现在想通过Python批量的计算每个人最后的平均总分,应该怎么处理呢?

二、实现过程

这个需求还挺有意思的,支部肯定每年都要开一次这样的会议,然后每次都需要专人来进行统计,如果挨个的对打开表格,然后复制、粘贴,汇总到统一的一个表格里边,这个方法未尝不可,但是这个方法就是有点费时费力了,而且非常繁琐。有时候,你可能因为人数太多,或者表格太多,复制的时候,少复制了,或者重复复制了,导致之前的数据有得重新删除,重新来一遍,这个就非常恼火了。这里给大家安利下Python自动化办公,助力你的统计。

这里【瑜亮老师】给了一个指导:批量读取7个表格,每个表格跳过前4行,读取后删除有null值的行,合并7个df,分组聚合取平均值,因为只要每个人的结果,因此不适合用transform。

import pandas as pd

import pathlib

# 获取文件夹中每个Excel文件的路径

folder = r"C:\Users\Desktop\民主评议表"

excel_files = pathlib.Path(folder).glob('*.xls')

header = ['姓名', '以学铸魂', '以学增智', '以学正风', '以学促干']

data = []

for i in excel_files:

# 读取Excel文件,并跳过前4行,使用前5列数据

df = pd.read_excel(i, skiprows=4, header=None, index_col=0, usecols="A:F")

df.dropna(inplace=True)

df.columns = header

df['总分'] = df[header[1:]].sum(axis=1)

df['平均分'] = df[header[1:]].mean(axis=1)*4

data.append(df)

#  纵向拼接data中的df数据

df = pd.concat(data, axis=0).reset_index(drop=True)

#  按照'姓名'列进行分组,并计算每个姓名的总分和平均分

# result = df.groupby('姓名').agg({'总分': 'sum', '平均分': 'mean'}).reset_index().sort_values(by="平均分", ascending=False)

result = df.groupby('姓名', as_index=False).agg(总分=('总分', 'sum'), 平均分=('总分', 'mean')).sort_values(by='平均分', ascending=False)

# result = df.groupby('姓名', as_index=False).agg(总分=('总分', 'sum'), 平均分=('总分', 'mean'))

print(result)

# 将结果保存到新的Excel文件中

# result.to_excel('output.xlsx', index=True)

代码运行之后,可以得到预期的结果,顺利地解决了粉丝的问题。

粉丝自己手动也计算出来了,结果和程序跑出来的吻合!

如果你也有类似这种Python相关的小问题,欢迎随时来交流群学习交流哦,有问必答!

【赠书活动】

零基础上手,让你快速精通:ChatGPT注册/登录基本操作提示词训练文章生成图片生成视频生成编写程序高效办公设计应用

【一句话推荐】

一本书开启AI高效办公时代,成为AI时代的先行者

【特色】

(1)零基础上手:本书的内容从零开始,力求浅显易懂,不需要额外的背景知识即可学习。

(2)前沿知识:本书力争将前沿的知识点和应用操作介绍给读者,帮助读者掌握新资讯和应用技能。

(3)形式丰富:本书内容除了文字描述,还有图片、表格、代码等多种表达形式,帮助读者更好地理解和掌握内容。

(4)案例丰富:本书通过丰富、翔实的案例和操作,引导读者轻松、快速地完成每项应用的操作。

(5)温馨提示:除了基础内容,每章附带的温馨提示提供了对当前讲解内容的补充和拓展,为读者答疑解惑,让学习者少走弯路。

【内容简介】

本书以人工智能领域最新翘楚“ChatGPT”为例,全面系统地讲解了ChatGPT的相关操作与热门领域的实战应用。

全书共10章,第1章介绍了ChatGPT是什么;第2章介绍了ChatGPT的注册与登录;第3章介绍了ChatGPT的基本操作与提问技巧;第4章介绍了用ChatGPT生成文章;第5章介绍了用ChatGPT生成图片;第6章介绍了用ChatGPT生成视频;第7章介绍了用ChatGPT编写程序;第8章介绍了ChatGPT的办公应用;第9章介绍了ChatGPT的设计应用;第10章介绍了ChatGPT的更多场景应用。

本书面向没有计算机专业背景又希望迅速上手ChatGPT操作应用的用户,也适合有一定的人工智能知识基础且希望快速掌握ChatGPT落地实操应用的读者学习。本书内容系统,案例丰富,浅显易懂,既适合ChatGPT入门的读者学习,也适合作为广大中职、高职、本科院校等相关专业的教材参考用书。

三、总结

大家好,我是皮皮。这篇文章主要盘点了一个Python自动化办公的问题,文中针对该问题,给出了具体的解析和代码实现,帮助粉丝顺利解决了问题。

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OzVp-Q0wG2ctSGrJU7YPb6VQ0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券