我在PowerBI中定义了这个表:

我想定义一个新的表,其中包含美国赢得的奖牌占当年每项运动奖牌总数的百分比。
举个例子:
年份运动百分比
1986年水产0.0%
我怎么能做到呢?
发布于 2019-05-14 14:52:25
您可以使用SUMMARIZE()计算新表:
NewTable =
SUMMARIZE(
yourDataTable;
[Year];
[Sports];
"Pct";
DIVIDE(
CALCULATE(
COUNTROWS(yourDataTable);
yourDataTable[Nat] = "USA"
);
CALCULATE(
COUNTROWS(yourDataTable);
ALLEXCEPT(
yourDataTable;
yourDataTable[Year];
yourDataTable[Sports]
)
);
0
)发布于 2019-05-16 04:51:33
我知道答案已经被接受,但我觉得我应该提供我建议的解决方案来利用Power BI的所有功能。
通过创建计算表,您可以对数据执行的操作受到限制,因为数据很难编码以过滤到美国,并且仅基于年份和运动。虽然这是当前的需求,但如果它们发生了变化呢?然后,您必须重新编码您的表或创建另一个表。
我的建议是使用措施来完成这项任务,下面是如何实现的。
首先,这是我的一组样本数据。

有了这些数据,我创建了一个简单的测量方法,对行数进行计数,以获得奖牌数量。
Medal Count = COUNTROWS(Olympics)将基本矩阵与该度量组合在一起,我们可以看到如下所示的数据。

然后可以创建第二个度量,以获得特定国家的百分比。
Country Medal Percentage = DIVIDE([Medal Count], CALCULATE([Medal Count], ALL(Olympics[Country])), BLANK())将该度量添加到矩阵中,我们可以开始看到我们的百分比。

从这个矩阵中,我们可以看到美国在2000年赢得了所有奖牌的25%。他们在B项目上获得的2枚奖牌占当年奖牌总数的33.33%。
这样,您就可以利用切片器和矩阵的布局来获得所需的百分比。下面是一个显示相同数字的国家/地区和年份切片器的小示例。

从这里,您可以按任何运动或年份剪切数据,并查看任何选定国家(或多个国家)的百分比。
https://stackoverflow.com/questions/56115649
复制相似问题