如何在 PowerBI 中为数组创建动态度量或列?
How can I create a dynamic measure or column for an array in PowerBI?
Excel Example
我正在尝试在 PowerBI 中重新创建一个与我在 excel 中所做的类似的图表,如下所示:
我这里有每天的收入。该图表显示收入超过固定金额(100、200 等)的天数百分比。
在 PowerBI 中,我知道如何通过定义列来重新创建图表所基于的 table,但它不是动态的。我无法应用过滤器来更改列值。
我知道我可以将过滤器应用于度量,但是当我尝试将公式复制为度量时出现错误,我认为这是由于公式试图 return 值数组。
这是我的固定列版本的公式:
table2 column = countx(
filter(
DayRevenueTable,
[Revenue]>Table2[DayRevenueExceeding])
,[Day])
/Total
假设您的 table 看起来像这样:
Date
Revenue
04 January 2022
102
11 January 2022
162
17 January 2022
180
02 January 2022
185
12 January 2022
203
05 January 2022
278
01 January 2022
353
16 January 2022
449
14 January 2022
500
06 January 2022
515
08 January 2022
582
10 January 2022
600
03 January 2022
618
09 January 2022
626
13 January 2022
626
15 January 2022
706
18 January 2022
765
07 January 2022
895
您需要先用您的固定值创建一个 table。基本上与创建参数的概念相同。
使用 table 作为参考,您可以围绕 Fixed Values[Value]
创建计算。
DAX:固定值
Fixed Values = GENERATESERIES(100,1000,100)
DAX:收入超过金额的天数
Days When Revenue Exceeds Amount =
VAR CurrentFixedValue =
SELECTEDVALUE ( 'Fixed Values'[Value] )
VAR CountValues =
CALCULATE (
COUNTROWS ( 'Table' ),
'Table'[Revenue] < ( CurrentFixedValue + 100 )
)
VAR AllValues =
CALCULATE ( COUNTROWS ( 'Table' ), ALLSELECTED ( 'Table' ) )
VAR Calc =
DIVIDE ( CountValues, AllValues )
RETURN
Calc
输出
Excel Example
我正在尝试在 PowerBI 中重新创建一个与我在 excel 中所做的类似的图表,如下所示:
我这里有每天的收入。该图表显示收入超过固定金额(100、200 等)的天数百分比。
在 PowerBI 中,我知道如何通过定义列来重新创建图表所基于的 table,但它不是动态的。我无法应用过滤器来更改列值。
我知道我可以将过滤器应用于度量,但是当我尝试将公式复制为度量时出现错误,我认为这是由于公式试图 return 值数组。
这是我的固定列版本的公式:
table2 column = countx(
filter(
DayRevenueTable,
[Revenue]>Table2[DayRevenueExceeding])
,[Day])
/Total
假设您的 table 看起来像这样:
Date | Revenue |
---|---|
04 January 2022 | 102 |
11 January 2022 | 162 |
17 January 2022 | 180 |
02 January 2022 | 185 |
12 January 2022 | 203 |
05 January 2022 | 278 |
01 January 2022 | 353 |
16 January 2022 | 449 |
14 January 2022 | 500 |
06 January 2022 | 515 |
08 January 2022 | 582 |
10 January 2022 | 600 |
03 January 2022 | 618 |
09 January 2022 | 626 |
13 January 2022 | 626 |
15 January 2022 | 706 |
18 January 2022 | 765 |
07 January 2022 | 895 |
您需要先用您的固定值创建一个 table。基本上与创建参数的概念相同。
使用 table 作为参考,您可以围绕 Fixed Values[Value]
创建计算。
DAX:固定值
Fixed Values = GENERATESERIES(100,1000,100)
DAX:收入超过金额的天数
Days When Revenue Exceeds Amount =
VAR CurrentFixedValue =
SELECTEDVALUE ( 'Fixed Values'[Value] )
VAR CountValues =
CALCULATE (
COUNTROWS ( 'Table' ),
'Table'[Revenue] < ( CurrentFixedValue + 100 )
)
VAR AllValues =
CALCULATE ( COUNTROWS ( 'Table' ), ALLSELECTED ( 'Table' ) )
VAR Calc =
DIVIDE ( CountValues, AllValues )
RETURN
Calc