3 步 · 3 段可复制提示词 · 约 9 分钟读完
站内精选

一份 300 行的客户名单要拿去发通知,里面混着完全重复、同号不同写法、同名不同人三种情况。手工删了两遍仍然漏,还误删了两条真客户。这次按 3 条规则先分组再确认:300 行删掉 52 行(完全重复 38、同号异写 14),保留 248 行,同名不同号的 7 组全部保留。

一句话结论

合并名单的难点不是「找重复」,是「判哪条该留、哪条不算重复」。300 行里真正该删的只有 52 行,而「同名不同号」的 7 组看起来像重复,实际是两个不同的人——这类一旦合并就永久丢了一条记录。所以流程必须是先分组标记、人工确认、再删除,而不是让模型直接去重。

这篇解决什么问题

三种情况让合并反复出错。一是直接去重:把表格丢给工具一键去重,同名不同号的记录被并成一条,事后没人知道少的是谁。二是靠眼睛扫:300 行人工比对,前 100 行还认真,后面就开始跳着看,这次手工删两遍仍漏了 9 条。三是删了不留痕:删完不知道哪些被合并、哪一行吸收了哪一行,客户反馈「没收到通知」时查不出来。

根子是把合并当成一次删除动作,它其实是一组判定加一份日志。判定要写清规则,日志要记清去向,这样删错了还能回退。

开始前要准备什么

  • 原始表格,保留完整字段,不要先手工清洗。这次 300 行,字段是姓名、手机号、来源、最近联系日期。
  • 3 条判定规则,事先写死。这次是:同姓名加同手机号算重复;同手机号不同姓名写法算重复;同姓名不同手机号不合并。
  • 一个「最近联系日期」字段,用来决定保留哪一行。没有这个字段就只能随机留一条,容易留下旧信息。
  • 一条纪律:先分组不删除。分组结果可以反复看,删除是不可逆的。

具体怎么做

第一步:只做疑似重复分组,一个都不删

让模型按姓名和手机号做两轮分组,输出「疑似重复组」,每组列出所有行号和关键字段,并说明按哪条规则判的。300 行跑出 59 组可疑:完全重复 38 组(每组 2 行)、同号异写 14 组、同名不同号 7 组。20 分钟。

这一步的关键是不让它做最终判断。如果提示词里出现「请去重」,模型会直接把 7 组同名不同号也并掉。只要求「分组并标注依据」,人还能逐组核对;一旦让它删,错的那部分就被藏起来了。

这是我的客户名单(300 行,字段:姓名、手机号、来源、最近联系日期)。

请只做疑似重复分组,不要删除任何一行:
1. 按「姓名相同 + 手机号相同」分组,标为 A 类;
2. 按「手机号相同 + 姓名写法不同」分组,标为 B 类(例如同号对应「张三」与「张先生」);
3. 按「姓名相同 + 手机号不同」分组,标为 C 类;
4. 每类给出组数、总行数、涉及的行号,并对每组说明判定依据。

要求:三类的区别要写清楚,尤其是 C 类为什么不能直接合并;不许输出「已去重」的结果,只输出分组清单;分组后保留原始行号,方便我回查。

第二步:按规则逐组确认,C 类一律保留

分完组才是判断:A、B 两类各保留一行,C 类全部保留。这次 A 类 38 组、B 类 14 组,共删 52 行;C 类 7 组 14 行一条没动。35 分钟,其中大半时间花在 B 类的姓名对应上——「张先生」和「张三」是不是同一人,得看来源字段和联系记录才能定。

保留哪一行有明确规则:保留「最近联系日期」更新的那一行,且合并时把另一行的非空字段补过来。这次有 11 组出现「一行有来源、一行有日期」的情况,直接删其中一行会丢信息。补字段后再删,才是无损合并。

这是我的疑似重复分组清单(A 类 38 组、B 类 14 组、C 类 7 组),以及 3 条判定规则。

请按规则给出保留建议:
1. A 类每组建议保留哪一行,依据「最近联系日期更新」这一条;
2. B 类每组先判断是否同一人,说明依据(来源、日期、其他字段是否吻合),不同一人的请标为保留;
3. C 类一律保留,不需要给建议,只需确认没有行号重复;
4. 对每组指出:删除的那一行有哪些非空字段是另一行没有的,需要先补过来。

要求:不许直接说「删除」,要说明「保留行 X、吸收行 Y 的哪些字段」;判断同一人拿不准的标「待人工确认」,不要猜。

第三步:生成去重表加变更日志,删错了能找回

最后输出两张表:一张是 248 行的干净名单,一张是变更日志——每一行被删的记录都写明「被哪一行吸收、因为哪条规则、补了哪些字段」。15 分钟。日志看起来多余,但客户反馈「没收到通知」时,查一眼日志就知道这条记录合并到了谁身上。

