根据组计算平均值

时间:2019-08-01 19:59:05

标签: powerbi dax

我有与此表相似的数据

root    sub   questions         scores
C       C.1     C.1.1              0
C       C.1     C.1.2             30
C       C.1     C.1.3             100
C       C.1     C.1.4              0
C       C.1     C.1.5              70
C       C.2     C.2.1              0
C       C.2     C.2.2              0
C       C.2     C.2.3              90
C       C.2     C.2.4              0
C       C.3     C.3.1             100
C       C.3     C.3.2              0
C       C.3     C.3.3              40
C       C.4     C.4.1               0
C       C.4     C.4.2              59
C       C.4     C.4.3              30
C       C.4     C.4.4              90
C       C.5     C.5.1              20
C       C.5     C.5.2               0

然后,我使用(zoomcharts先进的甜甜圈图)图表通过向下钻取来可视化数据,我发现根的平均值是根据总体行而不是基于组计算的。

这是一个更多解释的例子 图表采用像这样的根C的平均值

(0 + 30 + 100 + 0 + 70 + 0 + 0 + 90 + 0 + 100 + 40 + 0 + 59 + 30 + 90 + 20 + 0)/ 18 = 34.94

我想首先按小组讨论,结果也有所不同

c.1 = 40

c.2 = 22.5

c.3 = 46.66

c.4 = 44.75

c.5 = 10

(c.1 + c.2 + c3 + c.4 + c.5)/5=32.7 在图表上,C = 34.94表示它取了总体的平均值 是否有任何图表或方法可以使要向下钻取的组取平均值?

1 个答案:

答案 0 :(得分:1)

类似的事情会起作用:

Average Per Sub Group :=
CALCULATE (
    AVERAGEX (
        SUMMARIZE ( 'Table', 'Table'[Sub], "Total", SUM ( 'Table'[scores] ) ),
        [Total]
    )
)

这是如何工作的:

  1. SUMMARIZE将生成一个表格,该表格将汇总按“表格”分组的所有得分[sub]
  2. AVERAGEX将遍历该表中的每一行(SUMMARIZE),并取“表” [sub]级别的平均值

希望对您有帮助!

相关问题