SlideShare uma empresa Scribd logo
1 de 41
2018.12.22 Power BI 勉強会@東京 #11
初心者さんの
DAX・メジャー
「モヤモヤ」が晴れるまで
Power BI 勉強会@東京 #11
2018.12.22 小室陽子
2018.12.22 Power BI 勉強会@東京 #11 2
自己紹介
小室 陽子(こむろ ようこ)
トヨタコネクティッド株式会社
・管理会計レポーティング→PowerBI
・働き方改革(脱Excel帳票・紙文化)→Sharepoint+PowerApps+Flow
最近になって、Office365がすごく便利に進化していることに気づき、新しい機能をおためし中・・・
2018.12.22 Power BI 勉強会@東京 #11 3
Power BIでのレポート作成の流れ
ソース
あちこち
いろいろ
Power
Query
取得と変換 モデリング
リレーション
設定
列やテーブ
ルの補完
式
式
メジャー
の定義 レポート
ビジュアル
の配置
2018.12.22 Power BI 勉強会@東京 #11 4
Power BIでのレポート作成の流れ
ソース
あちこち
いろいろ
Power
Query
取得と変換 モデリング
リレーション
設定
列やテーブ
ルの補完
式
式
メジャー
の定義 レポート
ビジュアル
の配置
DAX
DAX
2018.12.22 Power BI 勉強会@東京 #11 5
本日のお話
Power BIでのレポート作成に必須の「メジャー」、
どう作ったらいいんだろう?
何もかも分からなさすぎて、リファレンスを読んでも書いてあることが理解できない、そん
な状態から、おおよそのセオリーが理解できて、分からないことを自分で調べて解決でき
るようになるまでに気づいたことをお話したいと思います。
「メジャー」を理解すると、レポート作成がぐっと楽になると思うので、そのポイントと思う点お話します。
2018.12.22 Power BI 勉強会@東京 #11 6
よくあるモヤモヤ
• 計算列とメジャーの違いがわからない
• クイックメジャーをつかったら何となくできたけど、しくみがわからない
• 自分でメジャーを書こうとしたけれど、エラーが出て書けない
• メジャーをつくってみたけど、レポート画面においてみたら挙動不審
2018.12.22 Power BI 勉強会@東京 #11 7
解決ポイント
1.メジャーが「集計式」であることを理解する
2.メジャーと「フィルタ」の関係を理解する
3.「リレーションシップ」の挙動を理解する
+空白(BLANK)を理解する
2018.12.22 Power BI 勉強会@東京 #11
1.メジャーが「集計値式」
であることを理解する
2018.12.22 Power BI 勉強会@東京 #11 9
メジャーとは
データモデル
式
式
メジャー
データが存在し、ストレージされる 式の定義があるだけ
ビジュアル
表示されるときに、
メジャーの式にしたがって
値が計算される
2018.12.22 Power BI 勉強会@東京 #11 10
RPGゲームに例えると
データモデル メジャー ビジュアル
戦士
魔法使い
癒し手
大剣
鎧
杖
薬
…
攻撃力
=関数(体力,スキル,レベル…)
宝箱空ける成否
=関数(対象宝箱難易度,幸運度,乱数…)
戦闘場面
攻撃のターン
宝箱を開ける
イベント
2018.12.22 Power BI 勉強会@東京 #11 11
料理に例えると
データモデル ビジュアル
じゃがいも
タマネギ
にんじん
鶏肉
カレールー
ホワイトソース
塩
胡椒
…
カレーのレシピ
ホワイトシチューのレシピ
カレー
福神漬けぞえ
ホワイトシチュー
とニンジンサラダ
ニンジンサラダのレシピ
メジャー
2018.12.22 Power BI 勉強会@東京 #11 12
メジャー
メジャー
メジャー
例
予定個数SUM = SUM('予定'[個数])
実績個数SUM = SUM('実績'[個数])
個数予実差 = [実績個数SUM]-[予定個数SUM]
予定テーブル個数行
実績テーブル個数行
メジャー メジャー
列の参照
‘テーブル名’[列名]
メジャーの参照
[メジャー名]
‘予定’
‘実績’
2018.12.22 Power BI 勉強会@東京 #11 13
メジャーはテーブルを移動できる
2018.12.22 Power BI 勉強会@東京 #11 14
まとめ
① メジャーとは「集計式」
ビジュアルで表示されるときに計算される
② メジャーはテーブルに紐づかない(外にある)
2018.12.22 Power BI 勉強会@東京 #11
2.メジャーと「フィルタ」
の関係を理解する
2018.12.22 Power BI 勉強会@東京 #11 16
こんな風に思ってませんか?
ビジュアル
合計「900」が、マス目で
分割されて表示されている
2018.12.22 Power BI 勉強会@東京 #11 17
なぜって…
Excelで、「合計値」は「マス目の合計」であることに慣れている
2018.12.22 Power BI 勉強会@東京 #11 18
こんな風に思ってませんか?
ビジュアル
合計「900」が、マス目で
分割されて表示されている
2018.12.22 Power BI 勉強会@東京 #11 19
こんな風に思ってませんか?
ビジュアル
合計「900」が、マス目で
分割されて表示されている
Power BIでは違います!
2018.12.22 Power BI 勉強会@東京 #11 20
Power BIでは「総計」から出発する
‘販売予定‘ テーブル SUM
販売予定個数SUM
= SUM('販売予定'[個数])
メジャー
何を?
‘販売予定個数’ テーブルの
[個数]列
合計する
2018.12.22 Power BI 勉強会@東京 #11 21
[基本]ビジュアルのマス目ごとのフィルタ条件で計算
全行を出発点に、
商品=商品A&地域=名古屋
でフィルタを掛けて残った行を計算
商品Aでフィルタ
掛けた値を表示
する仕様
名古屋でフィルタ
掛けた値を表示する仕様
SUM‘販売予定‘ テーブル
SUM‘販売予定‘ テーブル
2018.12.22 Power BI 勉強会@東京 #11 22
フィルタを調整して総計を出す
メジャー
何を?
[販売予定個数SUM]
というメジャー
販売予定個数TOTAL
= CALCULATE([販売予定個数SUM],ALL('販売予定'))
フィルタを修正して
計算する
フィルタの修正内容は?
‘販売予定’テーブルを
すべての行採用
SUM‘販売予定‘ テーブル
SUM‘販売予定‘ テーブル
2018.12.22 Power BI 勉強会@東京 #11 23
総計を利用して割合%を出す
メジャー
販売予定個数占有率%
= [販売予定個数SUM]/[販売予定個数TOTAL]
販売予定個数占有率%
販売予定個数SUM
販売予定個数TOTAL
2018.12.22 Power BI 勉強会@東京 #11 24
さらにフィルターを掛けてカテゴリ合計を出す
メジャー
販売予定個数地域別 =
CALCULATE (
[販売予定個数SUM],
FILTER (
ALL ( '販売予定' ),
'販売予定'[地域]
= SELECTEDVALUE ( '販売予定'[地域] )
)
)
‘販売予定’テーブルのすべての行を採用した状態を元に
ビジュアルで選ばれている地域の値に等しい行に絞る
計算対象
フィルタを修正して計算する
フィルタの修正内容
※ALLのかわりにALLSELECTEDを使う場合もありますが、
ここでは分かりやすくするため、ALLに統一しています
ビジュアル各行で選ばれている地域
に等しい行の合計
SUM‘販売予定‘ テーブル
2018.12.22 Power BI 勉強会@東京 #11 25
日付フィルタを調整して累計や過去数値を出す
月初日~
ビジュアル各行で選ばれている日付
までの合計
ビジュアル各行で選ばれている日付
の1日前の値
月度累計SUM
SUM 昨日
2018.12.22 Power BI 勉強会@東京 #11 26
まとめ
① メジャーは「総計」を元に、ビジュアルの各マスごとの
条件でフィルタされて計算される
② DAX式でフィルタの掛かり方を修正することができる。
これにより、様々な統計値を出すことができる
統計値を出すには「フィルタ」の使いこなしがとっても大事
まずは考えをしっかり持っておくと、適する関数を探しやすい
2018.12.22 Power BI 勉強会@東京 #11
3.「リレーションシップ」
の挙動を理解する
2018.12.22 Power BI 勉強会@東京 #11 28
いきなりですが、ダメな例
予定と実績を結んでみた
※日付列・担当者列などが隠れていると思って見てください
‘予定’
‘実績’
2018.12.22 Power BI 勉強会@東京 #11 29
いきなりですが、ダメな例
多対多であるという注意書き
2018.12.22 Power BI 勉強会@東京 #11 30
こんな困った症状が出ます
Dが出ない? Cが出ない?
合計がおかしい? 合計がおかしい?
2018.12.22 Power BI 勉強会@東京 #11 31
原因
実績の商品列を
使っている
予定の商品列を
使っている
2018.12.22 Power BI 勉強会@東京 #11 32
原因
実績の商品列を
使っている
予定の商品列を
使っている
‘予定’
ABCしかない
‘実績’ SUM ‘予定’ ‘実績’
予定にある値
しか出ない
実績にある値
しか出ない
SUM
ABDしかない
2018.12.22 Power BI 勉強会@東京 #11 33
原因
合計はフィルタが掛からないので
各全行を計算
実績の商品列を
使っている
予定の商品列を
使っている
予定にある値
しか出ない
実績にある値
しか出ない
‘実績’ SUM ‘予定’ SUM
2018.12.22 Power BI 勉強会@東京 #11 34
「マスタ」を用意する
‘商品マスタ’
★一意の値(重複しない)
★全ての値を含む
リレーションシップ
を掛ける(1対多)
トランザクション
発生した出来事の記録
ディメンション
テーブル
属性が格納される
ファクトテーブル
数値(メジャー)が
格納される
2018.12.22 Power BI 勉強会@東京 #11 35
ダメな例2
マスタを用意してリレーション掛けたのに、
直らないどころかもっと変になっちゃった?
2018.12.22 Power BI 勉強会@東京 #11 36
そりゃそうですよ…
予定の商品列を
使っている
リレーション
が無い!
フィルタ
されない
2018.12.22 Power BI 勉強会@東京 #11 37
解決策 「親」の項目を
使う!
フィルタは
「親」から「子」
へ伝播する
正しくなった!
2018.12.22 Power BI 勉強会@東京 #11 38
「子」の項目は非表示に
非表示
非表示
これを使う
メジャーも整理する
とこうなる
2018.12.22 Power BI 勉強会@東京 #11 39
まとめ
① ディメンジョン(分類)は、一意になる「マスタ」を用意する
② リレーションシップはマスタからトランザクション(出来事の
記録)へ、「1対多」でタコ足状につなぐ
③ フィルターは、リレーションシップの
「親(1)→子(多)」の一方向に伝播する
④ レポートビジュアルには、「親」の項目を使う
2018.12.22 Power BI 勉強会@東京 #11 40
リファレンス
DAXガイド https://dax.guide/
Qiita
 メジャー とはなんだろうと考える
