Python实现删除Excel表格中重复行的实用方法

 更新时间:2026年03月06日 08:29:13   作者:E-iceblue  
在整理客户名单、导入调查数据或合并多个数据源时,Excel 表格中很容易出现重复记录,本文将介绍 4 种删除 Excel 重复行的方法,大家可以根据需要进行选择

在整理客户名单、导入调查数据或合并多个数据源时,Excel 表格中很容易出现重复记录。重复数据不仅会影响统计分析结果,还可能导致文件体积变大、数据管理混乱。因此,在进行数据分析或生成报告之前,清理重复数据通常是必不可少的一步。

本文将介绍 4 种删除 Excel 重复行的方法,从适合人工检查的可视化方式,到自动化的 Python 脚本方案,帮助你根据不同场景快速清理重复数据。无论是日常办公还是数据处理,这些方法都能让你的 Excel 表格更加整洁、准确。

一、查找重复数据并手动删除

在正式删除重复数据之前,有时候我们希望 先查看重复数据是否真的需要删除。例如,一些看似重复的记录可能实际上包含不同的信息。

此时,可以使用 条件格式 来高亮显示重复值,方便进行人工检查和删除。

操作步骤

  • 选择需要检查的列或数据区域。
  • 在 Excel 功能区点击 开始 → 条件格式
  • 选择 突出显示单元格规则 → 重复值

  • 选择一种高亮颜色(例如浅红色填充),点击 确定
  • 高亮显示后,可以使用 按颜色筛选,将重复数据集中显示,然后手动删除不需要的行。

注意:

条件格式识别的是 单元格值是否重复,而不一定是整行数据完全相同。因此,如果想判断整行是否重复,建议对 唯一标识列(例如订单号、用户 ID 等)应用此规则。

二、使用 Excel 内置工具删除重复行

如果已经确认可以直接删除重复数据,那么使用 Excel 自带的 删除重复项 功能是最快捷的方法。这种方式适合用来快速清理数据表中的重复行。

操作步骤

  • 选中数据区域中的任意一个单元格。
  • 打开功能区 数据 选项卡。
  • 在 数据工具 组中点击 删除重复项
  • 在弹出的对话框中勾选 数据包含标题(如果数据包含表头)。

  • 选择需要参与去重判断的列。如果要删除完全相同的重复行,可以保持所有列勾选。
  • 点击 确认,Excel 会提示删除了多少条重复记录。

需要注意的是:Excel 会保留第一次出现的行,并删除后续重复行。

三、使用 UNIQUE 函数提取唯一数据

如果你希望在不修改原始数据的情况下去除重复行,可以使用 Excel 的 UNIQUE 函数。该函数可以根据指定区域生成去重后的数据列表,非常适合在新的区域或新工作表中创建一份干净的数据副本。

使用方法

  • 在空白单元格中点击,作为输出结果的起始位置。
  • 输入公式:=UNIQUE(A1:C50)(需要 Excel 365 或 Excel 2021 及更新版本)
  • 按回车键,Excel 会自动生成去重后的数据列表。

该结果是一个动态数组,Excel 会自动填充唯一值,从而得到一份去重后的数据视图。

如果你使用的是较旧版本的 Excel,可以借助 COUNTIFS 函数 标记重复行,然后通过 筛选 找到这些重复记录并手动删除。

四、使用 Python 自动删除 Excel 重复行

对于开发者或需要处理大量数据的用户来说,手动操作 Excel 显然效率较低。这时可以使用 Python 自动处理 Excel 文件。

借助 Free Spire.XLS for Python 库,可以在不依赖 Microsoft Office 的情况下,直接读取和修改 Excel 文件,实现自动去重。

该库支持自定义逻辑,例如:

  • 处理隐藏空格
  • 判断整行数据是否完全一致
  • 自动删除重复行

从而更加准确地识别和清理重复数据。

安装库

pip install Spire.Xls.Free

Python 示例代码

下面的示例会从表格底部向上遍历数据行,这样在删除行时不会影响行索引。同时,该脚本默认会保留第一行(通常是表头)。

from spire.xls import *
from spire.xls.common import *

# 创建一个 Workbook 对象并加载 Excel 文件
workbook = Workbook()
workbook.LoadFromFile("示例.xlsx")

# 获取第三个工作表
sheet = workbook.Worksheets[2] 

