在办公场景中,我们常常会遇到这样的场景:多个的Excel文件需要基于某一列或多列进行数据的匹配、合并,并提取出匹配数据中的相关数据。

最近遇到了这样一个问题:在核酸检测过程中,某个混检的试管出了问题,而之前采样的20人已经离开了,需要在4000多人中快速找到这20人的联系方式,以便重新采集。最惨的是采集app上只能看到这20人的身份证尾号和姓氏。

要解决这个问题关键有两步:匹配数据提取数据

Python中的pandas库提供了这一个问题的解决方案。代码写好后,只需关注两点:按哪列数据匹配要提取哪些列,便可以解决这类问题。

问题描述

1.辅助列生成

import pandas as pd# 读取Excel文件
df1 = pd.read_excel('./待查询信息.xlsx')
df2 = pd.read_excel('./学生信息加密表格.xlsx')# 待查询数据表——生成辅助列:姓氏
df1['姓氏'] = df1['姓名'].str[0]
df1['身份证后四位'] = df1['身份证号'].str[-4:]
# 数据库表——生成辅助列:编号后四位和姓氏
df2['身份证后四位'] = df2['身份证号'].str[-4:]
df2['姓氏'] = df2['姓名'].str[0]

2.合并匹配

mergeDf = pd.merge(df1,df2,how='left',on=['身份证后四位','姓氏'])

3.选取另存

# 选取需要的列名
outColNames = ['姓名_x','身份证号_x','班级','学号','联系方式',
]
mergeDf[outColNames].to_excel("数据匹配后的结果.xlsx",index=False)

其实对于数据的匹配,excel中的vlookup()函数也可以做,但不同的Excel文件之间处理免不了繁琐的框选、复制、粘贴吧,而且数据量大的时候手工拖动操作不仅效率低,而且有操作失误的风险。

文件之间处理免不了繁琐的框选、复制、粘贴吧,而且数据量大的时候手工拖动操作不仅效率低,而且有操作失误的风险。

【Python自动化Excel】多个excel文件,按列匹配数据相关推荐

  1. python表格多列合并_python 合并excel表格数据-如何用python从excel中同时提取两个列的数据,并生成dict(用xlrd)...

    用Python导出工程文件两个子页里的数据成为两个excel表格,但我想把它合并成个一个excel表格的两个sheet 可以采用一些操作Excel块去实现,比如xlrd.xlwt.openpyxl.x ...

  2. Python自动化复制整张Excel表的内容

    现状描述: 因每天需要接收各个小组的工作日报,由我汇总到一个Excel里面,该Excel分成多个sheet展示.每个小组的日报复制粘贴容易出错,且重复性劳动,于是想用python来实现自动化拷贝. 需 ...

  3. Python自动化办公,根据excel表格批量获取图片插入word

    初学python 最近因为工作需要大量导入图片至word,学习了大佬们的代码后自己写了段 我的表格第一行默认标题,所以均从第二行开始读取 初学者,代码格式比较乱 表格的形式 import docx f ...

  4. 【Python自动化办公】实现excel表中的数据批量导入到word指定位置(表格形式和下滑线形式)

    文章目录 案例1--word模板为表格 案例2--word模板中带有下划线形式 python docx基本操作 回到需求 案例1--word模板为表格 目的就是把excel中的数据,填入word模板中 ...

  5. Python自动化必会技能-Excel文件读取

    01 重点 在自动化测试过程中,经常需要使用excel文件来存储测试用例,那么在表格内设计好了测试用例数据后,如何通过自动化读取呢?此时就需要测试小姐姐动手写"代码"了~ 本文主要 ...

  6. Python自动化办公:将Excel表格内容批量导出为PDF文件

    Python自动处理Excel表格数据 序言 代码实现 序言 上一篇咱们实现了多个表格数据合并到一个表格,本次咱们来学习如何将表格数据分开导出为PDF文件. 部分数据 然后需要安装一下这个软件 wkh ...

  7. 简单易学的python自动化办公教学视频-Python自动化办公之操作Excel文件

    模块导入 import openpyxl 读取Excel文件 打开Excel文件 workbook = openpyxl.load_workbook("test.xlsx") 输出 ...

  8. python操作excel表格-Python自动化办公之操作Excel文件

    模块导入 import openpyxl 读取Excel文件 打开Excel文件 workbook = openpyxl.load_workbook("test.xlsx") 输出 ...

  9. python自动化办公教程-Python自动化办公之操作Excel文件

    模块导入 import openpyxl 读取Excel文件 打开Excel文件 workbook = openpyxl.load_workbook("test.xlsx") 输出 ...

最新文章

  1. 移动端300ms延迟解决的几种方法;
  2. mysql union join_MySQL 超新手入门(5) JOIN 与 UNION 查询
  3. MySQL 千万级 数据库或大表优化
  4. 移动端自适应布局方案尝试
  5. SQL Server 2012 中 SSAS 多维数据浏览器已经废除
  6. 网络安全基础知识笔记
  7. 《麦肯锡方法》第11章 用图表说明问题-思维导图
  8. mysql人脸数据库_人脸数据库汇总
  9. 世界好疯狂呢,神奇小子,开源了他的自动驾驶软件
  10. 厦大C语言上机 1413 模式匹配
  11. PAT_乙级_1006_筱筱
  12. 关于苹果ARKit的功能梳理和展望
  13. 华为EMUI10基本可以升鸿蒙,华为EMUI11发布,12月可升级为鸿蒙OS国产操作系统
  14. java memorystream 包_C#字符串string 、byte[]、MemoryStream、Base64String的相互转换
  15. 七年北漂落幕-【文末送书】
  16. Rasa课程、Rasa培训、Rasa面试、Rasa实战系列之Typo Robustness
  17. (七)如何使用Eclipse打开已有工程
  18. [css]版心和布局流程
  19. 操作系统复试面试问题
  20. elementui 时间选择控件 type=‘week‘ 时的参数配置以及传值问题

热门文章

  1. 将qDebug()信息重定向到文件中
  2. 什么是Entity Framework(EF)
  3. RTL8192CUS驱动程序编译
  4. 推荐今日火火火的 4 个开源项目
  5. codevs3990
  6. 英语四级口语考试计算机考吗,大学英语四级口语一定要考吗?
  7. aws sap认证概述
  8. java json 压缩,如何在Java中压缩JSON并在Javascript中解压缩
  9. 2022年第十一届认证杯数学中国数学建模国际赛小美赛:C 题 对人类活动进行分类 建模方案及代码实现
  10. win10运行窗口打开共享服务器很慢,快速操作win10系统电脑访问局域网共享文件速度很慢的方案...