タグ別アーカイブ: リレーション

リレーションのツボ~クロスフィルターの方向を単一もしくは双方で調整

【クロスフィルターの方向を調整すると、リレーションの罠を回避することができます】

Power BIを始める時に壁に当たりやすいのが「リレーション」です

リレーションがスパゲティ状態になり、よくわからなくなったことがある人もいらっしゃるのではないでしょうか?

今回の記事ではこのスパゲティ状態を解読する、回避するヒントを「クロスフィルター」の観点で解説したいと思います

尚、当記事は理想のリレーションを作成する方法を解説しようとする意図ではなく、あくまでスパゲティ状態を解読、回避するヒントを「クロスフィルター」に絞って解説しようとしているということを予めご了承お願いします

ポイント

VLOOKUP関数はエクセル関数の中でも代表的な関数です

Power BIのリレーションも基本的には同じ内容です

ただ違う点が1点あります

それは影響範囲です

VLOOKUP関数を使用すると関連するのは2つの表のみです

VLOOKUP関数を使用した表とVLOOKUP関数が参照した表です

Power BIの場合は違います

例えば、次にょうなリレーションがあったとします

上の画像では「店名」と「来客数」はつながっていません

ところが、店名から作成したスライサーを動かすと来客数のマトリックス表も動きます

ここでもう一度、リレーションを確認してみましょう

「店名」と「店長」間は双方向でつながっています

店名から店長に影響を与えることもできるし、店長側から店名に影響を与えることができます

つまり、「店名⇒店長」の関係は存在します

更に「店長」と「来客数」の関係を見てみましょう

「店長」と「来客数」は単一の方向でつながっています

つまり「店長⇒来客数」の関係は存在します

ですので、「店名⇒店長⇒来客数」すなわち「店名来客数」の関係が存在するのです

ここがVLOOKUP関数と違う点です

間接的につながりが表の間で広がっていくようになっています

矛盾の排除

リレーションをいじっていると、思ったようにテーブル(表)の間でリレーションが作成できないケースがあります

それはポイントで解説した「影響の拡大」により矛盾が生じている可能性あります

前述のリレーションを次のように変えてみましょう

「店名」と「店長」間のリレーションを削除し「店名」と「来客数」間でリレーションを作成しました

こうなると、店名と店長のスライサー間ではシンクロが発生しません

ここで、店番と店長間でリレーションを作成しようとすると「破線」になりリレーションが作成できません

これがリレーションの矛盾です

店番と店長間でリレーションができると、来客数へのパス/通り道が2つ存在してしまうからです

ではどうするか?

店名と来客数間のリレーションを削除し、ポイントで解説した内容に戻すことももちろんできます

次の内容では、「店名」と「来客数」のリレーションを残したままで「店名」と「店長」間をリレーションしたいと思います

単一⇒双方向

今、店長と来客数間は単一の方向でクロスフィルターが行われています

方向は「店長⇒来客数」です

こちらを双方向にします

すると来客数を通じて「店番⇒店長」間のリレーションが間接的に成立します

これで2つのスライサーもシンクロします

<まとめ>

今回はリレーションを使用していて陥りやすい箇所を、クロスフィルターの観点で回避する方法を解説しました

エクセルワークシート関数のVLOOKUP関数を使用するのと違い、Power BIでは影響箇所が間接的に飛び火していくのも大きなポイントです

逆に飛び火を利用できるようになると、Power BIを使いやすくなります

そうはいっても、まだまだリレーションの箇所は様々なポイントがまだまだあります

今後、また別な機会で「多対多」のリレーションなども含めて解説していきたいと思います

にほんブログ村 資格ブログ ビジネススキルへ

にほんブログ村

にほんブログ村 IT技術ブログ VBAへ

複雑なリレーションを分かりやすく分解して編集する方法

【Power BIを活用する上で難所の一つであるリレーションの編集を分かりやすい画面で行えるようにする】

