Power BI DAX 중 VALUES 함수에 대해서 정리하겠습니다. VALUES는 열 이름 또는 테이블 이름을 매개변수로 입력받아 중복이 제거된 고윳값 열(테이블)을 반환하거나 중복 값이 유지된 테이블을 반환하는 함수입니다.
구문 및 설명
구문
열이름 또는 테이블 이름을 매개 변수로 받습니다. 열 이름을 매개 변수로 받는 경우에는 중복 값을 제거한 단일 열 테이블을 반환합니다. 테이블 이름을 매개변수로 받은 경우에는 중복 값이 포함된 테이블을 반환합니다. BLANK열을 포함하여 반환할 수 있습니다.
VALUES(<열이름 또는 테이블 이름>)
설명
- 단일 열을 매개변수로 받은 경우에 단일 열로 반환하지만 테이블로 인식합니다. 반환값은 테이블이자 열이며 단순히 다른 테이블에 속하는 열이 아닙니다.
- 시각적 개체에서 초기 필터 컨텍스트를 유지합니다. 초기 필터 컨텍스트로 사전 필터링된 테이블을 가져와 모든 값의 고유 목록이 포함된 단일 열 테이블을 반환합니다. 초기 필터와 관계없이 측정값을 구하려면 ALL 함수와 조합하여 필터를 제거해야 합니다.
VALUES와 DISTINCT 비교
비교테이블
VALUES | DISTINCT | |
공통점 | 매개변수가 열 인 경우 중복값을 제거한 열 목록을 반환합니다. | 매개변수가 열 인 경우 중복값을 제거한 열 목록을 반환합니다. |
차이점 | 열 이름 또는 테이블 이름만 매개변수로 허용됩니다. | 열 이름 또는 테이블 이름 또는 유효한 테이블 식이 매개변수로 허용됩니다. |
연결된 관련 테이블에서 누락값이 존재하면 BLANK를 표시합니다. | 연결된 관련 테이블에서 누락값이 존재하더라도 BLANK를 표시하지 않습니다. |
예제
아래 그림과 예제를 통해서 DINTINCT와 VALUES의 BLANK 처리 차이점에 대해서 추가 설명하겠습니다. 먼저 Product Lookup 테이블과 Sales by Store라는 데이터 테이블이 1:M의 관계로 연결되어 있습니다. Product lookup 테이블에는 Priduct ID가 12, 13, 14만 존재합니다. 반면에 Sales by Store 테이블에는 Lookup table에 없는 15, 16의 Product ID가 존재합니다. Lookup 테이블에 누락 값이 발생한 것입니다.
다음으로 아래와 같이 DISTINCT를 사용해서 측정값을 만듭니다.
Count of Product ID (DISTINCT) =
COUNTROWS(
DISTINCT(
'Product Lookup'[Product ID]
)
)
다음으로 아래와 같이 VALUES를 사용해서 측정값을 만듭니다.
Count of Product ID (VALUES) =
COUNTROWS(
VALUES(
'Product Lookup'[Product ID]
)
)
리포트에서 테이블 시각화를 만들고 Product Lookup [Product]와 생성한 두 측정값을 넣으면 어떻게 될까요? 결과는 아래와 같은 테이블을 결괏값으로 얻을 수 있습니다. VALUES를 사용한 측정값은 BLANK를 반환하지만 DISTINCT를 사용한 측정값은 BLANK에 대해 반환하지 않습니다.
Count of Product ID (DISTINCT) | Count of Product ID (VALUES) | |
1 | ||
Coffee | 1 | 1 |
Pastry | 1 | 1 |
Tea | 1 | 1 |
VALUES활용법
- 단일 열을 독립적인 유효한 테이블 식으로 반환하여 측정값을 생성할 때 사용합니다.
- Lookup 테이블에서 누락된 값이 있는지 확인할 때 사용합니다.
DISTINCT 활용법
- DISTINCT는 데이터 테이블에서 고유한 값을 뽑아 Lookup 테이블을 만들 때 사용합니다.
정리 소감
VALUES는 독립된 테이블을 반환한다는 개념을 갖게 되었습니다. 또한 BLANK 처리에 대하여 DISTINCT와는 차이점이 있음을 이해할 수 있었습니다. 마지막으로 VALUES를 활용하는 방법에 대해서 이해할 수 있었습니다. Power BI DAX에는 더욱 다양한 함수들이 있는데 앞으로 지속적으로 정리해보겠습니다.
'데이터 분석 및 업무 자동화' 카테고리의 다른 글
Power BI DAX 기초 - Time Intelligence (0) | 2022.03.29 |
---|---|
Power BI DAX 기초 - ALL, ALLEXCEPT, ALLSELECTED (0) | 2022.03.28 |
Power BI 필터 컨텍스트와 행 컨텍스트 살펴보기 (0) | 2022.03.22 |
KB 부동산 월간 시계열 매매종합 시트 파이썬 판다스 불러오기 (0) | 2022.03.21 |
KB부동산 매수우위지수와 매매증감률 파워비아이 상관관계 분석 (0) | 2022.03.19 |
댓글