如何在PowerBI中用DAX计算各活动Attendance rate分组均值的总平均值?
需求:计算活动的平均出勤率(按活动维度再求总平均)
我有一张记录各活动出勤率(Attendance rate)的表格,需要按以下步骤计算所有活动的总平均出勤率:
- 先计算每个活动的平均出勤率:
event 1平均出勤率=(12%+7%+15%)/3=11.33%event 2平均出勤率=(22%+37%)/2=29.5%event 3平均出勤率=10%event 4平均出勤率=(14%+15%)/2=14.5%
- 再计算所有活动的总平均出勤率:
总平均出勤率=(11.33%+29.5%+10%+14.5%)/4=16.33%
我需要把16.33%这个结果用于Card可视化,但无法用DAX实现该计算。直接将Attendance rate列放入Card可视化会得到16.5%,这不是我需要的计算方式,求解决方法!
表格数据
| Event | Attendance rate |
|---|---|
| event 1 | 12.00% |
| event 1 | 7.00% |
| event 1 | 15.00% |
| event 2 | 22.00% |
| event 2 | 37.00% |
| event 3 | 10.00% |
| event 4 | 14.00% |
| event 4 | 15.00% |
DAX计算方案
创建如下度量值,替换其中的'你的表名'为实际表名称,将该度量值拖入Card可视化即可得到目标结果:
总平均出勤率 = VAR 活动平均表 = SUMMARIZE( '你的表名', '你的表名'[Event], "单活动平均", AVERAGE('你的表名'[Attendance rate]) ) RETURN AVERAGEX(活动平均表, [单活动平均])
逻辑说明
SUMMARIZE按活动分组,计算每个活动的出勤率平均值,生成临时结果表;AVERAGEX遍历临时表,计算所有活动平均出勤率的均值,即最终需要的总平均。
内容的提问来源于stack exchange,提问作者weizer
相关产品推荐
相关产品推荐

