出现总和 - 测度 - 幂 bi
Sum of occurrence - measure - power bi
我有数据集:
我检查了每个 id 的出现,如果它是每个 id 的第一次出现,我分配值 0,否则为 1。
如果我创建一个主元 table 和发生的总和,我将得到:
所以,我最终想要的结果是:
我可以将计数行和计数行的总和作为计算列来实现它,但它是静态的,并且一旦我开始使用日期过滤器,该公式就不起作用。有没有办法通过措施来实现?
在下面创建这些 2 措施-
注意:考虑使用列 ticket_id
进行排序
occ =
VAR current_ticket_id = MIN(your_table_name[ticket_id])
VAR current_id = MIN(your_table_name[id])
VAR count_id =
CALCULATE(
COUNTROWS(your_table_name),
FILTER(
ALL(your_table_name),
your_table_name[id] = current_id
&& your_table_name[ticket_id] <= current_ticket_id
)
)
RETURN
IF(
count_id = 1,
0,
1
)
sum of occ =
CALCULATE(
COUNTROWS(your_table_name),
FILTER(
ALLEXCEPT(your_table_name,your_table_name[id]),
[occ] = 1
)
) + 0
这是输出-
我有数据集:
我检查了每个 id 的出现,如果它是每个 id 的第一次出现,我分配值 0,否则为 1。
如果我创建一个主元 table 和发生的总和,我将得到:
所以,我最终想要的结果是:
我可以将计数行和计数行的总和作为计算列来实现它,但它是静态的,并且一旦我开始使用日期过滤器,该公式就不起作用。有没有办法通过措施来实现?
在下面创建这些 2 措施-
注意:考虑使用列 ticket_id
进行排序occ =
VAR current_ticket_id = MIN(your_table_name[ticket_id])
VAR current_id = MIN(your_table_name[id])
VAR count_id =
CALCULATE(
COUNTROWS(your_table_name),
FILTER(
ALL(your_table_name),
your_table_name[id] = current_id
&& your_table_name[ticket_id] <= current_ticket_id
)
)
RETURN
IF(
count_id = 1,
0,
1
)
sum of occ =
CALCULATE(
COUNTROWS(your_table_name),
FILTER(
ALLEXCEPT(your_table_name,your_table_name[id]),
[occ] = 1
)
) + 0
这是输出-