【问题标题】:Split a column of lists into multiple columns in PowerBI在 PowerBI 中将一列列表拆分为多列
【发布时间】:2019-07-31 14:24:06
【问题描述】:

我已将一个 JSON 文件导入 PowerBI,它包含一列,其中值的类型为“列表”。我希望将该列扩展到多个列。

具体来说,数据包含 Sprint 名称、sprint 的开始日期和结束日期,以及与每个 sprint 相关的一些其他值。

尝试使用“扩展至新行”复制每个 sprint 实例,创建一个如下所示的表,为每个关联值复制每个 sprint 实例多次:

Sprint Name       Value

JAN(S1Dev)     2019-01-01
JAN(S1Dev)     2019-01-13
JAN(S1Dev)     {attribute}
JAN(S1Dev)     {attribute}
JAN(S2Dev)     2019-01-14
JAN(S2Dev)     2019-01-31
JAN(S2Dev)     {attribute}
JAN(S2Dev)     {attribute}
FEB(S1Test)    2019-02-01
FEB(S1Test)    2019-02-15
...            ...

我想做一些类似于“扩展”功能的事情,它会为每个属性创建一个新列,而不是一个新行。目前,这无缘无故地大大增加了我的表的大小,同时也使数据实际上无法使用。任何帮助将不胜感激,干杯!

【问题讨论】:

    标签: powerbi powerbi-desktop


    【解决方案1】:

    我找到了一个非常简单的解决方案,但由于我花了一些时间才弄清楚,我会回答我自己的问题,而不是删除它以帮助其他人......

    将 JSON 数据导入 PowerBI 后,首先选择“转换为表格”以将数据查看为具有可编辑属性的表格。

    接下来,单击列表列顶部的相互背离的箭头,然后选择“提取值”。

    选择用于连接值的分隔符,我选择逗号是因为我知道列表中包含的数据中没有任何逗号。如果您的数据中包含逗号,请选择其他内容。同样,如果您的数据包含其中一个分隔符,请不要选择它作为分隔符。 它现在应该显示一个逗号分隔的列表,之前它以橙色文本显示“列表”。

    现在,右键单击列并选择“拆分列”,然后选择“按分隔符” 选择您之前选择的分隔符,然后在“拆分于”下选择“每次出现的分隔符”,然后单击确定。

    您的列现在应该根据列表拆分为多个列!

    【讨论】:

    • 在此之后,我进行了转置转换 [#"Transposed Table" = Table.Transpose(#"Changed Type") ] 以使表格的每个元素格式具有适当的列。
    猜你喜欢
    • 2013-01-23
    • 1970-01-01
    • 2018-11-25
    • 2022-01-09
    • 2023-01-11
    相关资源
    最近更新 更多