当前位置: 首页 > news >正文

免费广告行业网站建设cdr做网站

免费广告行业网站建设,cdr做网站,免费奖励的网站有哪些,用织梦后台修改网站logo用Python批量处理Excel文件,实现自动化办公 一、具体需求 有以下N个表,每个表的结构一样,如下: 需要把所有表数据汇总,把每个人的得分、积分分别加起来,然后按总积分排名,总积分一致时&#xff…

用Python批量处理Excel文件,实现自动化办公

一、具体需求

有以下N个表,每个表的结构一样,如下:

需要把所有表数据汇总,把每个人的得分、积分分别加起来,然后按总积分排名,总积分一致时,名次一致且非连续排序;积分一致的前提下,按总得分降序展示,但不改变排名,结果如下:

二、Python开发

1、导入所需的包

import pandas as pdimport glob

2、获取所有Excel文件的文件路径

excel_files = glob.glob("./样例数据/*.xlsx")

3、将各表数据合并到主DataFrame

# 初始化一个空DataFramemerged_df = pd.DataFrame()
# 循环读取每个Excel文件并合并到DataFramefor file in excel_files:    df = pd.read_excel(file, header=1)  # 读取Excel文件,跳过第一行数据    merged_df = merged_df._append(df, ignore_index=True)  # 合并到主DataFrame

4、计算总积分和总排名

merged_df['总得分'] = merged_df.groupby('姓名')['月度得分'].transform('sum')  # 计算得分总和merged_df['总积分'] = merged_df.groupby('姓名')['积分'].transform('sum')  # 计算积分总和merged_df.drop_duplicates(subset=['姓名', '总积分'], keep='first', inplace=True)  # 去重

5、以总积分排名

merged_df['总排名'] = merged_df['总积分'].rank(ascending=False, method='min')

6、按总积分列的值进行排序,重置索引

merged_df = merged_df.sort_values(by=['总积分','总得分'], ascending=[False,False]).reset_index(drop=True)

7、获取需要输出的结果​​​​​​​

result_df = pd.DataFrame()result_df = merged_df.loc[:, ['姓名','总得分','总积分','总排名']].copy()

8、将合并后的DataFrame输出到一个新Excel文件

result_df.to_excel("总积分及排名.xlsx", index=False)

汇总代码展示如下

import pandas as pdimport globexcel_files = glob.glob("./样例数据/*.xlsx")# 初始化一个空DataFrame
merged_df = pd.DataFrame()# 循环读取每个Excel文件并合并到DataFrame  append() 方法在DataFrame的末尾添加一行或一列数据 新版本修改为 _append()
for file in excel_files:df = pd.read_excel(file, header=1)  # 读取Excel文件,跳过第一行数据merged_df = merged_df._append(df, ignore_index=True)  # 合并到主DataFramemerged_df['总得分'] = merged_df.groupby('姓名')['月度得分'].transform('sum')  # 计算得分总和
merged_df['总积分'] = merged_df.groupby('姓名')['积分'].transform('sum')  # 计算积分总和
merged_df.drop_duplicates(subset=['姓名', '总积分'], keep='first', inplace=True)  # 去重merged_df['总排名'] = merged_df['总积分'].rank(ascending=False, method='min')merged_df = merged_df.sort_values(by=['总积分','总得分'], ascending=[False,False]).reset_index(drop=True)result_df = pd.DataFrame()
result_df = merged_df.loc[:, ['姓名','总得分','总积分','总排名']].copy()result_df.to_excel('./样例数据/总排名.xlsx', index=False)

 

http://www.yayakq.cn/news/350356/

相关文章:

  • 北京网站开发公司一网天行怎么用图片做网站背景图
  • 可以做录音兼职的网站WordPress实现登陆提醒
  • 那个网站的公众后推广做的好一个公司设计网站怎么做的
  • wordpress制作视频站经典的响应式布局网站
  • 做消防哪些网站找工作seo优化
  • 京东联盟新手没有网站怎么做推广h5建站免费
  • jsp网站访问万维网wordpress后台被黑
  • 企业网站登录游乐网站设计
  • 学院的网站怎么做金山快盘为什么停止服务
  • 丹阳高铁站对面的规划网站前端开发培训
  • 自己建设的网站打开慢新闻摘抄2022最新20篇
  • 山西建设网站公司北安网站建设
  • 专门做民宿的网站有哪些r6300v2做网站
  • 河南新站关键词排名优化外包seo海外运营
  • 今科网站建设ui界面设计案例ppt
  • 多语言网站建设做网站最基本
  • 手机网站排名优化软件视频网站的服务器建设
  • 招生网站建设方案朝阳网站关键词优化
  • 做网站怎样才能接单搬家网站建设公司
  • 网站运营的成本网站界面设计的流程
  • 电商平台网站大全永久免费crm软件下载
  • 开源站群cms农业网站建设方案 ppt模板
  • 赤峰做网站建设的企业泰州市网站建设制作
  • 网站设计的软件wordpress是什么语言开发的
  • 自己建网站可以赚钱吗网站建设结束语
  • 网站被360拦截怎么办科技加盟网站建设
  • zencart中文网站快递加盟代理
  • 网站管理权限国家建设部官方网站
  • 做钓鱼网站原理有没有专门做帽子的网站
  • 免费网站建设联系电话关于网站规划建设方案书