String(文字/字符)
本节目标:不是背属性名词,而是学会用这些属性解决常见的数据问题。
先说“属性”(Attribute)
“属性”就是描述某个对象特征的信息。人有生理属性和社会属性;数据同理,String、Date 都有各自的属性。理解属性的用处,比背定义更重要。
1) 长度 Length
每段字符串都有长度,包含字母、数字、标点和空格。注意“不可见”空格也计入长度。
- 例:
"test "的长度是 7,而不是 4。
能做什么?
- Mapping(编码规则识别)
- 员工号 EmployeeID:8 位=Staff,6 位=Manager,4 位=Senior。用 Length 直接映射级别。
- Data Cleaning(清洗)
- Excel 导入常带 Total/Subtotal 行。可用长度或关键字过滤掉异常行,保持干净的明细表。
- Table Joining(连接排错)
- 用 EmployeeID 作为 Join Key,却发现只匹配到普通员工。排查后发现薪资表里 ID 统一补零到 8 位。通过 Length 对齐或统一格式即可修复。
2) 大小写 Upper/Lower/Title Case
- Upper Case:全部大写
- Lower Case:全部小写
- Title Case:每个单词首字母大写,如
This Is Title Case
在 Tableau 中可用 PROPER() 快速转为 Title Case。常见于姓名规范化、报表标题统一。
3) 可分割性 Split
许多字段由可分段的子串组成,如 Email、地址、域名。
- 以
bitextbook@gmail.com为例:前缀bitextbook,域gmail.com。按@分割即可得到两部分,再继续按.分割域名。
常用操作与场景:
- 定界分割:按特定符号切分,如
@、/、-。 - 定长裁剪:
- 从左保留 N 位或删除 N 位。
- 从右保留 N 位或删除 N 位。
- 查找与替换:将域名中的
gmail替换为自有域。 - 替换为空字符串即“删除”。
- 匹配关系:
A == B是否相等。A CONTAINS B是否包含。A STARTSWITH B是否以 B 开头。A ENDSWITH B是否以 B 结尾。
4) 这些属性如何落到实操
- 统一键值以稳定 Join:先用
TRIM去空格,再统一大小写,再对齐长度或格式。 - 文本标准化以提升可视化质量:姓名、品类、地区名先做
PROPER()和替换表映射。 - 构造特征字段:从 Email 提取域,统计 Gmail 用户占比;从地址提取国家/州;从 SKU 截取品类编码。
- 质检与异常检测:
- 长度超阈值、含非法字符、缺少定界符,均可标记为潜在脏数据。
在 Tableau 里的常见函数提示(按用途归类)
- 清洗与标准化:
TRIM,UPPER,LOWER,PROPER - 分割与截取:
SPLIT(string, delimiter, token),LEFT,RIGHT,MID - 查找与替换:
CONTAINS,FIND,REPLACE - 匹配与判断:
STARTSWITH,ENDSWITH,ISNULL
思路先行:先想清楚“我需要分组还是计算”,再选择合适的字符串操作与函数。
小结
- Length 让你识别编码规则、发现补零与空格问题。
- Case 与 Title Case 保证显示与匹配的一致性。
- Split 让长字符串“模块化”,便于聚合与分析。
- 以上属性在任何工具中都通用,迁移成本低,优先掌握其应用场景与边界。