https://qiita.com/PowerBIxyz/items/94e171e05ef7beb83897
 AVERAGEX 関数 (DAX) で 平均を求める
https://qiita.com/PowerBIxyz/items/b1fa63e3502e5acaa1f6
 メジャーの特性 や 見出しの階層に合わせて集計する には
https://qiita.com/PowerBIxyz/items/17d5d531ea074a43867b
 予算実績を集計比較する データモデル パターン
https://qiita.com/PowerBIxyz/items/bb9b6dcc44721d77aad8
BIシステム構築実践入門(青い本)
https://www.amazon.co.jp/dp/4798109312
2018.12.22 Power BI 勉強会@東京 #11
おわり
Good Luck!

Mais conteúdo relacionado

Mais procurados

Power BI Desktop こんな使い方してみた件
Power BI Desktop こんな使い方してみた件Power BI Desktop こんな使い方してみた件
Power BI Desktop こんな使い方してみた件Teruchika Yamada
 
Power BI データフロー 早わかり
Power BI データフロー 早わかりPower BI データフロー 早わかり
Power BI データフロー 早わかりTakeshi Kagata
 
Power Query Online
Power Query OnlinePower Query Online
Power Query OnlineRyoma Nagata
 
Power BI をシステムやアプリ開発と一緒に使うなら…~リアルタイムストリーミングの使い方~
Power BI をシステムやアプリ開発と一緒に使うなら…~リアルタイムストリーミングの使い方~Power BI をシステムやアプリ開発と一緒に使うなら…~リアルタイムストリーミングの使い方~
Power BI をシステムやアプリ開発と一緒に使うなら…~リアルタイムストリーミングの使い方~Yugo Shimizu
 
