首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >灵活拆分列:从数字到非数字拆分,只要拆分1次怎么办?| PBI函数及技巧

灵活拆分列:从数字到非数字拆分,只要拆分1次怎么办?| PBI函数及技巧

作者头像
大海Power
发布2023-09-09 14:57:58
发布2023-09-09 14:57:58
7110
举报

这是来自一位星友的提问:数字汉字混合的情况,只要拆分一次,怎么办?

这个问题在很多提取问卷题目、答案,或者财务报表的项目序号等有一定的借鉴意义。

我们知道,在Power Query里,有一项拆分列的选项是“按照从数字到非数字的转换”进行拆分,通过这个选项,可以很轻松地将数字和非数字间隔出现的情况拆开:

拆分后,所有内容会被一次性拆解完毕,步骤公式和输出内容如下:

到了这里,可能有的朋友会说,这个问题不是好简单吗?再将第2项及后面的内容合并不就好了吗?

但是,这是不可取的——为什么?自己可以先想一下。

显然,拆分后的结果被分成了很多列,并通过公式中最后一个列表参数进行控制,所以,我们这里可以修改其中的输出内容,只取所需要的列(1列,并且可以直接修改输出的列明),如“首段数字”:

得到了首段数字之后,我们就可以通过剔除首段内容的方式,得到剩下的全部内容,这里提供两种方法:

  1. Text.ReplaceRange

这个方法很简单,因为我们已经得到了前面的数字内容,所以,很容易通过Text.Length函数计算出首段内容的长度,然后,通过Text.ReplaceRange函数把原内容中的前面几个字符替换为空白即可。

  1. Text.TrimStart

这个方法本身也很简单,即用Text.TrimStart这个函数直接对内容进行“掐头”。

但是,可能很多朋友对Text.TrimStart这个函数不是很熟悉。也借这个机会跟大家讲一下。

注意,这里不会删除中间存在的列表中的字符,大家可以自己体会一下。

再回到前面的问题,为什么不直接通过再合并的方式,把除第一项以外的内容直接做合并?这是因为,从数字到非数字的转换拆分出来的列是按现有内容进行固定拆分的,比如目前的内容拆出来只有5项,那如果后面新增的内容有6项甚至更多,我们再用这个拆分合并的过程,就会丢失那些多出的内容

总的来说,这个问题不难,方法也很多,核心的思路是,当我们不能一下子得到最终全部结果时,我们可以先得到部分结果,然后再构造出剩下的结果——步步为营,是我们拆解问题、解决问题的常用思想,不仅仅是Power Query或Power BI。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-08-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Excel到PowerBI 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档