顺带把 59 组的处理结果做成统计:A 类 38 组合并 38 行、B 类 14 组合并 14 行、C 类 7 组共 14 行全部保留。所以 248 = 300 − 52,删除的 52 行全部来自 A、B 两类,C 类零删除。

这是我的去重结果(248 行)与待生成的变更日志字段。

请生成变更日志并做一致性校验:
1. 每条被删记录一行,字段为:原行号、姓名、手机号、被哪一行吸收、适用规则、补入的非空字段;
2. 校验:删除行数 + 保留行数是否等于原始 300 行,把算式写出来;
3. 校验:有没有一行被两个组同时吸收(重复吸收),有的话列出来;
4. 指出日志里哪几条如果被回退,会影响已经发出的通知,请标出来。

要求:数字必须对得上,对不上就指出差多少;不要省略任何被删行,即使它看起来完全重复。

实测记录

素材是一份 300 行的客户名单,4 个字段。分组 20 分钟、逐组确认 35 分钟、生成去重表与变更日志 15 分钟,合计 70 分钟。

结果:300 行删掉 52 行——A 类完全重复 38 组删 38 行、B 类同号异写 14 组删 14 行,剩余 248 行。C 类同名不同号 7 组共 14 行一条没删。有 11 组出现了「一行有来源、一行有日期」的情况,补字段后再删,没有丢信息。

对比之前的手工处理:手工删了两遍,仍然漏了 9 条重复,同时误删了 2 条真客户——误删的正是同名不同号那类。这就是为什么必须先把 C 类单独拎出来、并且规定「一律保留」:这类记录在算法眼里相似度很高,在人眼里也是,但它恰恰是最不该合并的一种。

最容易错的 3 个地方

第一,让模型直接去重。提示词里只要出现「去重」,同名不同号的记录就会被并掉,而且它不会告诉你并了哪些。这次改成「只分组、不删除」,59 组全摆出来人工确认,才把 C 类那 14 行保住。

第二,不补字段就删。这次 11 组是「一行有来源、一行有日期」,直接删一行就永久丢掉一个字段。正确做法是先合并非空字段再删,去重后每条记录的完整度应该比去重前更高,而不是更低。

第三,不留变更日志。删完只剩 248 行,客户说没收到通知就无从查起。有了「被哪一行吸收、适用哪条规则」的日志,查一次 30 秒,还能判断影响面。日志的成本是一张表,收益是删错了能回退。

可复用的东西

三类分组法:A 同名同号、B 同号异写、C 同名异号,A、B 可合并,C 一律保留,这个划分比「重复 / 不重复」两分法安全得多。

先分组后删除:提示词里明写「不要删除」,只输出分组清单,把决定权留给人。

保留规则:保留最近联系日期更新的那一行,先补非空字段再删,去重后信息只会更全。

变更日志四要素:原行号、被谁吸收、适用规则、补了哪些字段,删错了能一条条回退。

行数校验:删除行数加保留行数必须等于原始行数,这次 52 + 248 = 300,对不上就说明有重复吸收。

常见问题解答

为什么不能让工具直接一键去重

因为工具分不清「同名不同号」和「真正的重复」。这次 300 行里有 7 组同名不同号共 14 行,看起来像重复,实际是两个不同的人。一键去重会把它们并掉,而且不会告诉你并了哪些。手工删两遍时误删的 2 条真客户,正是这一类。

三类怎么划分

A 类是姓名和手机号都相同,B 类是手机号相同但姓名写法不同(张三与张先生),C 类是姓名相同但手机号不同。A、B 两类可以合并,C 类一律保留。这个三分法比「重复 / 不重复」两分法安全,因为它把「看起来像重复但可能不是」单独拎出来处理。

删除时会丢信息吗

会有这个风险,而且这次确实出现了 11 组。那 11 组的情况是「一行有来源、一行有最近联系日期」,直接删其中一行就永久丢掉一个字段。做法是先合并非空字段再删,这样去重后每条记录的完整度比去重前更高,而不是更低。

变更日志有必要保留吗

有。删完只剩 248 行,客户反馈没收到通知时无从查起。日志记四样:原行号、被哪一行吸收、适用哪条规则、补了哪些字段。这次查一条记录的去向只要 30 秒,还能看出会影响哪些已经发出的通知。日志成本是一张表,收益是删错了能回退。

小程序阅读免费
微信扫码进入小程序,按岗位找 AI 实操步骤
微信扫码进小程序
按岗位找 AI 实操步骤 · 提示词可收藏

发表回复

后才能评论