【发布时间】:2021-05-09 04:00:00
【问题描述】:
所以我创建了一些度量,例如:
| Fruit | Fruit Measure | Value |
|---|---|---|
| banana | sweetness | 90 |
| banana | sweetness | 80 |
| banana | tartness | 15 |
| banana | tartness | 20 |
| peach | sweetness | 70 |
| peach | sweetness | 65 |
| peach | tartness | 35 |
| peach | tartness | 40 |
| apple | sweetness | 65 |
| apple | sweetness | 60 |
| apple | tartness | 30 |
| apple | tartness | 25 |
| kiwi | sweetness | 20 |
| kiwi | sweetness | 15 |
| kiwi | tartness | 85 |
| kiwi | tartness | 90 |
等等等等
[编辑]澄清:
基本上,我有一个类别Fruit 和一个关联的Fruit Measure,并且我创建了以下度量来获得每种水果的多个甜度/酸度值的总和。我还取了列总数的百分比(因为甜度/酸度值在不同的范围内,并且本质上不具有可比性)。例如:%ColTotal = bananaSweetness/TotalFruitSweetness => 170/(170 + 135 + 125 + 35) = .3656,如下:
SumPerFruit =
SUMX ( VALUES ( Table[Fruit Measure] ), CALCULATE ( SUM ( Table[Value] ) ) )
PercentageofColTotal_SumPerFruit =
DIVIDE (
[SumPerFruit],
SUMX (
VALUES ( Table[Fruit Measure] ),
CALCULATE ( SUM ( Table[Value] ), ALLSELECTED ( table[Fruit] ) )
)
)
计算结果如下:
| Fruit | Fruit Measure | SumPerFruit | PercentageofColTotal_SumPerFruit |
|---|---|---|---|
| banana | sweetness | 170 | .3656 |
| banana | tartness | 55 | .1029 |
| peach | sweetness | 135 | .2903 |
| peach | tartness | 75 | .2206 |
| apple | sweetness | 125 | .2688 |
| apple | tartness | 55 | .1618 |
| kiwi | sweetness | 35 | .0753 |
| kiwi | tartness | 175 | .5147 |
[编辑] 了解有关 SummaryFruitMeasure 的更多说明
现在,上述措施只是将每种水果的多个甜度/酸度值合并为每种水果的两个值 - 一个用于酸味,一个用于甜味。理想情况下,我只想有一个数值平均值,可以总结水果的甜度/酸度值。因此,我只想取如下平均值:
BananaSummaryMeasure = (BananaTartness + BananaSweetness)/2 => (.3656 + .1029)/2
所以我试图得到每个水果的PercentageofColtotal_SumPerFruit 平均值,如下所示:
SummaryFruitMeasure =
SUMX (
VALUES ( Table[Fruit] ),
CALCULATE ( DIVIDE ( SUM ( Table[PercentageofColTotal_SumPerFruit] ), 2 ) )
)
预期结果为:
| Fruit | SummaryFruitMeasure |
|---|---|
| banana | .23425 |
| peach | .255545 |
| apple | .2153 |
| kiwi | .295 |
但是,SUM(Table[PercentageofColTotal_SumPerFruit]) 部分出现如下错误:
无法找到表“Table”中的列
PercentageofColTotal_SumPerFruit,或者可能无法在此表达式中使用。
所以我假设它不能在这个表达式中使用,因为它是一个度量。我该如何解决这个问题?我应该使用SUMMARIZECOLUMNS 或类似的东西吗?我不确定是否可以在PercentageofColTotal_SumPerFruit 上进一步聚合?
另外,我必须使用度量,因为实际数据会被过滤。
[编辑]我也研究过类似this 的东西,但结果是一个表格,我想在这个结束时进行测量..
【问题讨论】:
-
还要小心:ALLSELECTED 不应用于从其他度量中的迭代器调用的度量中。 sqlbi.com/articles/the-definitive-guide-to-allselected
-
SummaryFruitMesure打算代表什么?它是如何解释的? -
@AlexisOlson 我已经添加了一些说明,谢谢
-
也许是一个愚蠢的问题,SUMX(Table, [PercentageofColTotal_SumPerFruit]) 不是为你做的吗?我只是略过你的问题,所以我可能错过了它的重点:)。