2016-12-13 34 views
0

骰子的表抛出这样的一个:转型动力BI桌面

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中完成此操作?

此转换的目的是获得报告特定日期范围内某些骰子投掷次数的高效方法。也许有可能得到没有这种转变的报道?

回答

2

步骤1

除了你有上面的表格,你要代表每个可能的模具抛出一个表。 (如果数字1-6在搜索结果中已表示这可能不是必要的,但因为你的例子并不反映的是,我假设,不能假设)

Die 
--- 
1 
2 
3 
4 
5 
6 

步骤2

将两个表加载到Power BI Desktop中。模表可以不加修改地加载。上面的结果表(我将称之为“抛出”)将需要不透明。单击以“编辑查询”并突出显示抛出1 &抛出2列,然后单击转换> Unpivot列> Unpivot列。重命名未转义的列。我结束了:

Day | Throw | Result 
-------------------- 
1 | Throw 1 | 1 
1 | Throw 2 | 3 
2 | Throw 1 | 3 
... | ....... | ... 

步骤3

一旦2个表被加载到你的数据模型,他们彼此相关(模具列到结果列)。

步骤4

创建一个新的措施:

Count of Result = COUNT(Throws[Result]) 

假设你的表称为抛出,结果列名为结果

步骤5

On y我们的画布,选择矩阵视觉。使用计数结果作为您的值,作为您的列,并且您的行。然后,在右侧点击Die旁边的小下箭头,然后选择显示没有数据的项目即可获得您的示例中的数字4 & 5,即使它们没有被抛出。你现在应该得到一个反映你想要的结果的结果(总计)。


希望这有助于!

+1

恒星漫步,非常感谢! – TvdH