怎样保留原版删除重复项

联启 电脑工具 2

本文目录导读:

怎样保留原版删除重复项-第1张图片-电脑手机工具软件下载 - 免费实用工具合集 | 联启科技

  1. 在 Excel 或 WPS 表格中(最常用)
  2. 使用 Python(pandas 库,非常灵活)
  3. 在 SQL 数据库中
  4. 如果只是“标记”重复而不删除(用于检查)
  5. 关键提醒

保留原版(即保留第一次出现的数据)并删除重复项,不同的工具(Excel、WPS、Python、SQL)操作方式不同,以下是几种常见场景的详细步骤:

在 Excel 或 WPS 表格中(最常用)

Excel 的“删除重复值”功能默认就是保留第一个出现的记录,删除后续重复项。

操作步骤:

  1. 选中数据区域(A1:C100,确保包含表头)。
  2. 点击工具栏:数据 -> 删除重复值
  3. 在弹出的对话框中:
    • 勾选你想要根据哪几列来判断重复(如果根据“姓名”去重,就只勾选姓名列)。
    • 勾选 “数据包含标题”(如果你的第一行是表头)。
  4. 点击 确定
    • 结果:Excel 会删除除第一次出现之外的所有重复行,保留原顺序和原版数据

注意:如果数据量很大,建议先备份一份原表。

使用 Python(pandas 库,非常灵活)

如果你需要编程处理,pandasdrop_duplicates 方法默认保留第一个

import pandas as pd
# 读取数据(假设是 CSV 文件)
df = pd.read_csv('your_file.csv')
# 删除基于 '姓名' 列的重复项,保留第一个出现的
df_cleaned = df.drop_duplicates(subset=['姓名'], keep='first')
# 或者按所有列去重
# df_cleaned = df.drop_duplicates(keep='first')
# 保存结果
df_cleaned.to_csv('cleaned_file.csv', index=False)
  • keep='first':保留第一个出现(默认,可以不写)。
  • keep='last':保留最后一个。
  • keep=False:删除所有重复项。

在 SQL 数据库中

使用 ROW_NUMBER() 配合 PARTITION BY 可以精确控制保留哪一条。

WITH CTE AS (
    SELECT *,
           ROW_NUMBER() OVER (PARTITION BY 姓名 ORDER BY id) AS rn
    FROM your_table
)
DELETE FROM CTE WHERE rn > 1;
  • PARTITION BY 姓名:按姓名分组,每组内的重复只保留一条。
  • ORDER BY id:这里的 id 通常用主键或时间戳,可以控制保留哪一个(ORDER BY id ASC 保留最早的一条)。
  • 如果不指定 PARTITION BY,则全表去重。

如果只是“标记”重复而不删除(用于检查)

如果你不想删除,只想看看哪些是重复项(以便手动处理),可以使用:

  • Excel:条件格式 -> 突出显示单元格规则 -> 重复值。
  • Pythondf.duplicated(subset=['姓名'], keep='first') 会返回一个布尔序列,第一次出现为 False,后续为 True。

关键提醒

  • “保留原版” 的关键在于 “保留第一次出现的记录”,绝大多数去重工具默认都是这个逻辑。
  • 如果需要保留最后一次出现的(例如日志表),需要明确指定 keep='last'

如果你能告诉我你具体使用什么工具(Excel/WPS/Python/SQL 等),我可以给出更精确的代码或操作截图级指导。

标签: 删除重复项

抱歉,评论功能暂时关闭!