处理输入数据并转换为更简单的格式 - PowerBI

问题描述 投票:0回答:1

这是我的上一个问题的后续问题,由@SamNseir回答 - 再次感谢!

我在原始源列中发现了另一种类型的数据:几个 JSON 数组,以逗号分隔....

示例:

Answer
-----------------------------
["German","English","French"]
["Ja","Yes","Oui"]
["A","B","C"],["A1","B1","C1"],["A2","B2","C2"]
0
Bern

我想“转换”这个混合数据包,以便

  • 如果它确实是一个 JSON 数组,我想获取第一个值(总是)
  • 如果它是 JSON 数组(逗号分隔)的列表,我想获取每个数组的第一个,并以逗号分隔显示它们
  • 如果不是JSON数组,我只想保持数据不变

所以最后,我想要这个:

Answer
------
German
Ja
A,A1,A2
0
Bern

有什么想法吗?我仍在尝试掌握在 PowerBI 中执行此类操作的窍门...

json powerbi powerquery powerbi-desktop m
1个回答
0
投票

不是最优雅的,但很有效。

if Text.Contains ([Answer],"],[") then  Text.Combine( List.Transform( List.RemoveFirstN( Text.Split([Answer], "["""),1), each Text.BeforeDelimiter( _, """,")),",") else
try Json.Document([Answer]){0} otherwise [Answer]
© www.soinside.com 2019 - 2024. All rights reserved.