え?まだフルスクラッチで開発してるの!?Power Platform をフル活用すると普通にシステムができるんですよ
え?まだフルスクラッチで開発してるの!?Power Platform をフル活用すると普通にシステムができるんですよえ?まだフルスクラッチで開発してるの!?Power Platform をフル活用すると普通にシステムができるんですよ
え?まだフルスクラッチで開発してるの!?Power Platform をフル活用すると普通にシステムができるんですよYugo Shimizu
 
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!Teruchika Yamada
 
開発者におくる Power BI を使う時に考えるべきアーキテクチャ ~ データを溜めるのは誰だ? ~
開発者におくる Power BI を使う時に考えるべきアーキテクチャ ~ データを溜めるのは誰だ? ~開発者におくる Power BI を使う時に考えるべきアーキテクチャ ~ データを溜めるのは誰だ? ~
開発者におくる Power BI を使う時に考えるべきアーキテクチャ ~ データを溜めるのは誰だ? ~Yugo Shimizu
 
自社で実運用中!Power Apps・Power Automate 活用事例
自社で実運用中!Power Apps・Power Automate 活用事例自社で実運用中!Power Apps・Power Automate 活用事例
自社で実運用中!Power Apps・Power Automate 活用事例Teruchika Yamada
 
PowerApps に Power BI を埋め込んでみよう!
PowerApps に Power BI  を埋め込んでみよう!PowerApps に Power BI  を埋め込んでみよう!
PowerApps に Power BI を埋め込んでみよう!Teruchika Yamada
 
え!?データがオンプレにあるけどPower BI で BI したいの?
え!?データがオンプレにあるけどPower BI で BI したいの?え!?データがオンプレにあるけどPower BI で BI したいの?
え!?データがオンプレにあるけどPower BI で BI したいの?Yugo Shimizu
 
アンケートを即可視化!~MS Forms ⇒ MS Flow ⇒ Power BI~
アンケートを即可視化!~MS Forms ⇒ MS Flow ⇒ Power BI~アンケートを即可視化!~MS Forms ⇒ MS Flow ⇒ Power BI~
アンケートを即可視化!~MS Forms ⇒ MS Flow ⇒ Power BI~Yugo Shimizu
 
え、毎月手作業でレポートを作ってるの?Power BI を使えば自動化できますよ!
え、毎月手作業でレポートを作ってるの?Power BI を使えば自動化できますよ!え、毎月手作業でレポートを作ってるの?Power BI を使えば自動化できますよ!
え、毎月手作業でレポートを作ってるの?Power BI を使えば自動化できますよ!Yugo Shimizu
 
グラフ構造のデータモデルをPower BIで可視化してみた
グラフ構造のデータモデルをPower BIで可視化してみたグラフ構造のデータモデルをPower BIで可視化してみた
グラフ構造のデータモデルをPower BIで可視化してみたCData Software Japan
 
カッコいい SharePoint モダンサイトを作ろう
カッコいい SharePoint モダンサイトを作ろうカッコいい SharePoint モダンサイトを作ろう
カッコいい SharePoint モダンサイトを作ろうHirofumi Ota
 
Excel取得と変換(power query) 201809東京版
Excel取得と変換(power query) 201809東京版Excel取得と変換(power query) 201809東京版
Excel取得と変換(power query) 201809東京版陽子 小室
 
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)Takuto Wada
 
