Ваш вопрос довольно неясен, поэтому мне придется сделать некоторые предположения.
Я интерпретирую ваш вопрос, как выполнить разность наборов в Power BI.
Предположим, у нас есть таблицы A
и B
следующим образом
Table A: Table B:
Column Column
------ ------
1 2
2 4
3
4
5
и мы хотим получить разность наборов A - B
Column
------
1
3
5
Вы можете сделать это в DAX или на языке Power Query M:
M язык
Вы можете сделать это, используя left anti join . Код М выглядит так:
= Table.NestedJoin(A,{"Column"},B,{"Column"},"B",JoinKind.LeftAnti)
Удалите новый столбец "B", и все готово.
Другой способ - использовать функцию Table.SelectRows
:
= Table.SelectRows(A, each not List.Contains(B[Column], _[Column]))
DAX язык
Вам просто нужно отфильтровать таблицу A
, чтобы исключить значения в таблице B
:
FILTER(A, NOT( A[Column] IN VALUES( B[Column] ) ) )
Или с использованием более старого синтаксиса CONTAINS
вместо IN
:
FILTER(A, NOT( CONTAINS( VALUES( B[Column] ), B[Column], A[Column] ) ) )
Примечание: безусловно, можно использовать R-сценарии в среде Power Query, как указывает Вестланд. Как указывает Хуан, в настоящее время невозможно использовать сценарии R в выражении DAX.