如何在Tableau中关联字段取值或名称不同的两张表
Tableau异值字段关联实现方法
你遇到的是关联字段存在非标准格式差异的场景,可通过以下两种方案实现关联:
方案1:计算字段标准化后模糊关联
适用于字段差异为拼写误差、冗余冠词/缩写的轻量场景:
- 如果你使用的是Tableau 2020.2及以上版本,可直接使用内置模糊匹配函数创建关联条件:
新建关联规则时直接输入公式:FUZZYMATCH([表1的关联字段], [表2的关联字段]) >= 0.8
公式中的0.8为相似度阈值(取值范围0-1,数值越高匹配越严格),你提到的Mickey M Mouse和Mickey the Mouse相似度可达0.9以上,可正常匹配。 - 低版本Tableau可先对两个关联字段做标准化处理,再用标准化字段直接关联:
分别给两张表新建计算字段(命名为标准化关联字段),公式为:LOWER(REGEXP_REPLACE([原关联字段], '\s[A-Za-z]{1}\s|\sthe\s', ' '))
该公式会统一把字段值转小写,同时删除中间单字母缩写、the这类冗余冠词,你举的两个示例值处理后都会变成mickey mouse,可直接等值关联。
方案2:映射表硬匹配
适用于字段差异大、模糊匹配容易出错的场景,准确率100%:
- 先导出两张表关联字段的所有唯一值,手动整理为映射对照表,表结构为三列:表1原字段值、统一标准值、表2原字段值
- 将映射表导入Tableau数据源,分别建立关联:表1原关联字段关联映射表的表1原字段值列,表2原关联字段关联映射表的表2原字段值列,两张原表即可通过统一标准值实现关联。
建议关联完成后先拉取交叉表校验匹配结果,再根据实际误差调整相似度阈值或字符串替换规则。

内容的提问来源于stack exchange,提问作者SnowboardBruin
相关产品推荐
相关产品推荐