データモデリング・テクニック
データモデリング・テクニックデータモデリング・テクニック
データモデリング・テクニックHidekatsu Izuno
 
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3 データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3 Hiroshi Ito
 
続・PowerApps に Power BI を埋め込む
続・PowerApps に Power BI を埋め込む続・PowerApps に Power BI を埋め込む
続・PowerApps に Power BI を埋め込むTeruchika Yamada
 
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのかシリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのかAtsushi Nakada
 

Mais procurados (20)

Power BI Desktop こんな使い方してみた件
Power BI Desktop こんな使い方してみた件Power BI Desktop こんな使い方してみた件
Power BI Desktop こんな使い方してみた件
 
Power BI データフロー 早わかり
Power BI データフロー 早わかりPower BI データフロー 早わかり
Power BI データフロー 早わかり
 
Power Query Online
Power Query OnlinePower Query Online
Power Query Online
 
Power BI をシステムやアプリ開発と一緒に使うなら…~リアルタイムストリーミングの使い方~
Power BI をシステムやアプリ開発と一緒に使うなら…~リアルタイムストリーミングの使い方~Power BI をシステムやアプリ開発と一緒に使うなら…~リアルタイムストリーミングの使い方~
Power BI をシステムやアプリ開発と一緒に使うなら…~リアルタイムストリーミングの使い方~
 
え?まだフルスクラッチで開発してるの!?Power Platform をフル活用すると普通にシステムができるんですよ
え?まだフルスクラッチで開発してるの!?Power Platform をフル活用すると普通にシステムができるんですよえ?まだフルスクラッチで開発してるの!?Power Platform をフル活用すると普通にシステムができるんですよ
え?まだフルスクラッチで開発してるの!?Power Platform をフル活用すると普通にシステムができるんですよ
 
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!
 
開発者におくる Power BI を使う時に考えるべきアーキテクチャ ~ データを溜めるのは誰だ? ~
開発者におくる Power BI を使う時に考えるべきアーキテクチャ ~ データを溜めるのは誰だ? ~開発者におくる Power BI を使う時に考えるべきアーキテクチャ ~ データを溜めるのは誰だ? ~
開発者におくる Power BI を使う時に考えるべきアーキテクチャ ~ データを溜めるのは誰だ? ~
 
自社で実運用中!Power Apps・Power Automate 活用事例
自社で実運用中!Power Apps・Power Automate 活用事例自社で実運用中!Power Apps・Power Automate 活用事例
自社で実運用中!Power Apps・Power Automate 活用事例
 
PowerApps に Power BI を埋め込んでみよう!
PowerApps に Power BI  を埋め込んでみよう!PowerApps に Power BI  を埋め込んでみよう!
PowerApps に Power BI を埋め込んでみよう!
 
え!?データがオンプレにあるけどPower BI で BI したいの?
え!?データがオンプレにあるけどPower BI で BI したいの?え!?データがオンプレにあるけどPower BI で BI したいの?
え!?データがオンプレにあるけどPower BI で BI したいの?
 
アンケートを即可視化!~MS Forms ⇒ MS Flow ⇒ Power BI~
アンケートを即可視化!~MS Forms ⇒ MS Flow ⇒ Power BI~アンケートを即可視化!~MS Forms ⇒ MS Flow ⇒ Power BI~
アンケートを即可視化!~MS Forms ⇒ MS Flow ⇒ Power BI~
 
え、毎月手作業でレポートを作ってるの?Power BI を使えば自動化できますよ!
え、毎月手作業でレポートを作ってるの?Power BI を使えば自動化できますよ!え、毎月手作業でレポートを作ってるの?Power BI を使えば自動化できますよ!
え、毎月手作業でレポートを作ってるの?Power BI を使えば自動化できますよ!
 
グラフ構造のデータモデルをPower BIで可視化してみた
グラフ構造のデータモデルをPower BIで可視化してみたグラフ構造のデータモデルをPower BIで可視化してみた
グラフ構造のデータモデルをPower BIで可視化してみた
 
カッコいい SharePoint モダンサイトを作ろう
カッコいい SharePoint モダンサイトを作ろうカッコいい SharePoint モダンサイトを作ろう
カッコいい SharePoint モダンサイトを作ろう
 
Excel取得と変換(power query) 201809東京版
Excel取得と変換(power query) 201809東京版Excel取得と変換(power query) 201809東京版
Excel取得と変換(power query) 201809東京版
 
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
 
データモデリング・テクニック
データモデリング・テクニックデータモデリング・テクニック
データモデリング・テクニック
 
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3 データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
 
続・PowerApps に Power BI を埋め込む
続・PowerApps に Power BI を埋め込む続・PowerApps に Power BI を埋め込む
続・PowerApps に Power BI を埋め込む
 
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのかシリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのか
 

Semelhante a Power BI 初心者さんのDAX・メジャー「モヤモヤ」晴れるまで

え?まだフルスクラッチで開発してるの!? Power Platformをフル活用すると普通にシステムができるんですよ
え?まだフルスクラッチで開発してるの!? Power Platformをフル活用すると普通にシステムができるんですよえ?まだフルスクラッチで開発してるの!? Power Platformをフル活用すると普通にシステムができるんですよ
え?まだフルスクラッチで開発してるの!? Power Platformをフル活用すると普通にシステムができるんですよYugo Shimizu
 
社内のリース車の利用状況を Power BI で可視化してみた
社内のリース車の利用状況を Power BI で可視化してみた社内のリース車の利用状況を Power BI で可視化してみた
社内のリース車の利用状況を Power BI で可視化してみたJunichi Kodama
 
