Power BI道場 テーブル操作を極める

Power BI

テーブルはPower BIのデータを管理しています。
下記の「データ」の画面で主に操作します。

この記事ではテーブルの操作方法と結合について解説します。

テーブルの結合は

  • グラフ表示した時の並び替え
  • 4月年度時用の日付階層テーブルの作成

をしたい時によく使います。

少し難しくなるので、初心者はテーブル機能を覚えるのは後で大丈夫です。

「思い通りにグラフを表示したい」
とこだわりがでる中級レベルでは必要な機能です。

この記事では頻出する使い方についても解説していますので、ぜひご覧ください。

基本 テーブルの作成と参照

テーブルの作成方法を3つ紹介

データソースからインポート

ExcelやcsvなどすでにあるデータをPower BIに取り込む方法です。
もっとも一般的なテーブルの作成方法です。

代表的なExcelデータの取り込み手順は次のようになります。

取り込み方法

  1. リボンの中にある「Excel」をクリック
  2. ファイルのウィンドウで「売上.xlsx」ファイルを選択
  3. Excel内のシート一覧から対象のシートを選択
  4. 「読込み」ボタンを押す
  5. 取込みが完了すると右のフィールドパネルに表示されます。

データソースからの取り込みについて詳細を知りたい方は
Power BI道場 データソースの設定:基本と2つの頻出運用を解説
の記事をご参照ください。
ヘッダが認識されない時の対応方法などを書いてあります。

データの入力

データの入力は直接Power BIにデータを登録する方法です。
使い道としてはレポート独自の集計項目を作りたい時があげられます。

データの入力を選択

  1. メニューバーの「ホーム」を選択
  2. 「データの入力」をクリック

データの入力
Excelからの貼り付けを紹介します。
もちろん直接手入力もできます。

  1. Excelにデータを入力して、データを選択状態にする
  2. テーブル部分を選択状態にして、「Ctl+V」もしくは右クリックのメニューからデータを張り付ける
  3. テーブル名をつける
  4. 「読み込み」をクリック

以上で「データの入力」を使ったテーブルの作成は完了です。

新しいテーブル(Dax関数)

「新しいテーブル」からDax関数を使ってデータを作成します。
既に登録済みのテーブルを変換したり、新しいデータを0から作ったりできます。

今年の日付を全部作成するCALENDARAUTOの関数を例に紹介します。

「新しいテーブル」から計算式を登録します

  1. 「データ」をクリックして、データ画面を表示する
  2. メニューバーの「テーブル ツール」を選択
  3. 「新しいテーブル」をクリック
  4. 計算式に
     カレンダー = CALENDARAUTO()
    と入力。
    左の「カレンダー」がテーブル名になります。

以上で「新しいテーブル」を使用したテーブルの作成は完了です。

「新しいテーブル」を作るDax関数で利用頻度が高い2つを紹介します。

DISTINCT:
重複データをなくす関数。
並び替え用のテーブルを作成する時に使います。

DISTINCT(SELECTCOLUMNS('テーブル名',"新項目名1",[項目名1],"新項目名2",[項目名2]))

UNION:
テーブルのデータを追加する。
月次で分かれたテーブルを一つのテーブルまとめたい時に使います。

UNION('テーブル名1','テーブル名2')

テーブルデータの参照方法

Power BIに取り込んだテーブルデータを直接確認する方法です。

複数テーブルの取込み時に、見る場所がわかりにくいので紹介します。

テーブルデータの参照手順

  1. データを選択
  2. 右のフィールドパネルからテーブルを選択

テーブルのコピー

今あるテーブルのコピーを作成します。

例えば、日付の階層テーブルを複数作りたい場合に使います。

  • Dax関数を使って作成
  • Power Queryを使って作成
    参照コピー
    複製コピー

の3通りの方法を紹介します。

Dax関数を使ってテーブルのコピーを作成

「新しいテーブル」からALLSELECTEDのDax関数を使います。
*手順は「新しいテーブル(Dax関数)」から参照してください。

新しいテーブル名 = ALLSELECTED(元のテーブル名)
Power Queryを使ってテーブルのコピーを作成

Power BIはデータの変換にPower Queryというツールを使用しています。
その機能でテーブルのコピーを作る方法です。

コピー手順

  1. 「データの変換」を選択
  2. Power Queryの画面が起動しますので、クエリの中から対象のテーブルの定義を選択します。
  3. 右クリックメニューの「参照」か「複製」を選択します。
  4. 「閉じて適用」をクリックしてPower BIに内容を反映させます。

「3つのコピーの方法は何が違うか?」
気になる方のためにまとめた表を用意しました。
大きな差はないので使いやすい方法でいいかと思います。