# 获取最后一行和最后一列
lastRow = sheet.LastRow
lastCol = sheet.LastColumn
seen_rows = set()

# 倒序遍历所有行
for row in range(lastRow, 1, -1):
    row_values = []
    for col in range(1, lastCol + 1):
        cell_text = sheet.Range[row, col].Text
        # 去除空格的值
        row_values.append(cell_text.strip() if cell_text else "")

    row_key = "|".join(row_values)

    if row_key in seen_rows:
        # 删除重复行
        sheet.DeleteRow(row)
    else:
        seen_rows.add(row_key)

# 保存文件
workbook.SaveToFile("移除重复行.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

运行该脚本后,Excel 文件中的重复行将被自动删除,并生成新的去重后的文件。下面是新文件预览:

五、方法总结:如何选择合适的去重方式

不同的方法适合不同的使用场景。下面是一个简单的对比表,帮助你快速选择适合自己的方案。

方法适用场景操作方式难度
Remove Duplicates快速删除重复行直接删除原数据简单
条件格式人工检查重复数据高亮显示后手动删除简单
UNIQUE 函数保留原始数据生成去重后的新列表中等
Python 脚本自动化处理大量数据自动删除重复行较高

结语

掌握以上几种方法,可以帮助你在不同场景下高效清理 Excel 数据。对于日常办公来说,Excel 自带的删除重复项工具已经足够使用;而在处理大规模数据或自动化流程时,使用 Python 脚本会更加高效。无论采用哪种方法,在批量删除数据之前,都建议先备份原始文件,以防误删重要信息。

现在就检查一下你的 Excel 表格,清除掉那些不必要的重复数据,让数据管理变得更加高效吧。

到此这篇关于Python实现删除Excel表格中重复行的实用方法的文章就介绍到这了,更多相关Python删除Excel重复行内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 在Django的View中使用asyncio的方法

    在Django的View中使用asyncio的方法

    这篇文章主要介绍了在Django的View中使用asyncio的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • Django 实现jwt认证的示例

    Django 实现jwt认证的示例

    这篇文章主要介绍了Django 实现jwt 认证的示例,帮助大家更好的理解和学习使用django,感兴趣的朋友可以了解下
    2021-04-04
  • 使用Python实现嵌套绘图并为条形图添加自定义标注

    使用Python实现嵌套绘图并为条形图添加自定义标注

    论文绘图时经常需要多图嵌套,正好最近绘图用到了,所以这篇文章主要为大家详细介绍了如何使用Python实现嵌套绘图并为条形图添加自定义标注,感兴趣的可以了解下
    2024-02-02
  • python GUI库图形界面开发之PyQt5窗口背景与不规则窗口实例

    python GUI库图形界面开发之PyQt5窗口背景与不规则窗口实例

    这篇文章主要介绍了python GUI库图形界面开发之PyQt5窗口背景与不规则窗口实例,需要的朋友可以参考下
    2020-02-02
  • Python+OpenCV采集本地摄像头的视频

    Python+OpenCV采集本地摄像头的视频

    这篇文章主要为大家详细介绍了Python+OpenCV采集本地摄像头的视频,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-04-04
  • 在macOS上搭建python环境的实现方法

    在macOS上搭建python环境的实现方法

    今天小编就为大家分享一篇在macOS上搭建python环境的实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • Python 字典中键映射多个值的问题解决

    Python 字典中键映射多个值的问题解决

    本文主要介绍了在Python中实现一个字典multidict中键可以对应多个值,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-01-01
  • python获取全国城市pm2.5、臭氧等空气质量过程解析

    python获取全国城市pm2.5、臭氧等空气质量过程解析

    这篇文章主要介绍了python获取全国城市pm2.5、臭氧等空气质量过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • Python内建数据结构详解

    Python内建数据结构详解

    本文给大家汇总介绍了Python中的5种内建数据结构以及操作示例,非常的详细,有需要的小伙伴可以参考下。
    2016-02-02
  • 详解Python中键盘鼠标的相关操作

    详解Python中键盘鼠标的相关操作

    pyautogui模块,规范一点大写就是PyAutoGUI模块,是用来实现自动化脚本的一个十分得力的小助手。他可以操控键盘和鼠标,可以写许多工具。本文就来讲讲如何利用这个模块实现键盘鼠标的相关操作,需要的可以参考一下
    2023-01-01

最新评论