[英]Transformation in Power BI Desktop
一张带有骰子的桌子会像这样抛出:
Day Throw 1 Throw 2
1 1 3
2 3 2
3 6 6
必须转换成此表:
Day 1 2 3 4 5 6
1 1 1
2 1 1
3 2
因此,我不想记录每天的单个投掷次数,而是希望将所有可能的结果放在列中,以便我可以读取该次数的出现次数。 (可以忽略抛出的顺序。)
我知道我可以在SQL Server ETL流程中做到这一点,但是我想知道是否可以在Power BI Desktop中做到这一点?
这种转换的目的是获得一种报告在特定日期范围内发生某些掷骰子的次数的有效方式。 也许不进行这种转换就可以得到报告?
第1步
除了上面的表格之外,您还需要一个表格,该表格代表每种可能的掷骰子。 (如果结果中已经显示了1-6,这可能不是必需的,但是由于您的示例没有反映出这一点,因此我假设这不能假定)
Die
---
1
2
3
4
5
6
第2步
将两个表都加载到Power BI Desktop中。 模具表可以不加修改地加载。 上面的结果表(我将其称为“ Throws”)将需要取消设置。 单击“编辑查询”并突出显示“投掷1”和“投掷2”列,然后单击“ 转换”>“取消透视列”>“取消透视列” 。 重命名未透视的列。 我最终得到了:
Day | Throw | Result
--------------------
1 | Throw 1 | 1
1 | Throw 2 | 3
2 | Throw 1 | 3
... | ....... | ...
第三步
将这两个表加载到数据模型后,将它们彼此关联(die列与result列)。
第四步
创建一个新的度量:
Count of Result = COUNT(Throws[Result])
假设您的表称为Throws,结果列称为Result
第5步
在画布上,选择矩阵视觉。 将“结果计数”用作值,将“ 模具”用作列,将“ 天”用作行。 然后,在右侧,单击Die旁边的小向下箭头,然后选择“ 显示无数据的项目”以从示例中获取数字4和5来显示,即使它们没有被抛出。 现在,您应该得到一个反映您期望的结果(总计)的结果。
希望这可以帮助!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.