在Power BI中按站点计算具有(某些度量标准)患者的百分比

时间:2018-07-25 21:49:48

标签: powerbi powerpivot

简而言之,我正在尝试使用Power BI中的自定义度量从两个相关的表格Patient和PatientMetric中计算“按部位计算的(某些指标)的患者百分比”。我有一个在Excel中使用Power Pivot的解决方案,但是相同的度量公式不适用于Power BI。

这些表是:

Patient, with columns SiteCode and PatientCode
PatientMetric, with columns PatientCode and MetricCode

两个表之间的联系很明显:

PatientMetric.PatientCode -> Patient.PatientCode

我在下面提供了示例数据。

在Power Pivot中,我创建了一个自定义指标...

DISTINCTCOUNT(PatientMetric[PatientCode])/DISTINCTCOUNT([PatientCode])

...,当我用Rows =“ SiteCode”(来自Patient),Columns =“ MetricCode”(来自PatientMetric)和Values =(我的自定义指标)创建数据透视表时,我得到了我希望的得到...

SiteCode  M1    M2
1         67%   67%
2         100%  50%

在Excel中,在计数之前,已通过SiteCode正确过滤了度量中的分母。

但是,当我使用具有完全相同的数据模型和关系的Power BI并构建表时,我得到的结果...

SiteCode  M1    M2
1         40%   40%
2         40%   20%

...因为Power BI使用的是患者总数作为分母,而未通过SiteCode过滤。

我该如何解决?

患者数据为...

+----------+-------------+
| SiteCode | PatientCode |
+----------+-------------+
|        1 |          10 |
|        1 |          11 |
|        1 |          12 |
|        2 |          20 |
|        2 |          21 |
+----------+-------------+

...而PatientMetric数据为...

+-------------+------------+
| PatientCode | MetricCode |
+-------------+------------+
| 10          | M1         |
| 10          | M2         |
| 11          | M1         |
| 12          | M2         |
| 20          | M1         |
| 20          | M2         |
| 21          | M1         |
+-------------+------------+

1 个答案:

答案 0 :(得分:0)

我本身并没有“解决”问题,但是在浪费@AlexisOlson的时间之后,我重新创建了Power BI切片器和表并获得了正确的结果。我将工作版本与非工作版本进行了比较,找不到区别,但是有很多设置。

故事的寓意是:尝试使用精简版本进行重新创建; Power BI有很多隐藏的内容可能会咬你。