计算并显示powerbi中1个类别总数的百分比

时间:2021-01-28 06:06:23

标签: matrix powerbi tableview dax percentage

请帮忙,我有一个 power bi 的人口统计表,我只需要显示其中 1 个人口统计数据占总数的百分比,下面是我需要的表格视图。

我已经包含了一个数据样本,我只是将其旋转/使用一个矩阵,然后计算族群

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:0)

按照以下步骤获得所需的输出-

Spet-1: 复制您当前的数据表并给出适当的名称。您现在可以对这个新表应用必要的转换,并且您的源数据对于其他用途保持不变。让你的数据如下-

enter image description here

第 2 步:转到新表的高级编辑器,并将代码替换为以下代码-

注意:您的表列名称需要如上图所示。

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WcsxNLcpMTlTSUXIEYr/8PIXwjMySVKVYHaBcaXFJUWJOJkjWCYiRZNKgmpwwNcENdMZrIBbr4DrRLENzBpquNNzWwQ10wWmgC0WOxK3TGXt4YbEuDbunSQhGkoMKl1VYvEtMRJMUEvjDHk84obiSqkkRfxogPiZxuRC7YbEA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Area = _t, Client = _t, #"Ethnic Group" = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Area", type text}, {"Client", type text}, {"Ethnic Group", type text}}),
    #"Grouped Rows" = Table.Group(#"Changed Type", {"Client", "Area", "Ethnic Group"}, {{"Count", each Table.RowCount(_), Int64.Type}}),
    #"Pivoted Column" = Table.Pivot(#"Grouped Rows", List.Distinct(#"Grouped Rows"[#"Ethnic Group"]), "Ethnic Group", "Count", List.Sum),
    #"Replaced Value" = Table.ReplaceValue(#"Pivoted Column",null,0,Replacer.ReplaceValue,{"Non White"}),
    #"Replaced Value1" = Table.ReplaceValue(#"Replaced Value",null,0,Replacer.ReplaceValue,{"White"}),
    #"Added Custom" = Table.AddColumn(#"Replaced Value1", "Custom", each ([Non White]*100.00)/([Non White]+[White])),
    #"Changed Type1" = Table.TransformColumnTypes(#"Added Custom",{{"Custom", Int64.Type}}),
    #"Renamed Columns1" = Table.RenameColumns(#"Changed Type1",{{"Custom", "% Non White"}}),
    #"Unpivoted Other Columns" = Table.UnpivotOtherColumns(#"Renamed Columns1", {"Client", "Area"}, "Attribute", "Value"),
    #"Renamed Columns2" = Table.RenameColumns(#"Unpivoted Other Columns",{{"Attribute", "Ethenic_group"}}),
    #"Replaced Value2" = Table.ReplaceValue(#"Renamed Columns2","Non White"," Non White",Replacer.ReplaceText,{"Ethenic_group"}),
    #"Replaced Value3" = Table.ReplaceValue(#"Replaced Value2","White"," White",Replacer.ReplaceText,{"Ethenic_group"}),
    #"Replaced Value4" = Table.ReplaceValue(#"Replaced Value3","%  Non  White","% Non White",Replacer.ReplaceText,{"Ethenic_group"}),
    #"Added Custom1" = Table.AddColumn(#"Replaced Value4", "Custom", each if [Ethenic_group] = "% Non White" then Text.From([Value]) & "%" else Text.From([Value]))
in
    #"Added Custom1"

这是最终的输出-

enter image description here

第 3 步:现在返回报告并在报告中添加指标并配置如下-

enter image description here

第 4 步:点击如下所示的红色方框图标-

enter image description here

最后您将看到以下演示文稿-

enter image description here