Power BI中如何标准化县名格式?多场景需求咨询
Power BI 实现「Address 1: County」列的目标格式转换
这里提供两种高效的解决方法,均在Power Query编辑器中操作:
方法一:自定义条件列(适合固定规则场景)
- 进入Power Query编辑器,选中需要处理的表格
- 点击「添加列」选项卡,选择「自定义列」
- 在弹出的公式编辑器中输入以下M代码:
= if Text.Contains([Address 1: County], "Dublin") then "Dublin" else if Text.StartsWith([Address 1: County], "Co. ") then Text.Range([Address 1: County], 4) else [Address 1: County]
- 点击确定后,重命名新列为「County」即可
逻辑说明:
- 只要原列内容包含"Dublin",直接返回统一的「Dublin」
- 对于以「Co. 」开头的内容,截取从第5个字符开始的部分(去掉前缀「Co. 」)
- 其他未匹配的内容保持原值
方法二:映射表合并(适合需频繁更新映射规则的场景)
- 在Power BI中新建一张映射表,手动输入给定的对应关系:
| Address 1: County | County |
|---|---|
| Dublin | Dublin |
| Co. Westmeath | Westmeath |
| Co. Kerry | Kerry |
| Dublin 13 | Dublin |
| Co. Dublin | Dublin |
| Dublin 6W | Dublin |
| Co. Longford | Longford |
- 进入Power Query编辑器,打开原数据表格
- 点击「开始」选项卡的「合并查询」,选择「合并查询作为新查询」
- 在合并窗口中,原表选择「Address 1: County」列,映射表也选择对应列,连接类型选「左外部(从第一个表返回所有行,从第二个表找到匹配行)」
- 点击确定后,展开合并后的映射表列,只选择「County」字段
- 重命名新列为「County」,删除多余列即可
内容的提问来源于stack exchange,提问作者sky
相关产品推荐
相关产品推荐

