举个栗子!Tableau 技巧(199):用 Prep 正则表达式拆分复杂字段
在数据准备的时候,我们经常会遇到需要拆分的字段。对于比较规整的字段,可以用 split() 函数进行拆分。
但是,如果遇到比较复杂的情况(如下图):没有固定的长度,分隔字符不固定,分隔字符的数量也不固定。用普通的拆分方法,需要重复很多次,费时费力。
这种复杂的字段,有办法快速拆分么?交给 Tableau Prep 吧!
今天的栗子,我们使用 Tableau Prep 的 REGEXP_REPLACE() 等支持 REGEXP 正则表达式的字符串处理方法,来轻松的处理复杂字符串的拆分吧!
本期《举个栗子》,我们要给大家分享的 Tableau 技巧是:用 Prep 正则表达式拆分复杂字段。
为方便学习,栗子使用自备的上述示例数据。掌握栗子方法后,数据粉可尝试使用自己的数据源。
具体步骤如下:
01 创建自定义计算替换字符
打开 Tableau Prep 连接栗子数据源“复杂拆分”,新建一个清理步骤:单击数据表右侧 + 按钮,下拉菜单选择:+ 清理步骤。
首先,需要将多种分隔符号统一替换成可自动拆分的半角符号。
单击“待拆分字段”右上角...符号,下拉菜单选择:创建计算字段-自定义计算。使用 REGEXP_REPLACE() 函数,按照正则表达式对字段进行拆分。
Tips:REGEXP_REPLACE 函数的作用是把字段中符合正则表达式的字符,替换成指定的字符。有三个接收的参数,分别是 REGEXP_REPLACE(
将计算字段命名为:拆分字段,键入函数
REGEXP_REPLACE([待拆分字段], "[,, |分数]+", ",")
计算说明:示例中的正则表达式’[,,| 分数]+’,意思是匹配 [] 内的任意字符,匹配次数可以是 1 次或多次。连起来的意思是把“待拆分字符串”中包含的任意数量的表达式字符,替换成为半角符号。
计算应用保存后,可以看到替换效果如下:
02 拆分字段
单击“拆分字段”右上角符号,下拉菜单选择:拆分值-自动拆分。
如此,就完成了我们想要的字段拆分结果。
今天的 Tableau 技巧,你 Get 到了吗?赶快试试看吧!