Power BI セミナー @ 名古屋
Power BI セミナー @ 名古屋Power BI セミナー @ 名古屋
Power BI セミナー @ 名古屋Takeshi Kagata
 
Intalio cloud development way in Japanese
Intalio cloud development way in JapaneseIntalio cloud development way in Japanese
Intalio cloud development way in JapaneseDaisuke Sugai
 
Power BI セミナー @ 名古屋 #2
Power BI セミナー @ 名古屋 #2Power BI セミナー @ 名古屋 #2
Power BI セミナー @ 名古屋 #2Takeshi Kagata
 
Pentaho Reporting Tutorial 20140729
Pentaho Reporting Tutorial 20140729Pentaho Reporting Tutorial 20140729
Pentaho Reporting Tutorial 20140729Teruo Kawasaki
 
モデリングの彼方に未来を見た
モデリングの彼方に未来を見たモデリングの彼方に未来を見た
モデリングの彼方に未来を見たHagimoto Junzo
 
Power BI の可能性?見(魅)せてやるよ!!!その本気ってやつをな
Power BI の可能性?見(魅)せてやるよ!!!その本気ってやつをなPower BI の可能性?見(魅)せてやるよ!!!その本気ってやつをな
Power BI の可能性?見(魅)せてやるよ!!!その本気ってやつをなYugo Shimizu
 
Power Platform Summary
Power Platform  SummaryPower Platform  Summary
Power Platform SummaryYugo Shimizu
 
フォルダー系コネクタを使ったほんとの自動化
フォルダー系コネクタを使ったほんとの自動化フォルダー系コネクタを使ったほんとの自動化
フォルダー系コネクタを使ったほんとの自動化Yugo Shimizu
 
【Japan Partner Conference 2019】Society 5.0 “超スマート社会” の実現に向けた日本マイクロソフトの取り組み
【Japan Partner Conference 2019】Society 5.0 “超スマート社会” の実現に向けた日本マイクロソフトの取り組み  【Japan Partner Conference 2019】Society 5.0 “超スマート社会” の実現に向けた日本マイクロソフトの取り組み
【Japan Partner Conference 2019】Society 5.0 “超スマート社会” の実現に向けた日本マイクロソフトの取り組み 日本マイクロソフト株式会社
 
Intalio会社概要とbpmsの特長20100319
Intalio会社概要とbpmsの特長20100319Intalio会社概要とbpmsの特長20100319
Intalio会社概要とbpmsの特長20100319Tomoaki Sawada
 
RPA勉強会 Power BI を学ぶ特別編!
RPA勉強会 Power BI を学ぶ特別編!RPA勉強会 Power BI を学ぶ特別編!
RPA勉強会 Power BI を学ぶ特別編!Yugo Shimizu
 
Power BI 勉強会 #9 Power BI 概要と最近のこと
Power BI 勉強会 #9 Power BI 概要と最近のことPower BI 勉強会 #9 Power BI 概要と最近のこと
Power BI 勉強会 #9 Power BI 概要と最近のことTakeshi Kagata
 
Do you wanna be a V-ROCK star?
Do you wanna be a V-ROCK star?Do you wanna be a V-ROCK star?
Do you wanna be a V-ROCK star?Yugo Shimizu
 
え!? Power BI の画面からデータ更新なんてできるの!?
え!? Power BI の画面からデータ更新なんてできるの!?え!? Power BI の画面からデータ更新なんてできるの!?
え!? Power BI の画面からデータ更新なんてできるの!?Yugo Shimizu
 
クラウドサービスを作っているチームの中で議論していること
クラウドサービスを作っているチームの中で議論していることクラウドサービスを作っているチームの中で議論していること
クラウドサービスを作っているチームの中で議論していることAkiyah
 
社内のリース車の利用状況を Power BI で可視化してみた
社内のリース車の利用状況を Power BI で可視化してみた社内のリース車の利用状況を Power BI で可視化してみた
社内のリース車の利用状況を Power BI で可視化してみたJunichi Kodama
 

Semelhante a Power BI 初心者さんのDAX・メジャー「モヤモヤ」晴れるまで (20)

これからのビジネスソリューションの在り方
これからのビジネスソリューションの在り方これからのビジネスソリューションの在り方
これからのビジネスソリューションの在り方
 
え?まだフルスクラッチで開発してるの!? Power Platformをフル活用すると普通にシステムができるんですよ
え?まだフルスクラッチで開発してるの!? Power Platformをフル活用すると普通にシステムができるんですよえ?まだフルスクラッチで開発してるの!? Power Platformをフル活用すると普通にシステムができるんですよ
え?まだフルスクラッチで開発してるの!? Power Platformをフル活用すると普通にシステムができるんですよ
 
社内のリース車の利用状況を Power BI で可視化してみた
社内のリース車の利用状況を Power BI で可視化してみた社内のリース車の利用状況を Power BI で可視化してみた
社内のリース車の利用状況を Power BI で可視化してみた
 
Power BI セミナー @ 名古屋
Power BI セミナー @ 名古屋Power BI セミナー @ 名古屋
Power BI セミナー @ 名古屋
 
Intalio cloud development way in Japanese
Intalio cloud development way in JapaneseIntalio cloud development way in Japanese
Intalio cloud development way in Japanese
 
