はじめに
こんにちは!株式会社コズムでデータアナリストをしています。岸本です。
今回はBIツールであるPowerBIで昨対比をする際の注意点と解決策をご紹介いたします。
データ分析の際、前年のデータと当年のデータを比較することがあると思います。しかしその対比、果たして本当に同条件でしょうか?
2024年の6月は数値が17日までしか存在しないため圧倒的に数値が減っています...
例えばこんな課題ありませんか
例えばこの記事作成時点(2024/6/18)では同条件で前年対比をするには期間を
- 当年
- 2024/4/1~2024/6/18
- 前年
- 2023/4/1~2023/6/18
と設定する必要があります。
この設定をすることで現段階の前年と比べたKPIなどが正確に評価できます。
このような操作を弊社では「オンハンド」と呼んでいます。
しかし、こんなことありませんか…?
前年ってどんな数値をとっていったの?
先ほどの「オンハンド」の欠点は前年がこの先にとる数値を見ることができないことです。
7月の予算を建てたい!
といった要望に応えられません。
昨対比もしつつ、前年同日以降の数値も見たいとなると…
どちらも見られるようにすれば!?
「オンハンド」の表・グラフも、3月末までの着地の表・グラフどちらも見ることができれば無問題ですね!
2ページに分ける。複数のマトリックスを作る。などやり方は様々ですが弊社で採用しているものは…
スライサーで切り替える!
ずばり!スライサーで切り替えることです!
名付けて 「オンハンドスライサー」!!
スイッチ一つで切り替えることができる優れものです。
いやー我ながら良い機能ですね(笑)
作り方
それではこのスライサーの作り方を説明します!
リレーションなど色々なアプローチがありますが今回はテーブルとDAX関数を用いたものをご紹介します。
1. スライサー用のテーブルを作成
Power Queryにて新しいテーブルを作ります。
列名、テーブル名はお任せします。
これでスライサーに用いるテーブルができます
2. スライサーを作成
a. スライサーのフィールドに先ほど作った列を入れます
ビジュアルの問題で「スライサー(新規)」を使っていますが、通常のスライサーでも構いません。
b. フィルターを用いて項目「OFF」を省きます
※スライサーの「設定の選択を必須にする」や「すべて選択」の表示などはオフにしてください
3. DAX関数を変更する
作成したスライサーで値が動くように設定をします
2022_金沢_降水量 =
VAR onhand = IF(ISBLANK(SELECTEDVALUE('onhandSlicer'[onhand])),DATE(2023,4,1)-1,DATE(2022,MONTH(TODAY()),DAY(TODAY())))
RETURN
CALCULATE(
SUM('金沢'[降水量の合計(mm)]),
'金沢'[年月日] >= DATE(2022,4,1),
'金沢'[年月日] <= DATE(2023,4,1)-1,
'金沢'[年月日] <= onhand
)
これでオンハンドスライサーが選択されてないときはオフに、選択されたときは同月日までの数値がでるようになりました!
まとめ
以上がPowerBIで前年データとの昨対比を簡単に行う方法です。もちろんPowerBIのみではなく他のBIツールやExcelでの分析においても役立つのではないでしょうか?この機能を使えば利便性の高いビューになること間違いなしです!ぜひお試しください!
参考資料
使用したデータセットや参考にした資料、公式ドキュメントなどを紹介します。