【问题标题】:Need a comma separated group by in powerbi在powerbi中需要一个逗号分隔的group by
【发布时间】:2020-10-08 21:30:58
【问题描述】:

我在下面有一张桌子。

ID  Value
12  foo
12  bar
34  foo
45  bar
56  foo
56  bar

我希望有以下

ID  Value
12  foo,bar
34  foo
45  bar
56  foo,bar

我知道如何在 Python 中做到这一点,但 powerbi 让我很难做到。 补充一下,我使用的是 power bi 版本 2.65.5313.1421 64 位

【问题讨论】:

    标签: powerbi powerbi-desktop


    【解决方案1】:

    您可以通过以下几个步骤在 Power Query 中实现这一点-

    第 1 步:ID 列上应用组,如下所示-

    第 2 步:现在添加一个自定义列,如下所示-

    第 3 步:现在提取如下值-

    Step-4:选择Extract value选项后如下选择逗号-

    第 5 步:现在您有了所需的输出(如果需要,您可以删除 column1)

    这是 M 查询供您进一步参考

    let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMjRS0lFKy89XitWBcpISi8AcYxMkGRNTJBlTMyQZMAcsEwsA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [ID = _t, Value = _t]),
        #"Changed Type" = Table.TransformColumnTypes(Source,{{"ID", Int64.Type}, {"Value", type text}}),
    
        //--Steps started from here.
        #"Grouped Rows" = Table.Group(#"Changed Type", {"ID"}, {{"Column1", each _, type table [ID=nullable number, Value=nullable text]}}),
        #"Added Custom" = Table.AddColumn(#"Grouped Rows", "Custom", each [Column1][Value]),
        #"Extracted Values" = Table.TransformColumns(#"Added Custom", {"Custom", each Text.Combine(List.Transform(_, Text.From), ","), type text})
    in
        #"Extracted Values"
    

    【讨论】:

    • 在第 2 步之后,他们都说“错误”而不是“列表”。有什么想法吗?
    • 搞清楚了。我以为您使用[Value] 作为对PowerBI 中内置的名为Value 的关键变量的某种调用,但实际上,您的示例中的Value 实际上是在引用列名。所以我只需要将[Value] 改为我即将用逗号分隔的列的名称
    • 你是如何获得[Value]列的?有一个名为 ID 的列,一个名为 Column1,但没有一个名为 [Value] 的列,所以我很困惑如果已经没有 [Value] 列,您如何添加自定义列 [Column1][Value]....跨度>
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-20
    • 2011-11-18
    • 2013-10-16
    • 2010-09-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多