Power BI セミナー @ 名古屋 #2
Power BI セミナー @ 名古屋 #2Power BI セミナー @ 名古屋 #2
Power BI セミナー @ 名古屋 #2
 
Pentaho Reporting Tutorial 20140729
Pentaho Reporting Tutorial 20140729Pentaho Reporting Tutorial 20140729
Pentaho Reporting Tutorial 20140729
 
モデリングの彼方に未来を見た
モデリングの彼方に未来を見たモデリングの彼方に未来を見た
モデリングの彼方に未来を見た
 
Power BI の可能性?見(魅)せてやるよ!!!その本気ってやつをな
Power BI の可能性?見(魅)せてやるよ!!!その本気ってやつをなPower BI の可能性?見(魅)せてやるよ!!!その本気ってやつをな
Power BI の可能性?見(魅)せてやるよ!!!その本気ってやつをな
 
Power Platform Summary
Power Platform  SummaryPower Platform  Summary
Power Platform Summary
 
Hataluck
HataluckHataluck
Hataluck
 
フォルダー系コネクタを使ったほんとの自動化
フォルダー系コネクタを使ったほんとの自動化フォルダー系コネクタを使ったほんとの自動化
フォルダー系コネクタを使ったほんとの自動化
 
【Japan Partner Conference 2019】Society 5.0 “超スマート社会” の実現に向けた日本マイクロソフトの取り組み
【Japan Partner Conference 2019】Society 5.0 “超スマート社会” の実現に向けた日本マイクロソフトの取り組み  【Japan Partner Conference 2019】Society 5.0 “超スマート社会” の実現に向けた日本マイクロソフトの取り組み
【Japan Partner Conference 2019】Society 5.0 “超スマート社会” の実現に向けた日本マイクロソフトの取り組み
 
Intalio会社概要とbpmsの特長20100319
Intalio会社概要とbpmsの特長20100319Intalio会社概要とbpmsの特長20100319
Intalio会社概要とbpmsの特長20100319
 
RPA勉強会 Power BI を学ぶ特別編!
RPA勉強会 Power BI を学ぶ特別編!RPA勉強会 Power BI を学ぶ特別編!
RPA勉強会 Power BI を学ぶ特別編!
 
Power BI 勉強会 #9 Power BI 概要と最近のこと
Power BI 勉強会 #9 Power BI 概要と最近のことPower BI 勉強会 #9 Power BI 概要と最近のこと
Power BI 勉強会 #9 Power BI 概要と最近のこと
 
Do you wanna be a V-ROCK star?
Do you wanna be a V-ROCK star?Do you wanna be a V-ROCK star?
Do you wanna be a V-ROCK star?
 
え!? Power BI の画面からデータ更新なんてできるの!?
え!? Power BI の画面からデータ更新なんてできるの!?え!? Power BI の画面からデータ更新なんてできるの!?
え!? Power BI の画面からデータ更新なんてできるの!?
 
クラウドサービスを作っているチームの中で議論していること
クラウドサービスを作っているチームの中で議論していることクラウドサービスを作っているチームの中で議論していること
クラウドサービスを作っているチームの中で議論していること
 
社内のリース車の利用状況を Power BI で可視化してみた
社内のリース車の利用状況を Power BI で可視化してみた社内のリース車の利用状況を Power BI で可視化してみた
社内のリース車の利用状況を Power BI で可視化してみた
 

