You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Power BI中计算度量值基于均值的Z分数

实现Z分数计算的解决方案

前提说明

你已经提前创建好了3个基础度量,我们先统一命名方便示例:

  • [Distinct Sport Count]:每个ID对应的唯一运动项目计数,即你用DISTINCTCOUNT()创建的度量
  • [Average Count]:所有ID的唯一运动计数的均值,你的场景中值为3
  • [Std Dev Count]:所有ID的唯一运动计数的总体标准差,你的场景中值约为0.81649658

核心逻辑

Z分数的计算公式为:

Z = (单个观测值 - 总体均值) / 总体标准差

需要特别注意:计算均值和标准差时要移除ID维度的筛选上下文,避免当前行的ID筛选导致只统计单个ID的均值/标准差,得到错误结果。

DAX 度量代码(适配Power BI/Excel Power Pivot场景)

假设你的源表名为SportsData,ID列名为SportsData[ID],度量写法如下:

Z Score = 
VAR CurrentIDCount = [Distinct Sport Count]
VAR OverallAverage = CALCULATE([Average Count], REMOVEFILTERS(SportsData[ID]))
VAR OverallStdDev = CALCULATE([Std Dev Count], REMOVEFILTERS(SportsData[ID]))
RETURN
DIVIDE(CurrentIDCount - OverallAverage, OverallStdDev, BLANK())

结果验证

你的场景中计算结果如下:

IDZ分数说明
1234560计数等于均值
234567~-1.22符合略低于-1的预期
345678~1.22符合略高于1的预期

注意事项

如果你的报表存在其他需要保留的筛选条件(比如运动类型分组、时间筛选等),上述写法仅会移除ID列的筛选,其他筛选条件仍然生效,符合常规的分组统计Z分数的需求。

内容的提问来源于stack exchange,提问作者user35131

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 03:45:02