超实用!使用Python快速对比两个Excel表格之间的差异

这篇具有很好参考价值的文章主要介绍了超实用!使用Python快速对比两个Excel表格之间的差异。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

这是「活用数据」的第 11 篇原创文章

主要介绍如何通过DeepDiff实现两个Excel文件数据的快速对比。

对于日常办公中需要处理数据的同学来说,有时候需要对比两个Excel表格(或者是数据库)的数据是否完全相同。

对于简单少量的数据,我们当然可以人工肉眼对比,但是如果数据量一大,那么最好还是借助工具实现。

这篇文章主要通过使用DeepDiff库,介绍了一种简单地对比两个Excel文件是否完全相同的方法。

首先,我们需要下载DeepDiff库:

pip install deepdiff

接着再进行导入:

from deepdiff import DeepDiff

DeepDiff简单使用

接下来我们创建4个简单的Excel数据,方便后续对比,通过pandas读取数据:

import pandas as pd

df1 = pd.read_excel('data1.xlsx')
df2 = pd.read_excel('data2.xlsx')
df3 = pd.read_excel('data3.xlsx')
df4 = pd.read_excel('data4.xlsx')

4个Excel表格数据如下:
pandas对比两张表数据差异,Python,python,pandas

pandas对比两张表数据差异,Python,python,pandas

pandas对比两张表数据差异,Python,python,pandas

pandas对比两张表数据差异,Python,python,pandas

上面4个简单示例数据中,我们可以非常明显地看出来,data1跟data2时完全一致的,而data3跟data4只是数据的行顺序跟列顺序不一致,其本质上还是一致的,在我们实际工作中,我们希望的出来的结果也是data3跟data4是一致的。

首先,我们直接对两个不一样的DataFrame进行对比:
pandas对比两张表数据差异,Python,python,pandas

对比结果为{},这在DeepDiff中是表示没有差异的意思,但是,这个结果显然不符合实际,因为我们的data1跟data3其实是完全不一样的才对。

这是因为DeepDiff并不支持DataFrame对象的比较。

为了能够使用DeepDiff,我们可以把DataFrame对象转成字典对象。

可以看到,转成字典之后我们成功地对data1和data2进行比较,并给出了正确的结果:
pandas对比两张表数据差异,Python,python,pandas

为了验证,我们再拿data1和data3进行比较:
pandas对比两张表数据差异,Python,python,pandas

很明显,这两个对象是有区别的,没有任何问题。

接下来进入我们的重头戏,对比data3和data4,为了对比这两个对象,我们可以先把数据转成列表,然后再设置DeepDiff中的ignore_order参数忽略字典元素的顺序:
pandas对比两张表数据差异,Python,python,pandas

可以看到,结果非常简单完美地实现了我们的对比需求。

本文小结

本文只是对DeepDiff的使用场景进行了简单介绍,实际上基于这个Python库,我们还可以实现诸如JSON文件对比、数据库数据对比等拓展操作。

本文完整示例代码及文件可关注公众号,回复“python”获取。文章来源地址https://www.toymoban.com/news/detail-608940.html

到了这里,关于超实用!使用Python快速对比两个Excel表格之间的差异的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • excel表格怎么设置密码?excel文件加密的两个方法

    一、加密码的原理 ​ Excel加密码的原理主要基于加密算法和密钥管理。当用户为Excel文件或工作表设置密码时,Excel会采用一种加密算法对文件或工作表进行加密处理。这种加密算法通常是对称加密算法,如AES(高级加密标准)或DES(数据加密标准)。 二,excel加密的必要性 首先,

    2024年04月26日
    浏览(34)
  • 一种使用Java的快速将Web中表格转换成Excel的方法

            随着后疫情时代的到来,在过去的2022年,全国的经济情况,想必是很多学者和研究对象都非常关心的事。而这些数据在国家统计局网站上都有相应的记录。通过分析这些数据,可以从某一个角度来验证和观察当下的经济情况。         全国共计有1279个县级单

    2024年02月06日
    浏览(30)
  • Vscode快速对比两个文件的不同部分

    打开vscode,打开文件或者文件夹 选中需要对比的文件 按住 ctrl 选择要对比的另一个文件,鼠标右键选择将已选项进行比较 结果如下: 打开文件,点击鼠标右键 命令面板 输入 compare 选择要比较的文件 结果如下 点击扩展,查找 file-compare ,并安装插件 打开文件,鼠标右键,

    2024年02月12日
    浏览(36)
  • 在Excel中将数值差距极大的两个序列用对比明显的折线图表示

    在Excel中,如果两个数据序列的数值差距太大,用这样的数据序列生成折线图时,折线图会显得过于平缓,趋势对比不明显。如下图: 这时候只要将趋势图设置成双坐标轴,将其中一条趋势线绘制到次坐标轴上,两条趋势线就会出现明显的起伏对比。具体操作为:通过鼠标左

    2024年02月13日
    浏览(32)
  • Pandas快速合并多张excel表格

    目录 一、Excel表格命名存在规律的情况下 二、Excel表格文件名不规律的情况下 1.首先将所有excel表格放到一个文件夹下面 2.用pandas进行合并 三、身份证号合并乱码解决 最近用Pandas合并表格,发现效率非常高,现总结以下两种方法: 对身份证号码合并的时候,会因为编码方式

    2024年02月08日
    浏览(34)
  • 在Microsoft Excel中如何快速合并表格

    在 Excel 中分析数据时,在一个工作表中收集所有必要信息的频率是多少?几乎从来没有!当不同的数据分散在许多工作表和工作簿中时,这是一种非常常见的情况。幸运的是,有几种不同的方法可以将多个表中的数据组合成一个表,本教程将教你如何快速有效地做到这一点。

    2024年02月15日
    浏览(27)
  • 【办公自动化】使用Python一键提取PDF中的表格到Excel

      🤵‍♂️ 个人主页:@艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞👍🏻 收藏 📂加关注+ 目录 一、Python处理Excel 二、提取PDF表格到excel 三、往期推荐 文末推荐  文末福利   Pyth

    2024年02月13日
    浏览(46)
  • 【Python】使用文件哈希算法快速比较两个文件是否相同(代码实现)

    哈希值(Hash Value),也称为哈希码、散列值或摘要,是一种将任意长度的输入数据转换为固定长度字符串(通常是一串数字和字母)的算法的结果。哈希值通常用于唯一标识数据,以便快速检索或比较数据。哈希值的特点包括: 固定长度:无论输入数据的大小如何,哈希函

    2024年01月21日
    浏览(44)
  • 【Excel】WPS单元格快速转换表格字母大小写

    使用WPS Office打开表格,选择需要处理的单元格或单元格区域。 依次点击「会员专享」选项卡 —「智能工具箱」。 再点击「格式」—「大小写」,选择一种大小写转换方式即可。

    2024年02月08日
    浏览(47)
  • 【办公自动化】使用Python一键提取PDF中的表格到Excel(文末送书5本)

      🤵‍♂️ 个人主页:@艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞👍🏻 收藏 📂加关注+ 目录 一、Python处理Excel 二、提取PDF表格到excel 三、往期推荐 文末推荐  文末福利   Pyth

    2024年02月14日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包