Power BI 初心者さんのDAX・メジャー「モヤモヤ」晴れるまで

  • 1. 2018.12.22 Power BI 勉強会@東京 #11 初心者さんの DAX・メジャー 「モヤモヤ」が晴れるまで Power BI 勉強会@東京 #11 2018.12.22 小室陽子
  • 2. 2018.12.22 Power BI 勉強会@東京 #11 2 自己紹介 小室 陽子(こむろ ようこ) トヨタコネクティッド株式会社 ・管理会計レポーティング→PowerBI ・働き方改革(脱Excel帳票・紙文化)→Sharepoint+PowerApps+Flow 最近になって、Office365がすごく便利に進化していることに気づき、新しい機能をおためし中・・・
  • 3. 2018.12.22 Power BI 勉強会@東京 #11 3 Power BIでのレポート作成の流れ ソース あちこち いろいろ Power Query 取得と変換 モデリング リレーション 設定 列やテーブ ルの補完 式 式 メジャー の定義 レポート ビジュアル の配置
  • 4. 2018.12.22 Power BI 勉強会@東京 #11 4 Power BIでのレポート作成の流れ ソース あちこち いろいろ Power Query 取得と変換 モデリング リレーション 設定 列やテーブ ルの補完 式 式 メジャー の定義 レポート ビジュアル の配置 DAX DAX
  • 5. 2018.12.22 Power BI 勉強会@東京 #11 5 本日のお話 Power BIでのレポート作成に必須の「メジャー」、 どう作ったらいいんだろう? 何もかも分からなさすぎて、リファレンスを読んでも書いてあることが理解できない、そん な状態から、おおよそのセオリーが理解できて、分からないことを自分で調べて解決でき るようになるまでに気づいたことをお話したいと思います。 「メジャー」を理解すると、レポート作成がぐっと楽になると思うので、そのポイントと思う点お話します。
  • 6. 2018.12.22 Power BI 勉強会@東京 #11 6 よくあるモヤモヤ • 計算列とメジャーの違いがわからない • クイックメジャーをつかったら何となくできたけど、しくみがわからない • 自分でメジャーを書こうとしたけれど、エラーが出て書けない • メジャーをつくってみたけど、レポート画面においてみたら挙動不審
  • 7. 2018.12.22 Power BI 勉強会@東京 #11 7 解決ポイント 1.メジャーが「集計式」であることを理解する 2.メジャーと「フィルタ」の関係を理解する 3.「リレーションシップ」の挙動を理解する +空白(BLANK)を理解する
  • 8. 2018.12.22 Power BI 勉強会@東京 #11 1.メジャーが「集計値式」 であることを理解する
  • 9. 2018.12.22 Power BI 勉強会@東京 #11 9 メジャーとは データモデル 式 式 メジャー データが存在し、ストレージされる 式の定義があるだけ ビジュアル 表示されるときに、 メジャーの式にしたがって 値が計算される
  • 10. 2018.12.22 Power BI 勉強会@東京 #11 10 RPGゲームに例えると データモデル メジャー ビジュアル 戦士 魔法使い 癒し手 大剣 鎧 杖 薬 … 攻撃力 =関数(体力,スキル,レベル…) 宝箱空ける成否 =関数(対象宝箱難易度,幸運度,乱数…) 戦闘場面 攻撃のターン 宝箱を開ける イベント
  • 11. 2018.12.22 Power BI 勉強会@東京 #11 11 料理に例えると データモデル ビジュアル じゃがいも タマネギ にんじん 鶏肉 カレールー ホワイトソース 塩 胡椒 … カレーのレシピ ホワイトシチューのレシピ カレー 福神漬けぞえ ホワイトシチュー とニンジンサラダ ニンジンサラダのレシピ メジャー
  • 12. 2018.12.22 Power BI 勉強会@東京 #11 12 メジャー メジャー メジャー 例 予定個数SUM = SUM('予定'[個数]) 実績個数SUM = SUM('実績'[個数]) 個数予実差 = [実績個数SUM]-[予定個数SUM] 予定テーブル個数行 実績テーブル個数行 メジャー メジャー 列の参照 ‘テーブル名’[列名] メジャーの参照 [メジャー名] ‘予定’ ‘実績’
  • 13. 2018.12.22 Power BI 勉強会@東京 #11 13 メジャーはテーブルを移動できる
  • 14. 2018.12.22 Power BI 勉強会@東京 #11 14 まとめ ① メジャーとは「集計式」 ビジュアルで表示されるときに計算される ② メジャーはテーブルに紐づかない(外にある)
  • 15. 2018.12.22 Power BI 勉強会@東京 #11 2.メジャーと「フィルタ」 の関係を理解する
  • 16. 2018.12.22 Power BI 勉強会@東京 #11 16 こんな風に思ってませんか? ビジュアル 合計「900」が、マス目で 分割されて表示されている
  • 17. 2018.12.22 Power BI 勉強会@東京 #11 17 なぜって… Excelで、「合計値」は「マス目の合計」であることに慣れている
  • 18. 2018.12.22 Power BI 勉強会@東京 #11 18 こんな風に思ってませんか? ビジュアル 合計「900」が、マス目で 分割されて表示されている
  • 19. 2018.12.22 Power BI 勉強会@東京 #11 19 こんな風に思ってませんか? ビジュアル 合計「900」が、マス目で 分割されて表示されている Power BIでは違います!
  • 20. 2018.12.22 Power BI 勉強会@東京 #11 20 Power BIでは「総計」から出発する ‘販売予定‘ テーブル SUM 販売予定個数SUM = SUM('販売予定'[個数]) メジャー 何を? ‘販売予定個数’ テーブルの [個数]列 合計する
  • 21. 2018.12.22 Power BI 勉強会@東京 #11 21 [基本]ビジュアルのマス目ごとのフィルタ条件で計算 全行を出発点に、 商品=商品A&地域=名古屋 でフィルタを掛けて残った行を計算 商品Aでフィルタ 掛けた値を表示 する仕様 名古屋でフィルタ 掛けた値を表示する仕様 SUM‘販売予定‘ テーブル SUM‘販売予定‘ テーブル
  • 22. 2018.12.22 Power BI 勉強会@東京 #11 22 フィルタを調整して総計を出す メジャー 何を? [販売予定個数SUM] というメジャー 販売予定個数TOTAL = CALCULATE([販売予定個数SUM],ALL('販売予定')) フィルタを修正して 計算する フィルタの修正内容は? ‘販売予定’テーブルを すべての行採用 SUM‘販売予定‘ テーブル SUM‘販売予定‘ テーブル
  • 23. 2018.12.22 Power BI 勉強会@東京 #11 23 総計を利用して割合%を出す メジャー 販売予定個数占有率% = [販売予定個数SUM]/[販売予定個数TOTAL] 販売予定個数占有率% 販売予定個数SUM 販売予定個数TOTAL
  • 24. 2018.12.22 Power BI 勉強会@東京 #11 24 さらにフィルターを掛けてカテゴリ合計を出す メジャー 販売予定個数地域別 = CALCULATE ( [販売予定個数SUM], FILTER ( ALL ( '販売予定' ), '販売予定'[地域] = SELECTEDVALUE ( '販売予定'[地域] ) ) ) ‘販売予定’テーブルのすべての行を採用した状態を元に ビジュアルで選ばれている地域の値に等しい行に絞る 計算対象 フィルタを修正して計算する フィルタの修正内容 ※ALLのかわりにALLSELECTEDを使う場合もありますが、 ここでは分かりやすくするため、ALLに統一しています ビジュアル各行で選ばれている地域 に等しい行の合計 SUM‘販売予定‘ テーブル
  • 25. 2018.12.22 Power BI 勉強会@東京 #11 25 日付フィルタを調整して累計や過去数値を出す 月初日~ ビジュアル各行で選ばれている日付 までの合計 ビジュアル各行で選ばれている日付 の1日前の値 月度累計SUM SUM 昨日
  • 26. 2018.12.22 Power BI 勉強会@東京 #11 26 まとめ ① メジャーは「総計」を元に、ビジュアルの各マスごとの 条件でフィルタされて計算される ② DAX式でフィルタの掛かり方を修正することができる。 これにより、様々な統計値を出すことができる 統計値を出すには「フィルタ」の使いこなしがとっても大事 まずは考えをしっかり持っておくと、適する関数を探しやすい
  • 27. 2018.12.22 Power BI 勉強会@東京 #11 3.「リレーションシップ」 の挙動を理解する
  • 28. 2018.12.22 Power BI 勉強会@東京 #11 28 いきなりですが、ダメな例 予定と実績を結んでみた ※日付列・担当者列などが隠れていると思って見てください ‘予定’ ‘実績’
  • 29. 2018.12.22 Power BI 勉強会@東京 #11 29 いきなりですが、ダメな例 多対多であるという注意書き
  • 30. 2018.12.22 Power BI 勉強会@東京 #11 30 こんな困った症状が出ます Dが出ない? Cが出ない? 合計がおかしい? 合計がおかしい?
  • 31. 2018.12.22 Power BI 勉強会@東京 #11 31 原因 実績の商品列を 使っている 予定の商品列を 使っている
  • 32. 2018.12.22 Power BI 勉強会@東京 #11 32 原因 実績の商品列を 使っている 予定の商品列を 使っている ‘予定’ ABCしかない ‘実績’ SUM ‘予定’ ‘実績’ 予定にある値 しか出ない 実績にある値 しか出ない SUM ABDしかない
  • 33. 2018.12.22 Power BI 勉強会@東京 #11 33 原因 合計はフィルタが掛からないので 各全行を計算 実績の商品列を 使っている 予定の商品列を 使っている 予定にある値 しか出ない 実績にある値 しか出ない ‘実績’ SUM ‘予定’ SUM
  • 34. 2018.12.22 Power BI 勉強会@東京 #11 34 「マスタ」を用意する ‘商品マスタ’ ★一意の値(重複しない) ★全ての値を含む リレーションシップ を掛ける(1対多) トランザクション 発生した出来事の記録 ディメンション テーブル 属性が格納される ファクトテーブル 数値(メジャー)が 格納される
  • 35. 2018.12.22 Power BI 勉強会@東京 #11 35 ダメな例2 マスタを用意してリレーション掛けたのに、 直らないどころかもっと変になっちゃった?
  • 36. 2018.12.22 Power BI 勉強会@東京 #11 36 そりゃそうですよ… 予定の商品列を 使っている リレーション が無い! フィルタ されない
  • 37. 2018.12.22 Power BI 勉強会@東京 #11 37 解決策 「親」の項目を 使う! フィルタは 「親」から「子」 へ伝播する 正しくなった!
  • 38. 2018.12.22 Power BI 勉強会@東京 #11 38 「子」の項目は非表示に 非表示 非表示 これを使う メジャーも整理する とこうなる
  • 39. 2018.12.22 Power BI 勉強会@東京 #11 39 まとめ ① ディメンジョン(分類)は、一意になる「マスタ」を用意する ② リレーションシップはマスタからトランザクション(出来事の 記録)へ、「1対多」でタコ足状につなぐ ③ フィルターは、リレーションシップの 「親(1)→子(多)」の一方向に伝播する ④ レポートビジュアルには、「親」の項目を使う
  • 40. 2018.12.22 Power BI 勉強会@東京 #11 40 リファレンス DAXガイド https://dax.guide/ Qiita  メジャー とはなんだろうと考える https://qiita.com/PowerBIxyz/items/94e171e05ef7beb83897  AVERAGEX 関数 (DAX) で 平均を求める https://qiita.com/PowerBIxyz/items/b1fa63e3502e5acaa1f6  メジャーの特性 や 見出しの階層に合わせて集計する には https://qiita.com/PowerBIxyz/items/17d5d531ea074a43867b  予算実績を集計比較する データモデル パターン https://qiita.com/PowerBIxyz/items/bb9b6dcc44721d77aad8 BIシステム構築実践入門(青い本) https://www.amazon.co.jp/dp/4798109312
  • 41. 2018.12.22 Power BI 勉強会@東京 #11 おわり Good Luck!

Notas do Editor

  1. PowerQuery(インポート) →テーブル(DAXで列やテーブルを補足、リレーション) →メジャー(DAXで計算を定義する) →ビジュアルに配置 インポート コネクタPowerQuery データモデル リレーションシップ/型/列やテーブルの追加 メジャーの設定 メジャー レポート ビジュアル
  2. PowerQuery(インポート) →テーブル(DAXで列やテーブルを補足、リレーション) →メジャー(DAXで計算を定義する) →ビジュアルに配置 インポート コネクタPowerQuery データモデル リレーションシップ/型/列やテーブルの追加 メジャーの設定 メジャー レポート ビジュアル
  3. テーブル