Power BI中所得视觉效果的合计(平均值)

时间:2020-08-13 12:23:21

标签: powerbi dax

我遇到了一个问题,因为我想要一个经过过滤的视觉效果的汇总版本。

流程:

  1. 使用文本过滤器:
    一种。输入商户ID和年份-月份。
  • 如果输入商户ID(1234)和年月(2020-01),则结果Visual 1将如下所示:
Merchant ID    CardNum    Year-Month   Amount
   1234         1abc1      2020-01      1.00
   1234         2def2      2020-01      100.00
   1234         3ghi3      2020-01      65.00
  1. Visual 2然后显示Visual 1中列出的每个CardNumber的商户历史记录。
  • 生成的Visual 2将如下所示:
Card Number    Merchant ID  Date          Amount
   1abc1         abc        2020-01        1.00
   1abc1         def        2020-01        2.00
   1abc1         xyz        2020-01        3.00
   2def2         abc        2020-01       100.00
   2def2         xyz        2020-01       200.00
   3ghi3         abc        2020-01       300.00

现在我想要的东西可以使我的输出从最高到最低排序:

Merchant ID  xRatio
abc            1
xyz           2/3
def           1/3        

xRatio是在卡号上汇总的商户ID出现的平均值

详细说明:
所有3个卡号都出现了商家ID abc,因此((1 + 1 + 1)/ 3)是结果
商品ID xyz出现了2个卡号,因此((1 + 1)/ 3)是结果
商家ID def仅针对1个卡号出现,因此(1/3)是结果

其中“ n”是唯一的卡号计数,如Visual 1所示。

1 个答案:

答案 0 :(得分:1)

在表中以给定的顺序创建以下3个度量和1个自定义列-

1。

distinct_card_number = 
CALCULATE(
    DISTINCTCOUNT(your_table_name[Card Number]),
    ALL(your_table_name)
)

2。。如下创建一个自定义列

card-merchant = your_table_name[Card Number] & "-" & your_table_name[Merchant ID]

3。

distinct_merchant_count = DISTINCTCOUNT(your_table_name[card-merchant])

4。现在创建如下的最终度量-

xRatio = 
IF(
    [distinct_card_number] = [distinct_merchant_count],
    "1",
    [distinct_merchant_count] &"/"& [distinct_card_number]

现在,将vendor_id和xRatio添加到表格视觉中。输出将如下所示-

enter image description here