让我们愉快的切割吧 - 2:用DAX的SUBSTITUTE和PATHITEM函数对数据进行拆分

上一篇文章中介绍的使用查询编辑器–拆分列功能对数据进行拆分,实际上利用的是M语言功能在向Power B中加载数据前就对数据进行分割。除了这种拆分方法,Power BI还支持使用DAX语言,在加载完数据后对其进行拆分整理。

例如在下图列示例中,Location中的内容由两部分组成,分别是region和country,并且两部分内容是有规律的使用了逗号进行分割。本文介绍使用SUBSTITUTE和PATHITEM函数将location这个column拆分成两部分
这里写图片描述

  • SUBSTITUTE函数实现的是在文本字符串中使用新文本来替换现有文本。使用格式为:
SUBSTITUTE(<text>, <old_text>, <new_text>, <instance_num>) 
  • PATHITEM函数实现的是返回Path函数生成的分割列表中的第N项。使用格式为:
PATHITEM(<path>, <position>[, <type>])

拆分语句如下:
这里写图片描述
这里面将PATHITEM和SUBSTITUTW两个函数嵌套使用,里层的SUBSTITUTE([Location],”,”,”|” 目的是将Location一列中的逗号(,)替换成竖线(|),也就是将Asia Pacific,Australia替换成Asia Pacific|Australia。之所以这么替换是因为PATHITEM内使用的参数实际上是另外一个函数PATH的返回结果,而PATH中规定,需要使用竖线(|)作为界定符来区分不同区位的数据,因此此处必须将逗号换成竖线。外层PATHITEM函数的意思是获取参数的第1项内容,也就是竖线(|)前的部分,即Asia Pacific|Australia中的Asia Pacific。因此通过上个公式就可以将Location里面第一部Region数据提取出来。

同样的模仿这个公式,将PATHITEM公式的第二个参数改为2,即可获得Location里面Country信息。
这里写图片描述

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值