【Power BI】割合をDAXで表現する方法
こんにちは!MJです。
今回はPower BIのDAXを使って割合を表現する方法をご紹介します。
サンプルデータの紹介
今回使用するデータは、家具店で品目別の販売量を記録したデータです。
Product | Sale |
ベッド | 36000 |
マットレス | 20000 |
布団 | 5800 |
ソファ | 18000 |
このデータを使って品目別の販売金額の割合を求めてみます。
DAXの紹介
販売金額の割合を表現するには、まず新しいメジャーを作成します。下記の「新しいメジャー」をクリックします。
入力欄には、以下の式を入力します。
割合% = DIVIDE( SUM('Sales'[Sale]) , CALCULATE( SUM(Sales[Sale]) , ALL('Sales') ) )
上記の式を分解すると、以下の通りです。
DIVIDE関数は、②を①で割り算する関数です。
① = Salesテーブルの販売量の合計(フィルタが適用されます)
② = Salesテーブルの販売量全体の合計(ALL関数によってすべてのフィルタが解除されます)
さらに、CALCULATE関数について説明すると、関数の形は以下の通りです。
CALCULATE(<expression>[, <filter1> [, <filter2> [, …]]])
<expression>は計算する式であり、式の後に複数のフィルタの定義ができる関数です。
したがって、②では<expression> = SUM(Sales[Sale]) 販売量の合計に<filter> = ALL(’Sales’) 全体の ‘Sales’テーブルを指定します。という意味で、すなわちすべてのフィルタを無視してすべての行の値を合計するという意味です。
ビジュアライゼーションの設定
DIVIDE関数の一般的な結果は小数点第2位までの実数を表すため、書式変更を通じてパーセンテージを出力します。
結果は以下のグラフのようになります。
このように、品目にフィルタを適用しても、全体の値に対しての割合を求めることができます。
※この記事はPower BI Desktop 2024年3月バージョンで作成しました。