如何在DAX的AVERAGE函数中实现简单计算?PowerBI技术求助
问题解决:PowerBI中计算反向值的平均值
错误原因
你之前的写法问题出在:
- 直接用
AVERAGE(6 - CALCULATE_DATA_PI[Einheitsvalue])时,AVERAGE函数需要的是单列数据,虽然DAX允许表达式作为参数,但这种写法容易因上下文解析问题失效,尤其是在度量值场景中。 - 用
AVERAGEX时大概率是没传对第一个参数(必须指定要遍历的表),导致函数无法逐行计算反向值再求平均。
正确写法
方法1:用AVERAGEX(推荐,适合度量值)
AVERAGEX需要先指定要遍历的表,再写逐行计算的表达式,正确代码如下:
反向值平均值 = AVERAGEX(CALCULATE_DATA_PI, 6 - CALCULATE_DATA_PI[Einheitsvalue])
这个函数会遍历CALCULATE_DATA_PI表的每一行,计算6 - Einheitsvalue,然后对所有结果取平均。
方法2:先建计算列再求平均
如果需要保留反向值的明细,可以先给表添加计算列:
反向值 = 6 - CALCULATE_DATA_PI[Einheitsvalue]
然后基于这个计算列创建平均度量值:
反向值平均值 = AVERAGE(CALCULATE_DATA_PI[反向值])
内容的提问来源于stack exchange,提问作者Fred
相关产品推荐
相关产品推荐

