카테고리 없음

[파워비아이] DAX 함수란

파피봉 2024. 4. 25. 23:18

Power BI Desktop에서는 로드된 데이터모델(Date Model)에 DAX 구문을 이용해 수식을 작성할 수 있습니다.

DAX란 수식 또는, 식에서 하나 이상의 값을 계산하고 반환하는데 사용할 수 있는 함수, 연산자 및 상수 컬렉션입니다. 여기는 날짜 및 시간, 시간 인텔리전스, 정보, 논리, 수학, 통계, 필터 함수와 같은 범주 함수가 포함되어 있습니다. 파워 피벗이나 Anaylsis Services 테이블 형식 모델 등의 Microsoft BI 도구에서 사용하는 수식으로 Power BI Desktop에서는 계산 열과 측정값으로 수식을 작성 할 수 있습니다.


DAX (Data Analysis Expressions) 구문

측정값 이름 = 함수(테이블 이름[열 이름])

총 수량 = SUM('판매'[수량])

 

1) 측정값/계산 열 이름: 측정값 및 계산 열 이름으로 공백 포함 가능

2) 등호 연산자(=) : 수식의 시작

3) DAX 함수 : SUM, AVERAGE, COUNT, SUMX, CALCULATE 등 함수 사용

4) 괄호() : DAX 함수에서 하나 이상의 인수를 포함하는 식을 묶어서 사용

5) 테이블명 :참조되는 테이블 이름으로 작은 따옴표('')로 묶어서 사용

6) 필드명 : 정규화된 테이블에서 참조되는 열로 대괄호([])로 묶어서 사용

 

참고로 수익 입력줄을 다룰 때 다음과 같은 치트기를 사용하면 좀 더 쉽게 작업할 수 있습니다.

([Ctrl]+[+],[-] : 수식 이렵줄의 글자 크기 확대/축소, [Shift]+[Enter] : 수식줄 바꿈)


기본 DAX 함수

출처 "Power BI 공방" in NAVER Blog

 

날짜 정보사용 할 때 다음과 같은 DAX 함수를 사용합니다.

- Year(<date>) : 연도를 4자리 정수로 표시,

- Month(<date>) : 1~12까지 월을 숫자로 표시

- Day(<date>) : 1~31까지 일을 숫자로 표시

- Formal(<value>,"formal-string") : 지정된 형식에 따라 값을 텍스트로 표시

 

SUM함수는 열에 있는모든 숫자의 합계를 반환합니다.

SUM<column> : 합계를 계산할 숫자가 포함된 열

 

AVERAGE 함수는 모든 숫자의 평균을 반환합니다.

AVERAGE<column> : 평균을 계산할 숫자가 포함된 열

 

COUNT 함수는 열에 있는 모든 숫자의 개수를 반환합니다.

COUNT <column>: 숫자 개수를 반환할 열

 

RELATED 함수는 다른 테이블에서 관련 값을 반환합니다.

RELATED<column> : 검색하려는 값이 포함된 열

 

DIVIDE 함수는 나누기 수행 후 0 으로 나누기에 대해 대체 결과 또는 BLANK ()를 반환합니다.

DIVIDE <numerator> 피제수 또는 나뉘는 수 , <denominator>제수 또는 나누는 수 , <alterateresult>0으로 나누기에서 오류가 발생하는 경우반환되는 값으로 생략하면 BLANK()로 반환

 

CALCULATE 함수는 조건에 따라 데이터를 필터링하여 계산을 수행할 수 있습니다. 이 함수는 매우 강력하여 다양한 데이터 시나리오에서 유연하게 사용될 수 있습니다.

CALCULATE<expression>,<filter1>,<filter2> , ... : 표현식을 계산하고 하나 이상의 필터를 적용

 

IF 함수를 사용하면 특정 조건에 따라 다른 결과를 반환할 수 있습니다. 이는 데이터 분석시 조건부 로직을 적용할 때 유용합니다.

IF<Conition>,<result_if_true>,<resulte_if_false> : 조건에 따라 참 또는 거짓 결과 반환

 

이처럼 DAX함수는 Power BI에서 강력한 데이터 처리와 분석 도구로서의 역할을 수행합니다. 그리고 다양한 비즈니스 요구와 질문에 답할 수 있는 통찰력을 제공합니다. 여러분들이 실무를 하실 때 깊이있는 데이터 분석이 필요하면 DAX함수 학습은 필수적입니다. 엑셀로는 한계가 있기 때문에 엑셀이 어느정도 익숙한 분이시라면 가급적 빨리 Power BI 로 넘어오시는 걸 추천 드립니다. 감사합니다.