在 PowerBi 中将 Table 中的数据从行转换为列

Convert data in Table from Row to Column in PowerBi

我有以下 table 格式的数据,其中在 Column1 中,名称每 4 行重复一次。

Column1     Column2
Date        11:10:20
Mem usage   44%
CPU usage   35%
Disk usage  20%
Date        11:11:20
Mem usage   40%
CPU usage   34%
Disk usage  24%
Date        11:12:20
Mem usage   34%
CPU usage   20%
Disk usage  18%

我想将其转换成以下 table 格式。 我尝试 pivot/unpivot 但没有成功。有什么办法可以做到吗?

Date        Mem Usage   CPU Usage   Disk Usage
11:10:20    44%         35%         20%
11:11:20    40%         34%         24%
11:12:20    34%         20%         18%

按照以下步骤进行电源查询

Select 来自自定义 Table

的 column2 和索引列

诀窍是使用额外的分组列:

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WckksSVXSUTI0tDI0sDIyUIrViVbyTc1VKC1OTAdJmJiogsWcA0LhYsamEDGXzOJsuKCRAVQQYaAhVgMNsBhogs1AEwwDjbAZaIzFhXDHIBtoaAEUjAUA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Column1 = _t, Column2 = _t]),
    #"Changed Type" = Table.TransformColumnTypes(
        Source,{{"Column1", type text}, {"Column2", type text}}),
    #"Added Index" = Table.AddIndexColumn(
        #"Changed Type", "Index", 0, 1, Int64.Type),
    #"Integer-Divided Column" = Table.TransformColumns(
        #"Added Index", {{"Index", each Number.IntegerDivide(_, 4), Int64.Type}}),
    #"Pivoted Column" = Table.Pivot(
        Table.TransformColumnTypes(#"Integer-Divided Column", {{"Index", type text}}, "en-US"), 
        List.Distinct(Table.TransformColumnTypes(#"Integer-Divided Column", {{"Index", type text}}, "en-US")[Index]), 
        "Index", 
        "Column2"),
    #"Transposed Table" = Table.Transpose(
        #"Pivoted Column"),
    #"Promoted Headers" = Table.PromoteHeaders(
        #"Transposed Table", [PromoteAllScalars=true]),
    #"Changed Type1" = Table.TransformColumnTypes(
        #"Promoted Headers",{
            {"CPU usage", Percentage.Type}, 
            {"Date", type time}, 
            {"Disk usage", Percentage.Type}, 
            {"Mem usage", Percentage.Type}
        }
    )
in
    #"Changed Type1"