前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何快速比对表格数据

如何快速比对表格数据

作者头像
TTTEED
发布2020-12-16 10:41:46
7030
发布2020-12-16 10:41:46
举报

最近在倒腾一些表格数据,遇到这么个问题:先前下载了一批数据,等再次更新下载时,数目却变少了,我需要快速定位到缺失的条目并探究原因。

如图,左侧 10 条数据是先前下载的,右侧少了 1 条(数据是随便编的):

Python 操作

因为对 Excel 的函数操作不太熟,第一时间我是用 Python 来比对数据的:选取两份表格中的 id 列,分别复制到两份 txt 文档中,转化为 Python 读取 txt 文档数据、列表的相关操作问题。

代码语言:javascript
复制
# 读取两文档中的id数据
with open("001.txt","r") as f:
    data1 = f.readlines()
# data1 为 ['20\n', '12\n', '73\n', '44\n', '5\n', '96\n', '127\n', '28\n', '9\n', '1']

with open("002.txt","r") as f:
    data2 = f.readlines()
# data2 为 ['9\n', '127\n', '73\n', '44\n', '20\n', '96\n', '1\n', '28\n', '12']

# 对读取到的数据做下简单处理,去掉字符串中的换行符   
data1 = [x.strip() for x in data1 ]
data2 = [y.strip() for y in data2 ]

# 选取在 data1 中出现过、但 data2 中却不包含的数据
result = [i for i in data1 if i not in data2 ]
print(result)
# 得到结果 ['5']

根据得到的结果 5 定位到缺失的数据条目。

Excel 操作

拿到结果自然是心满意足继续干活了,闲下来想一般不会编程的文职人员会怎么解决这问题呢?

经过一番搜索,可以直接使用 Excel 的函数。首先随便选定两个表格中的同列数据,放到一个表格中:

选择 C1 处,输入如下公式:

代码语言:javascript
复制
=IF(COUNTIF(B:B,A1)>0,"","少了")

Excel 中 IF 函数:=IF(条件判断, 结果为真返回值, 结果为假返回值)

COUNTIF 函数:=COUNTIF(条件区域,条件),返回满足条件的单元格数目

对 C1 处设置好函数后,鼠标移到右下角,变成十字时点击往下拖覆盖到 C10,便可将该函数自动设置到其它位置,最终得到结果。

“少了”是自定义的提示信息,得到的结果与之前 Python 得出的 "5" 对应的数据是一致的。

问题不大,也挺简单,琢磨琢磨也挺有意思的。

两种解法其实最后的逻辑是相同的,只不过体现在不同的程序和语言上。

解决问题可能几分钟,整理记录却比较耗时,希望能给看到的各位带来点帮助吧~

往期推荐

用Python整理Excel表格

Python读取PDF信息插入Word文档

Python 自动整理 Excel 表格

Python 合并 Excel 表格

Python 如何实时绘制数据

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-12-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 TTTEED 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档