如何使用 Power BI 从均值中找到 Measure 中每个值的 z 分数?

How to find z-score of each value in Measure from mean using Power BI?

我有一个看起来像这样的“长”数据集

ID     Sport
123456 Basketball
123456 Baseball   
123456 Football
123456 Basketball
234567 Football
234567 Tennis
234567 Tennis
234567 Tennis
345678 Basketball
345678 Tennis
345678 Wrestling
345678 Volleyball

我使用 DISTINCTCOUNT() 创建了一个度量,它能够计算与 ID 的唯一关联,因此 如果我要在 table 中显示度量,它看起来像这样

ID      Count
123456  3
234567  2
345678  4

注意 123456 的唯一关联是篮球、棒球和足球,因此是三个。对于 234567,它是两个,足球和网球。对于 345678,它是唯一的,因此是 4.

基于这些值,创建了另一个度量,得到的平均值为 3。3+2+4=9/3=3。

我想创建一个度量值,它根据均值给出 ID 的计数值及其 σ(SD)。例如,如果我的值为 3.81649658(3+1sd(.81649658)) 它将是 1。如果我有 2.18350342 它将是 -1 (3-1sd).

345678 应该略高于 1,234567 应该略低于 1。

我有不同的计数度量、平均度量和 SD 度量。

Z-Score 简直

(raw score - average score) / (standard deviation)

假设我们有以下措施:

DCount  = DISTINCTCOUNT ( Sports[Sport] )

Average = AVERAGEX ( ALLSELECTED ( Sports[ID] ), [DCount] )

StdDev  = STDEVX.P ( ALLSELECTED ( Sports[ID] ), [DCount] )

我正在使用 ALLSELECTED 以便它查看所有选定的 ID 值,而不仅仅是来自视觉对象的当前行过滤器上下文中的单个值。我使用迭代器 AVERAGEXSTDDEVX.P 因为我们不是在使用现有的 table 列,而是在 ID 列上分组时使用一系列度量值。

那么Z-score可以定义为

Z-Score = DIVIDE ( [DCount] - [Average], [StdDev] )