본문 바로가기
Power BI

Power BI DAX 기초 – 매개 변수 DAX 식에 활용 (구간 이동 평균값)

by 꼬리무늬 2024. 7. 30.
728x90
반응형

목차

     

     

    개요

     

    매개 변수 필드를 지난 포스트에서 동적 범례에 적용했습니다.

     

    매개 변수를 활용하는 다른 예는 매개 변수를 DAX 식에 넣어 측정값이 주어진 변수를 바탕으로 계산을 할 수 있다는 것입니다.

     

    매개 변수는 슬라이서로 제어가 가능하기 때문에, 사용자가 변수 값을 변경할 수 있고 이에 따라 시각적 개체가 동적으로 반응하게 할 수 있습니다.

     

    지난번에 구간 이동 평균값을 계산했는데, 구간별로 측정값을 따로 만들었습니다. 이때 구간을 매개 변수로 만들 수 있다면, 하나의 DAX 식으로 여러 구간을 지원할 수 있는 장점이 있습니다. 

     

     

    매개 변수를 DAX 식에 활용하는 방법을 설명할게요
     
    매개 변수를 설명하는 데 있어서, 아래 포스트의 DAX 식을 활용했습니다. 따라서 먼저 읽어보시면 좋아요. 
     
    Power BI 매개변수 동적 범례 활용하기
     

    Power BI 매개변수 동적 범례 활용하기

    목차   개요 Power BI 대시 보드에서 사용자가 동적으로 시각적 개체의 그래프를 제어할 수 있을 때, 한정된 공간에서 다양한 정보를 제공할 수 있는 장점이 있습니다.  시각적 개체가 동적으로

    brightsomuch.tistory.com

     

    Power BI DAX 기초 – DATESINPERIOD 이동 평균값 구하기
     

    Power BI DAX 기초 – DATESINPERIOD 이동 평균값 구하기

    목차  개요 캘린더 테이블을 이용해 날짜 정보를 갖는 테이블에서 누적값 구하는 DAX 식에 이전 포스트에서 다루었습니다. 조금씩 캘린더 테이블 및 시간 인텔리전스 DAX 함수에

    brightsomuch.tistory.com

     

    매개 변수 (Parameter)

     

    매개 변수 생성

     

    매개 변수는 모델링 메뉴의 새 매개 변수를 통해서 만들 수 있습니다. 이 때 숫자 범위를 선택합니다.

     

     

     

    매개 변수를 만들기 위한 정보를 입력합니다.

     

    이 때, 데이터 형식은 정수/10진수 (실수 표현)를 선택할 수 있는데, 여기에서는 정수만 다룰 예정이라 정수로 선택합니다.

    최솟값,증가, 기본값을 각각 입력합니다. 이 값은 나중에 수정 가능합니다.

     

     

    모든 값 입력이 끝났으면 만들기를 선택합니다.

     

     

    매개 변수 표현식 - Power BI

     

    매개 변수가 어떻게 Power BI에서 표현되는지 살펴보면 아래와 같습니다.

     

    모두 DAX 식으로 표현되었다는 것을 알 수 있습니다. 따라서 이 식이 어떤 의미를 갖고 있는지 이해가 필요합니다.

     

     

    매개 변수 이름에 해당하는 Window Size Month 테이블이 만들어지고, 해당 테이블에 [Window Size Month] 열이 만들어졌는데, 조금 전에 설정한 최솟값, 최댓값 그리고 증가에 따라 값이 생성되었습니다.

     

    그리고 측정값 [값 Window Size Month]는 SELECTEDVALUE 함수로 만들어졌는데, 해당 함수는 슬라이서등에서 선택된 유일한 값을 얻을 수 있는 기능을 갖고 있습니다. 선택된 값이 없거나 유일한 값이 아닐 경우 2를 반환하는데, 이는 조금 전 설정한 초기값과 같습니다.

     

     

    사용된 DAX 함수에 대한 자세한 내용은 아래 페이지에서 볼 수 있습니다. 함수 이름에서 그 동작을 이해하는 어느 정도 이해할 수 있죠.

     

     

    매개 변수 동작 이해

     

    매개 변수가 어떻게 동작하는지 이해하기 위해 시각적 개체 슬라이서와 카드를 페이지에 배치합니다.

     

    슬라이서에는 Window Size Month[Window Size Month], 카드에는 Window Size Month[값 Window Size Month]를 연결합니다.

     

    슬라이서 초기 설정은 모든 값을 다 선택하기 때문에, Window Size Month[값 Window Size Month] 계산 식 SELECTEDVALUE의 유일 값 선택 해당 사항이 아니기 때문에, 2의 값을 갖습니다.

     


     

    슬라이서에 값을 선택해 보도록 하겠습니다.

     

    슬라이서에서 한 가지 값을 선택하면 [Window Size Month]는 정확하게 그 값을 표현합니다. 그렇지 않을 때는 초기값 2를 갖게 되죠.

     


     

    따라서 오해를 줄이기 위해, 슬라이서 설정에서 단일 선택으로 바꾸는 것이 좋습니다이렇게 되면 슬라이서에서 두 개 이상 선택이 불가능합니다

     

     

     

    반응형

     

     

    매개 변수 활용 - DAX 식

     

    위 슬라이서와 카드를 통해서 매개 변수가 어떻게 동작하는지 이해했습니다.

     

    슬라이서에 선택한 매개 변수의 값은 Window Size Month[값 Window Size Month]에 저장된다는 것을 알았기 때문에, DAX 식에서 Window Size Month[값 Window Size Month]를 사용하면 됩니다.

     

    지난번 포스트를 통해 2달로 고정된 구간을 갖는 측정값을 아래와 같이 정의를 했습니다.

     

    Moving Average 2 MONTH =
    CALCULATE (
        AVERAGE ( SHOP[Amount] ),
        DATESINPERIOD (
            'Calendar'[Date],
            MAX ( 'Calendar'[Date] ),
            -2,
            MONTH
        )
    )

     

    DATESINPERIOD 함수 입력 파라미터 '-2' 의미가 MAX(‘Calendar’[Date])에서, 즉 현재 필터 컨텍스트에서 마지막 날짜, 뒤로 2달입니다.여기 숫자에 매개 변수를 사용하면 됩니다.

     


     

    따라서 매개 변수를 활용한 측정값은 아래와 같이 정의할 수 있습니다.

     

    Moving Average Parameter MONTH =
    CALCULATE (
        AVERAGE ( SHOP[Amount] ),
        DATESINPERIOD (
            'Calendar'[Date],
            MAX ( 'Calendar'[Date] ),
            ( -1 ) * 'Window Size Month'[값 Window Size Month],
            MONTH
        )
    )

     


     

    이제 결과를 확인해 봅니다.

     

    매개 변수를 활용해서 값을 슬라이서로 제공할 때와 각각 측정값을 만든 결과와 일치합니다.

     

    Window Size Month = 2

     

    Window Size Month = 4

     

     

     

    마치며

     

    매개 변수는 사용자의 입력을 조건으로 동적으로 반응하는 보고서를 만들 때 아주 유용합니다.

     

    매개 변수를 표현하는 DAX 식을 보면 SELECTEDVALUE 함수가 있는데, 이 함수도 다양하게 활용되고 있습니다.

     

    따라서 매개 변수뿐 아니라 SELECTEDVALUE의 활용에 주목하면 좋을 듯합니다..

     

    728x90
    반응형