Power BIのリレーション画面を一目見て「操作しにくい」と感じたことはないですか?

どうも全体像がつかめなかったりする場合もありますし、表示されているテーブルが多すぎる場合には関係性がよくつかめなかったりします

今回の記事では「モデルビュー」画面をうまく活用して、リレーションを編集しやすい単位でブロックを分けられるようにします

自動レイアウト

今回の記事ではリレーションを分解して編集する方法を解説するのですが、全体をすっきり表示する方法もあります

まず「+ボタン」でモデルビュー画面のページを増やします

ページを増やしたら「自動レイアウト」をクリックします

すると次のGIF動画のように、全体がすっきりした形で表示されます

こちらの画面でリレーションを新規に作成してみます

上のGIF画像では「顧客1」と「売上データ1」との間で新規にリレーションが作成されました

すると「すべてのテーブル」ページでも新規に作成されたリレーションが反映されます

リレーションの分解

ここから本題のリレーションの分解について解説します

まずページを新規に追加します

こちらに分解するリレーションにおいて中心となる「テーブル」を追加します

次に「ページの空白箇所」で右クリックをします

すると次のようなポップアップが表示されます

こちらの「関連テーブルを追加する」をクリックします

すると中心とするテーブルと既にリレーションがあるテーブルが表示されます

新規にリレーションを追加する場合にはテーブルを右から挿入します

逆に上の表示からテーブルを消したい場合にはこちらの「ダイアグラムから削除」をクリックします

なお、こちらで作成したリレーションは「すべてのテーブル」にきちんと反映されます

<まとめ>

今回はPower BIのモデルビュー画面にて、リレーションを分けて編集する方法を解説しました

画面を追加するだけで行えるのでとても便利です

Power BIでうまくリレーションする鍵は「分解」です

ぜひ今回紹介した画面をうまく活用して「分解」上手になりましょう!

にほんブログ村 資格ブログ ビジネススキルへ

にほんブログ村

にほんブログ村 IT技術ブログ VBAへ

リレーション作成~POWER BIでマイダッシュボード作成・初級_4/8~

静から動へ!Power BIを活用して簡単・手軽にデータを分析可視化できるダッシュボードを作成しよう!】

今回は異なるデータ間にリレーションを作成して、一緒の仲間として有効活用できるようにします!

この初級編では最終的には、次のようなレポート/ダッシュボードを作成します

一番左上のグラフは、異なるデータを組み合わせて作成しています

元データはこちらの2つのデータです

グラフの項目である「地域ブロック」と「売上金額」は、元々のデータソースは分かれています

何故、1つのグラフで一緒に使えるかというと前述のリレーションを作成しているからです

では、本題に入っていきましょう

リレーション管理画面

リレーションの作成はリレーション管理画面で行います

但し、リレーションが自動で作成されていることもあります

データを取得した時に「少し遅い」と感じるのは、自動でリレーションを作成しているからです

ですので、リレーションを作成するのは自動で作成されていない時になります

作成方法1

ドロップ・アンド・ドラッグでリレーションを作成することができます

 作成した内容は、リレーション線を右クリックすると「プロパティ」が表示されますので、そちらをクリックすると確認できます

確認画面はパワークエリのマージ画面と一緒です

作成方法2

もう一つの方法は「リレーションシップの管理」から作成する方法です

上の文字をクリックすると、次のような画面がでてきます

こちらで「新規」のリレーションを作成することができます

<まとめ>

今回は「リレーション」を作成する方法を解説しました

こちらの処理を行うと、異なるデータを一緒に取り扱うことができます

ですので、VLOOKUP関数を使う必要もなくなります

但し、これだけではレポート作成の工程に移ることはできません

下の画像を見て下さい

地球儀やΣマークが付いています

本格的なレポート/ダッシュボード作成前に、次回の記事で詳細に解説を行いたいと思います


にほんブログ村