Power Query 转换具有唯一列的数据

Power Query Transform Data with Unique Columns

源数据Table.

期望输出

我们想从每种类型的列中提取所有唯一值并将唯一值作为列 headers 的数据透视表。

有点类似于此,但我们有不止一列来查找唯一值。

来源中类型列的数量 table 可以随时间增加或减少。

下面的代码是通过标准菜单选项创建的。 This video 带您了解每一步的结果。

let
    Source = SourceData,
    #"Unpivoted Other Columns" = Table.UnpivotOtherColumns(Source, {"Key"}, "Attribute", "Value"),
    #"Added Custom" = Table.AddColumn(#"Unpivoted Other Columns", "Type", each if Text.Start([Attribute],4) = "Type" then [Value] else null),
    #"Filled Down" = Table.FillDown(#"Added Custom",{"Type"}),
    #"Filtered Rows" = Table.SelectRows(#"Filled Down", each not Text.StartsWith([Attribute], "Type")),
    #"Removed Columns" = Table.RemoveColumns(#"Filtered Rows",{"Attribute"}),
    #"Pivoted Column" = Table.Pivot(#"Removed Columns", List.Distinct(#"Removed Columns"[Type]), "Type", "Value")
in
    #"Pivoted Column"