在客户对账、地区汇总与品类分组链路中,同一列里经常同时出现空格、错字和近似写法,例如「华为」「华为 」「華为」。写法不收拢,精确对账和分组就会把同一主体拆成多条。
如果采用传统手工方式,不仅要靠筛选逐条改、靠对照表逐条替换,而且无法判断哪一种写法才是出现最多的原文,也无法形成可回溯、可自动复跑的工作流。
DT-Bot 的 「相似值归并」 算子专为解决此类一列相近写法收成标准名而设计。它把同一列里空格、错字、近似写法自动收成出现最多的原文,行数不变,一次只归并一列。默认就地改源表;也可加一列保存归并结果,或写出新表。若工作空间里有只读标准名表,也可把本列别称对照成该表的权威名称,不从该表补列。
一、 核心能力与适用场景
「相似值归并」算子聚焦于单列相近写法自动收拢,也可选用只读标准名表作权威名称,覆盖以下核心能力:
| 核心能力 | 解决什么业务问题 | 典型业务场景 |
|---|---|---|
| 就地归并一列 | 把一列里相近写法收成出现最多的原文,行数不变。 | 客户名称有「华为」「华为 」「華为」等相近写法,要收成一种再对账。 |
| 加列保存结果 | 归并结果写入新列,原列先留着核对。 | 地区、品类标签写法不统一,先加一列「地区_归并」,原列不动。 |
| 宽松 / 严格 | 控制归并尺度:宽松一点多并;严格则不要把不像的并到一起。 | 客户名既有空格变体,也有主体不同的公司名,需要收紧或放宽。 |
| 对照标准名表 | 把本列别称改成只读标准名表里的权威名称,不补列。 | 就诊科室有「心内科」「脑内科」等别称,对照标准科室字典表收到正式名。 |
| 写出新表 | 写了结果名则源表原文保留,归并结果落在新表。 | 输出「客户归并」,源客户表继续用于对照。 |
二、 边界指南:它与相近算子有何区别?
在构建数据工作流时,理解算子之间的职责边界至关重要:
| 比较维度 | 「相似值归并」算子 | 「行操作」算子 | 「匹配填充」算子 | 「聚合计算」算子 |
|---|---|---|---|---|
| 主要定位 | 一列相近写法收成标准名;可对照只读标准名表 | 已给出「A 改成 B」的固定映射 | 按键从另一张表补列 | 差不多并组后再求和 / 计数 |
| 输出机制 | 默认就地改指定列,行数不变;可加列或另存新表;标准名表只读 | 就地更新原表(单元格级修改) | 目标表行数不变,从他表补列 | 源表只读,写出压行后的短表 |
| 典型动作 | 按相似自动归并一列;或把别称改成标准名表里的权威名称 | 指定词替换、去空格 | 精确 / 区间 / 名称近似跨表补列 | 按字段分组后合计 |
| 如何选择 | “把客户名称里相近的写法自动收成一种”;“对照标准科室字典表把异名科室收到正式名” | “已经确定把「华为 」改成「华为」” | “按客户名称到主数据表补客户编码” | “先归并再按标准名求和,求和用聚合计算” |
一次只归并一列。必须点名列。无标准名表时说明按相似、近似或写法接近自动归并;对照标准名表时点名该表或确保文件池能唯一确定。
三、 提示词编写规范与公式
「相似值归并」算子支持自然语言直接表达,建议遵循以下标准的编写公式:
【目标表范围】 + 【点名归并列】 + 【相似归并或对照标准名表】 + 【输出】
1. 目标表范围表达
- 单表精准点名:明确指定单张表名称,例如
“客户表” :把 “客户名称” 里相近的写法归并; - 默认当前流转表:若提示词中未显式提及表名,算子将默认继承上一节点连线流入的数据表。
2. 列与归并动作表达
- 必须点名列:写清归并哪一列;无标准名表时说明按相似、近似或写法接近自动归并;
- 就地改原列:
把 “客户名称” 里相近的写法归并; - 加列保存:
结果加一列 “地区_归并”,原列不动; - 尺度:
宽松一点归并、严格归并,不要把不像的并到一起。
3. 对照标准名表(可选)
- 用户点名:
对照 “标准科室字典表” 把 “挂号就诊科室” 收到标准名称; - 由算子选定:用户要求收到权威标准名、且文件池里能唯一确定一张标准名表时,可不点名该表;
- 标准名表只读,不会被写入,也不会从该表补列。已经在提示词里逐条写死「A 改成 B」请用「行操作」。
4. 输出(可选)
- 不写则改原列;
- 要求加一列则原列不动,结果写入指定列名或「原列名_归并」;
- 写了结果名则写新表,例如
输出 “客户归并”。
四、 核心功能与图解实战
以下结合真实企业数据场景,展示「相似值归并」在不同需求下的处理效果:
场景 1:就地归并一列(收成出现最多的原文)
业务背景:客户表同一主体出现「华为」「华为 」「華为」三种写法,对账前需要收成一种。标准名取该簇里出现最多的原文;金额列与行数必须保持不变。
【处理前:客户表】
| 订单号 | 客户名称 | 金额 |
|---|---|---|
| D01 | 华为 | 100 |
| D02 | 华为 | 80 |
| D03 | 华为 | 60 |
| D04 | 華为 | 50 |
| D05 | 腾讯 | 40 |
【执行提示词】
“客户表” :把 “客户名称” 里相近的写法归并。
【处理后:客户表(就地更新)】
| 订单号 | 客户名称 | 金额 | 变更说明 |
|---|---|---|---|
| D01 | 华为 | 100 | 簇内出现最多的原文,作为标准名 |
| D02 | 华为 | 80 | 已是标准名 |
| D03 | 华为 | 60 | 「华为 」收成出现最多的「华为」 |
| D04 | 华为 | 50 | 「華为」收成出现最多的「华为」 |
| D05 | 腾讯 | 40 | 与华为簇不像,保持原文 |
逻辑详解:一次只归并「客户名称」一列。行数仍为 5,金额列 100/80/60/50/40 不动。空格、错字、近似写法自动收成出现最多的原文;主体不同的「腾讯」不会并进「华为」。
场景 2:加一列保存归并结果(原列不动)
业务背景:地区标签存在「华东」「华 东」等写法,分析师需要先核对归并是否合理,因此结果加一列「地区_归并」,原地区列先留着。
【处理前:客户表】
| 门店 | 地区 | 金额 |
|---|---|---|
| S01 | 华东 | 100 |
| S02 | 华 东 | 80 |
| S03 | 华北 | 60 |
| S04 | 华南 | 40 |
【执行提示词】
“客户表” :把 “地区” 列相近写法归并,结果加一列 “地区_归并”,原列不动。
【处理后:客户表(就地加列)】
| 门店 | 地区 | 金额 | 地区_归并 | 变更说明 |
|---|---|---|---|---|
| S01 | 华东 | 100 | 华东 | 原列不动;新列写入标准名 |
| S02 | 华 东 | 80 | 华东 | 原列仍是「华 东」;新列已归并 |
| S03 | 华北 | 60 | 华北 | 与华东不像,两列均为华北 |
| S04 | 华南 | 40 | 华南 | 与华东不像,两列均为华南 |
逻辑详解:行数不变。原「地区」列一字不改,归并结果只写在「地区_归并」。不同地区保持分开,不会把华北、华南并进华东。
场景 3:宽松一点 / 严格归并
案例 A:宽松一点
业务背景:客户名称变体较多,分析师希望多收拢一些相近写法,但仍不要把主体不同的名称并到一起。
【处理前:客户表】
| 订单号 | 客户名称 | 金额 |
|---|---|---|
| D01 | 华为 | 100 |
| D02 | 华为 | 80 |
| D03 | 華为 | 60 |
| D04 | 腾讯 | 40 |
【执行提示词】
“客户表” :把 “客户名称” 宽松一点归并。
【处理后:客户表(就地更新)】
| 订单号 | 客户名称 | 金额 | 变更说明 |
|---|---|---|---|
| D01 | 华为 | 100 | 标准名 |
| D02 | 华为 | 80 | 空格变体被收拢 |
| D03 | 华为 | 60 | 近似写法被收拢 |
| D04 | 腾讯 | 40 | 主体不同,即使宽松也不并进华为 |
案例 B:严格归并
业务背景:同一张客户表里既有空格变体,也有只是略像、业务上必须分开的名称。分析师要求严格归并,不要把不像的并到一起。
【执行提示词】
“客户表” :把 “客户名称” 严格归并,不要把不像的并到一起。
【处理后:客户表(就地更新,示意)】
| 订单号 | 客户名称 | 金额 | 变更说明 |
|---|---|---|---|
| D01 | 华为 | 100 | 规范化后相同或足够接近的写法仍可归并 |
| D02 | 华为 | 80 | 「华为 」与「华为」通常仍收成一种 |
| D03 | 華为 | 60 | 严格尺度下,不够像的写法保持原文 |
| D04 | 腾讯 | 40 | 主体不同,保持分开 |
逻辑详解:宽松与严格只改变「像不像」的尺度,不改变「一次只归并一列、行数不变、标准名取出现最多的原文」这些机制。不要把不像的并到一起,是严格模式的明确约束。
场景 4:写出新表(源表原文保留)
业务背景:归并结果要交给下游对账,源客户表仍要保留导入时的各种写法,供抽查。
【处理前:客户表】
| 订单号 | 客户名称 | 金额 |
|---|---|---|
| D01 | 华为 | 100 |
| D02 | 华为 | 80 |
| D03 | 華为 | 60 |
| D04 | 腾讯 | 40 |
【执行提示词】
“客户表” :把 “客户名称” 相近写法归并,输出 “客户归并”。
【处理后:客户表(源表不改)】
| 订单号 | 客户名称 | 金额 | 变更说明 |
|---|---|---|---|
| D01 | 华为 | 100 | 写了结果名,源表保持导入原样 |
| D02 | 华为 | 80 | 源表空格变体仍在 |
| D03 | 華为 | 60 | 源表近似写法仍在 |
| D04 | 腾讯 | 40 | 源表保持导入原样 |
【处理后:客户归并(新表)】
| 订单号 | 客户名称 | 金额 | 变更说明 |
|---|---|---|---|
| D01 | 华为 | 100 | 新表已归并 |
| D02 | 华为 | 80 | 「华为 」收成「华为」 |
| D03 | 华为 | 60 | 「華为」收成「华为」 |
| D04 | 腾讯 | 40 | 主体不同,保持原文 |
逻辑详解:输出新表后,源表行数与客户名称原文均保持导入原样。新表行数与源表相同,只是指定列已按相近写法收成标准名。
五、 常见问题与操作贴士(FAQ)
Q1:为什么执行「相似值归并」后,左侧工作空间没有生成新表?
答:未要求输出新表、也未要求加列时,算子默认就地改指定列,不会新增表名。
若需要保留原列,请写明加一列保存归并结果;若需要保留整张源表,请写出结果名,例如输出 “客户归并”。
Q2:归并后行数会不会变少?一次能归并几列?
答:行数不变。相近写法是把单元格收成标准名,不是按标准名去重删行。一次只归并一列,必须点名列,并说明按相似、近似或写法接近自动归并。未点名列时不能做。
Q3:标准名是怎么定的?已经写死「A 改成 B」该用哪个算子?
答:无标准名表时,标准名取该相近写法簇里出现最多的原文。对照标准名表时,标准名取该表权威列里的原文,本列别称按对应关系改写,不从该表补列。
已经给出「A 改成 B」的固定映射,请用 「行操作」。按键从另一张表补编码或补列,请用 「匹配填充」。差不多并组后再求和,请用 「聚合计算」。
Q4:宽松和严格会不会把不同主体并到一起?
答:宽松会让更多相近写法进入同一簇,严格则更不容易把不像的并到一起。无论哪种尺度,主体明显不同的名称都应保持分开。若结果仍过宽或过严,应改提示词中的宽松 / 严格表述后重新执行,而不是手工改个别格子。
六、 关联算子导航
- 若已给出「A 改成 B」的固定映射:请参考 数据处理 · 行操作
- 若需按名称从另一张表补编码:请参考 数据处理 · 匹配填充
- 若需在归并之后按标准名求和或计数:请参考 数据统计 · 聚合计算
- 欲下载真实数据表格亲自动手实测:请查阅 数据案例 · 相似值归并案例