打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
PowerQuery如何处理文本连接的问题?
经常遇到有人问如何将相同类型的文本连接成一个字符串,以下面这个数据为例,如何从左表变成右表:
根据之前介绍过的CONCATENATEX函数(参考:用一个度量值返回列表?CONCATENATEX函数你应该掌握,只需要写一个度量值就可以直接实现这个需求:

名称列表 =
CONCATENATEX(
    '示例数据',
    [名称],
    ","
)

用表格展示如下:
不过如果想在PowerQuery中做这种转换,应该怎么做呢?
其实也很简单,只需要下面两个步骤:

1. 分组
点击转换>分组依据,在弹出的窗口中,选择按类型分组,操作是“所有行”,如下图。

2. 修改M公式
分组之后,会有一个新列,不要直接展开,而是修改分组步骤的M公式,原公式为:

Table.Group(源,{"类型"},{{"名称", each _, type table [类型=nullable text, 名称=nullable text]}})


然后将其中的下划线_它修改为Text.Combine([名称],","),其他地方不变。
修改后的M公式如下:

Table.Group(源, {"类型"}, {{"名称", each Text.Combine([名称],","), type table [类型=nullable text, 名称=nullable text]}})

然后就实现了同类型名称连接到一起的效果:

还有一种情况是,如果名称文本有重复的,按上述连接到一起后也会重复,比如类型A中有两个A2,文本合并后的效果就变成了这样:
如果不想在合并后的文本中出现重复值,只需要名称字段外面套一个List.Distinct就可以了,上面的Text.Combine表达式改成:

Text.Combine( List.Distinct( [名称] ),"," )

关于文本连接的技巧,你学会了吗?


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Powerquery对数值进行求和,对文本进行合并
PQ实战 | 同类项的合并与拆分
第三十一节【Text】Text.Combine 【文本合并】
基本函数
Excel中如何将多个单元格的内容合并到一个单元格上?
Excel – 如何将同班同学名字汇总到同一个单元格中?
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服