美文网首页office
【OFFICE 365】多字段排序和重复值删除

【OFFICE 365】多字段排序和重复值删除

作者: 山药鱼儿 | 来源:发表于2022-06-10 14:40 被阅读0次

去重是数据处理中常用的操作,在 Excel 中使用【多字段排序 + 删除重复值】是一个不错的去重办法。在此之前,我们通常会构建一个辅助列,使用 COUNTIF 函数统计重复次数,作为验证的依据。

温馨提示!数据统计过程中,我们通常会一边统计一边验证,以确保每个步骤的结果都是正确的。

话不多说,我们来开始今天的学习吧~

一. 准备工作:统计重复数据

如下的 Excel 文件中,存在很多会员更换手机号码进行重复注册的问题。我们需要对重复注册的会员,进行去重,仅保留其最新的注册信息。

首先,我们来了解一下重复值情况。在 E2 单元格录入公式 =COUNTIF(D:D,D2) ,其中第一个参数为计数区域 D 列,第二个参数为计数的条件,对符合条件的进行计数。

简单来说,就是对 D 列中的身份证信息进行分组计数。

点击 E2 单元格右下角进行自动填充:

点击【数据】菜单栏下的【排序】功能,弹出排序对话框。在排序的【主要关键字】中勾选辅助列,排序方式为【降序】,点击确定。

这样 Excel 中的数据就会按照身份证重复次数进行降序排列,我们发现最多的会员一个人重复注册了 3 次。

上述的结果还不够清晰,我们需要继续将身份证相同的放在一起。也就是首先依据身份证重复次数进行排序,重复次数相同时,按照身份证号码进行排序。

继续调出【数据】下的【排序】对话框,点击【添加条件】,在新增的【次要关键字】中勾选身份证字段,点击确定。

此时 Excel 会弹出【排序提醒】框,这是因为身份证是文本类型,Excel 以对话框地形式询问我们按照数字排序,还是按照文本排序?

其中【将任何类似数字的内容排序】其实就是按数字规则排序;【分别将数字和以文本形式存储的数字排序】是按照文本规则排序。

提示: Excel 最多只能存储 15 位的数字,超过长度就会发生溢出。因此,对于超过 15 位的数字字段必须设置为文本格式,才可以正常显示。

这里,我们选择第二个选项,点击确定之后重复次数相同时,身份证号码一致的记录就被放在了一起。

不过【眼尖】的小伙伴已经发现,怎么身份证号码不一样的也被错误地判断成了一致的呢?“猎网” 用户的身份证号码和 “刘仁邦” 用户的身份证号码倒数第二位是不同的。

正如我们提到的 Excel 最多只能存储 15 位有效数字,超过 15 位全部都会变成 0 。所以银行卡、身份证等编号必须存储为文本格式。但使用 COUNTIF 函数计数时,还是会把文本格式的身份证号当做数字进行统计。

COUNTIF 函数看来,只要前 15 位数字相同,就是重复值。

因此,我们需要在 COUNTIF 函数的计数条件明确指定为文本。这里有个技巧,使用 D2&"*" 替换原来的 D2 实参即可。其中 & 为文本连接字符,* 为通配符,表示一个或多个任意字符。

因为 & 为文本连接符,所以 E2&"*" 的最终结果就是文本。将 E2 单元格的公式修改为 =COUNTIF(D:D,D2&"*") 即可。

修改之后,分组计数就恢复正常了!

接下来,由于对于重复数据,我们希望保留用户最新注册的信息,因此还需要添加一个排序条件。在重复次数相同,身份证号码一致时,按【加入会员日期】降序排列。

二. 删除重复数据

现在,准备工作结束,我们可以开始删除数据啦~如图,对于前三条重复的数据,我们需要保留第一条最新的数据,并以此类推,每组数据均保留第一条数据。

幸运的是,我们并不需要手动完成上述操作。Excel 为我们提供了【删除重复值】的功能,默认便是将相同内容的第一条记录保留,其他记录删除。

所以,我们前面将每组重复数据中日期最新的记录放在第一条,现在就可以一键删除了。点击【数据】选项卡中的【删除重复值】,弹出【删除重复值】对话框,点击【取消全选】,并勾选身份证字段。

点击确定之后,即可完成重复值删除。

辅助列中的重复次数都变成了 1 ,现在可以删除辅助列了。

以上就是今天的全部内容啦!

总结

在删除重复数据时,我们通常使用【COUNTIF】条件计数函数来验证操作过程,再由【多字段排序 + 删除重复值】来将重复的记录删除。

值得一提的是,使用 COUNTIF 函数统计身份证、银行卡等超过 15 为数字的内容时,需要在条件上添加 &"*" ,将条件指定为文本格式。此外,【删除重复值】默认保留每组的第一条记录。

相关文章

  • 【OFFICE 365】多字段排序和重复值删除

    去重是数据处理中常用的操作,在 Excel 中使用【多字段排序 + 删除重复值】是一个不错的去重办法。在此之前,我...

  • 32.删除链表中重复的节点

    题目:链表是排序的,删除链表中值相同的所有节点,且不保留重复值的节点 思路:因为链表是排序的,重复值的节点肯定是相...

  • TreeSet 使用技巧

    一、 TreeSet 可以排序不重复的元素(把重复元素删除了,再排序) 二、TreeSet 不删除重复元素排序 (...

  • 删除链表中的重复节点

    题目:在一个排序的链表中,如何删除重复的节点? 思路:删除重复节点同样要考虑边界值的问题,头节点为重复,尾节点为重...

  • 【后台】列表需求说明模版

    一、列表排序 ~按两个字段有无值排序 列表默认按照【提醒时间】—【创建时间】字段排序。提醒时间字段有值,按照提示时...

  • elasticsearch 排序

    1、字段值排序:按照时间排序: 2、字段参数排序:GET /_search?sort=date:desc&sort...

  • mySQL数据库操作

    增加: INSERT INTO 表名(字段一,字段二,字段三)VALUE (’值一‘,"值二","值三"); 删除...

  • letcode[027] 移除元素

    题目地址:移除元素 思路1:自拟思路——如果值和目标值相等,则使用del删除 和026删除排序数组中的重复项的思路...

  • Office 365 和 Office 2019 一样么?

    Office 365 和 Office 2019 一样么?可能很多网友都觉得Office 365 和 Office...

  • leecode刷题(1)-- 删除排序数组中的重复项

    leecode刷题(1)-- 删除排序数组中的重复项 删除排序数组中的重复项 给定一个排序数组,你需要在原地删除重...

网友评论

    本文标题:【OFFICE 365】多字段排序和重复值删除

    本文链接:https://www.haomeiwen.com/subject/zeovmrtx.html