【问题标题】:How to calculate average percentage in PowerBI?如何计算 PowerBI 中的平均百分比?
【发布时间】:2022-01-12 09:29:19
【问题描述】:

大家好,

我还是 PowerBI 的新手,现在我在 PowerBI 中有一组数据,如上面的屏幕截图所示。我有一个Measure 来计算OK 的百分比:

total_student = COUNT(StudentAns[Name])

ok_% = 
VAR OK_COUNT = COUNTROWS(
    FILTER(
        StudentAns,
        StudentAns[Answer] = "OK"
    )
)

RETURN (OK_COUNT/StudentAns[total_student])

我创建了一个矩阵来显示每个月 OK 的百分比,如下面的屏幕截图所示:

我想要找到的是所有月份的平均百分比。所以最终输出的答案应该是89.05%,也就是85.95%、91.4%、89.27%和89.58%的平均值。

我想获得OK 在所有月份中的平均百分比是因为我想将输出用作 KPI 可视化的目标。

任何帮助或建议将不胜感激!

【问题讨论】:

  • 89,05 是每月取百分比的平均值,但 89,50 是取所有值的百分比。您是否有特定的原因需要每月百分比的平均值?比如说你有 100 个值,99 个可以,1 个不正确,前 4 个月都可以,第 5 个月有 1 个值:不正确。你会在计算中得到 80%,但真正的 ok 百分比是 99%。希望你能理解我的解释。
  • 有没有我可以计算得到的89.50% 并将其作为KPI 卡的Target 目标?
  • 您可能可以复制粘贴现有的度量并将 ALL 函数添加到计算步骤中。 docs.microsoft.com/en-us/dax/all-function-dax 这样您就可以对所有行进行计算,而忽略任何过滤器。

标签: powerbi average percentage kpi


【解决方案1】:

您可以在矩阵中再添加一个度量,如下所示:

ok_2 % =
IF(
    HASONEVALUE( 'StudentAns'[Month] ),
    [ok_%],
    AVERAGEX(
        VALUES( StudentAns[Month] ),
            [ok_%]
    )
)

它会计算您每个月的原始度量,但对于总计,它会返回您的度量结果的平均值。

如果过滤后的上下文中只有一个不同的值,HASONEVALUE 返回 True; VALUES - 创建唯一值列表; AVERAGEX - 计算每行计算的一组表达式的平均值。

【讨论】:

  • 嗨 Andrew,我设法在 Totals 中获得了所有月份的平均百分比,但是,当我将该度量放入 KPI 卡的目标目标时,它实际上使用了最近一个月的百分比作为目标而不是使用平均百分比,你知道我应该如何解决这个问题吗?
  • 嗨@weizer KPI 视觉应该显示最后一个时期(上个月),但我们可以应用 ALL 函数来清除该过滤器。目标目标的度量:ok_3 % = CALCULATE( AVERAGEX( VALUES( StudentAns[Month] ), [ok_%] ), ALL( 'StudentAns'[Month] ) )
  • 谢谢安德鲁!非常感谢您的帮助,我正在寻找这个将近一个星期!非常感谢:D
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-27
  • 1970-01-01
  • 2018-06-22
  • 1970-01-01
  • 2023-03-21
相关资源
最近更新 更多