Power BI is turning 10! Tune in for a special live episode on July 24 with behind-the-scenes stories, product evolution highlights, and a sneak peek at what’s in store for the future.
Save the dateEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
I want to create a slicer of categories so that I can see the evolution of the portfolio by period. Any idea how to do it for the example below?
Period | Portfolio (A+B+C) | Category A | Category B | Category C |
jan-19 | 1406 | 490 | 455 | 461 |
feb-19 | 1297 | 485 | 361 | 451 |
mrt-19 | 941 | 339 | 280 | 322 |
apr-19 | 1030 | 460 | 321 | 249 |
mei-19 | 915 | 190 | 316 | 409 |
jun-19 | 569 | 164 | 293 | 112 |
jul-19 | 929 | 192 | 368 | 369 |
aug-19 | 1429 | 458 | 471 | 500 |
sep-19 | 1155 | 405 | 300 | 450 |
okt-19 | 778 | 123 | 290 | 365 |
nov-19 | 951 | 415 | 344 | 192 |
dec-19 | 886 | 207 | 404 | 275 |
Solved! Go to Solution.
Go into Power Query, get rid of the sum column, then unpivot the individual category columns so you have:
period - category - value
jan-19 - a - 490
jan-19 - b - 455
jan-19 - c - 461
feb-19 - a - 485
etc - the category column can then just be dropped into a slicer as you want
Hi @Anonymous ,
1. Unpivot the table.
M code for your reference.
let Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("RZC5bgMxDET/ZWsbIEXqYGkgSOEijUvDRRIsgiCHDSPO91sz2k0aSiCfRjM8HieN7f75e9pM6lL64SGoOaMWnU4bMo/zC5gUFf2GqfUpyMF8XX+2Gr0RjrYZ7qlBzFJaZXaXK2TE+EkZU/DJY8jM74uM4g+lG1M6k1hl9jc4zgWgFsf7MNw1/SOfUElEItFvY/1T2d3emJuMZ0y9wkwWWZnDfKHu2Icwt4wNDeb8seSutXFDRje0XfIq83T+hZvMjTGZuS/OFuRhfu2N1hA1CdcsTFa7yukO", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [Period = _t, #"Portfolio (A+B+C)" = _t, #"Category A" = _t, #"Category B" = _t, #"Category C" = _t]), #"Changed Type" = Table.TransformColumnTypes(Source,{{"Period", type text}, {"Portfolio (A+B+C)", Int64.Type}, {"Category A", Int64.Type}, {"Category B", Int64.Type}, {"Category C", Int64.Type}}), #"Removed Columns" = Table.RemoveColumns(#"Changed Type",{"Portfolio (A+B+C)"}), #"Unpivoted Other Columns" = Table.UnpivotOtherColumns(#"Removed Columns", {"Period"}, "Attribute", "Value") in #"Unpivoted Other Columns"
2. Then we can see the evolution of the portfolio by period.
For more details, please check the pbix as attached.
Hi @Anonymous ,
1. Unpivot the table.
M code for your reference.
let Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("RZC5bgMxDET/ZWsbIEXqYGkgSOEijUvDRRIsgiCHDSPO91sz2k0aSiCfRjM8HieN7f75e9pM6lL64SGoOaMWnU4bMo/zC5gUFf2GqfUpyMF8XX+2Gr0RjrYZ7qlBzFJaZXaXK2TE+EkZU/DJY8jM74uM4g+lG1M6k1hl9jc4zgWgFsf7MNw1/SOfUElEItFvY/1T2d3emJuMZ0y9wkwWWZnDfKHu2Icwt4wNDeb8seSutXFDRje0XfIq83T+hZvMjTGZuS/OFuRhfu2N1hA1CdcsTFa7yukO", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [Period = _t, #"Portfolio (A+B+C)" = _t, #"Category A" = _t, #"Category B" = _t, #"Category C" = _t]), #"Changed Type" = Table.TransformColumnTypes(Source,{{"Period", type text}, {"Portfolio (A+B+C)", Int64.Type}, {"Category A", Int64.Type}, {"Category B", Int64.Type}, {"Category C", Int64.Type}}), #"Removed Columns" = Table.RemoveColumns(#"Changed Type",{"Portfolio (A+B+C)"}), #"Unpivoted Other Columns" = Table.UnpivotOtherColumns(#"Removed Columns", {"Period"}, "Attribute", "Value") in #"Unpivoted Other Columns"
2. Then we can see the evolution of the portfolio by period.
For more details, please check the pbix as attached.
As suggested, remove the Portfolio column and unpivot the table on Period, then use the Category column in the slicer.
Go into Power Query, get rid of the sum column, then unpivot the individual category columns so you have:
period - category - value
jan-19 - a - 490
jan-19 - b - 455
jan-19 - c - 461
feb-19 - a - 485
etc - the category column can then just be dropped into a slicer as you want
User | Count |
---|---|
78 | |
74 | |
41 | |
31 | |
28 |
User | Count |
---|---|
100 | |
93 | |
52 | |
50 | |
48 |