コピーする時に「何をベースにするか?」によって方法を選びます。

  • Power BIのテーブルをベース:上段の「Dax関数」
  • Power Queryの定義をベース:中段の「参照」
  • Excelデータをベース    :下段の「複製」

変更時の作業工数にかかわってきます。

テーブルデータのエクスポート

データをExcelやcsvに取り出したい時の対応方法を2つ紹介します。

  • テーブルを右クリックしてデータのコピーを選択
  • テーブルレポートを作成して、データのエクスポートをする

応用 テーブルの結合

2つのテーブルの情報を組み合わせることをテーブルの結合といいます。

経費明細に部署の情報を追加したいとします。
経費明細に直接追加してもいいですが、1万行とか行が多いと入力がたいへんです。
部署情報のテーブルを用意しておけばテーブルの結合で追加できます。

結合の方法は3通りありますので、それぞれ解説します。

  • Power BIで行う
  • Power Queryで行う
  • Dax関数を使う

初めは「Power BIで行う」だけ覚えておけば十分です。

テーブルの結合を深く理解するには「正規化」の知識が必要です。
「正規化」はテーブルの持ち方のルールを定義したものです。
情報システムの開発者には必須の知識です。
正規化 初心者にもわかりやすい説明
で5分から10分ぐらいで読める内容でまとめています。

Power BIで結合を行う

モデルの画面で結合の状態を確認できます

線で結ばれているテーブルが結合しています。

結合の方法1
元データの結合する項目名を同じにしておく。
そうするとデータ取込み時にPower BIが自動で結合してくれます

上図の経費明細と部署の例では、経費明細の申請者が「佐藤」でしたら、「佐藤」を部署テーブルから検索して部署の「営業」を返します。
2つのテーブルを仲介している「申請者」の項目名を同じにします。

結合の方法2
結合したい項目をドラッグ&ドロップする

結合の方法3
行っている内容は「結合の方法2」と同じです。
操作画面が違うのみです。

「6. 結合方法の選択」が追加となります。
「結合の方法2」では自動で設定されます。

  1. リレーションシップの管理を選択
  2. 「新規」or「編集」を作成して、結合を作成する
  3. 元テーブルの「経費明細」を選択
  4. リンク項目の「科目」を選択
  5. 結合テーブルの「科目カテゴリ」を選択し、「科目」の項目を選択する
  6. 結合方法を選択
    結合方法はPower BIがデータをチェックして警告を出します。
    それを元に選択してください。
Power Queryで結合を行う

Power QueryはMicrosoft製品共通のデータ変換アプリケーションです。
Power BIよりも細かい設定ができます。

  • 複数項目を利用した結合
  • 明確な結合条件

を使いたい場合はPower Queryの結合を使用します。

SQLを使い慣れている方はPower Queryで結合を設定した方がわかりやすいです。

「データの変換」をクリックして、Power Queryを開きます

  1. クエリのマージを選択
  2. 結合テーブルと項目を選択
    複数選択するにはCtlキーをクリックしながら項目を選択します。
  3. 結合の種類を選択
    左外部、右外部、内部結合、完全外部結合が選択できます。
    SQLの外部結合と同じ考えです。
Dax関数を使う

Dax関数で結合テーブルを作成できます。

  • 内部結合 :NATURALINNERJOIN
    一致するレコードのみ表示
  • 左外部結合:NATURALLEFTOUTERJOIN
    左のテーブルを全件出力

リンクの項目は2つのテーブルの同じ項目名が自動で使われます。
Power BIでの設定個所はテーブル作成のDax関数の記述を参照してください。

NATURALINNERJOIN(<テーブル1>, <テーブル2>)
NNATURALLEFTOUTERJOIN(<元テーブル>, <付加するテーブル>)

応用 Q&A

テーブルの並べ替え

棒グラフで凡例の並び替えをしたい時の対応方法です。
この対応にはテーブルを作成と結合必要です。

積み上げ棒グラフ(凡例)の並び替え方法」で設定方法を説明していますので、こちらの記事をお読みください。

まとめ

テーブルの作成方法について解説しました。

テーブル作成には次の3つの方法があります。

  • データソースからのインポート
  • データの入力
  • 新しいテーブル(Dax関数)

「データソースからのインポート」を使うのが一番基本です。

テーブルのコピー方法についても3つ紹介しました。
独自の日付階層テーブルを結合したい時に、コピーをよく使います。

テーブルの結合について解説しましたが、ITの前提知識が必要で難しいです。
できる限り結合を使わない方法を使うのがおすすめです。


Power BIについてもっと詳しく知りたい方はPower BI記事のまとめから参照できますので、こちらもご参照ください。

  • Power BIの概要
  • Power BIの機能の使い方
  • サンプルレポートのハンズオン

についてまとめてあります。

タイトルとURLをコピーしました