Power Query を使用してデータを変換する

Power Queryを使用すると、さまざまなデータ ソースに接続し、データを目的の形状に変換できます。

この記事では、次を検出して、Power Queryを使用してクエリを作成する方法について説明します。

  • Power Queryでのデータの取得エクスペリエンスのしくみ。
  • Power Queryユーザー インターフェイスを活用する方法。
  • データのグループ化やマージなどの一般的な変換を実行する方法。

Power Queryを初めて使用する場合は、開始する前にPower BIの無料試用版にサインアップできます。 Power BI データフローを使用して、この記事で説明する Power Query Online エクスペリエンスを試すことができます。

また、無料でPower BIデスクトップをダウンロード

この記事の例では、 Northwind OData フィードに接続して使用します。

OData フィードに接続する

Power Queryを含む各Microsoft製品からデータを取得する場所の詳細については、「Where to get data」を参照してください。

開始するには、データの取得エクスペリエンスから OData フィード コネクタを見つけます。 右上隅の検索バーで OData を検索できます。

OData コネクタが強調された [データの取得] エクスペリエンスの [データ ソースの選択] ページのスクリーンショット。

このコネクタを選択すると、接続設定と資格情報が画面に表示されます。

  • [URL] には、Northwind OData フィードの URL https://services.odata.org/V4/Northwind/Northwind.svc/を入力します。
  • オンプレミス データ ゲートウェイの場合は、なしのままにします。
  • 認証の種類の場合は、匿名のままにします。

[ 次へ ] ボタンを選択します。

ナビゲーターが開き、データ ソースから接続するテーブルを選択します。 [Customers] テーブルを選択してデータのプレビューを読み込み、[データの変換] を選択します。

 Customers テーブルが強調されたPower Query ナビゲーター ページのスクリーンショット。

その後、ダイアログは Customers テーブルのデータを Power Query エディターに読み込みます。

データへの接続、認証方法の指定、接続する特定のオブジェクトまたはテーブルの選択のエクスペリエンスは、 データの取得エクスペリエンスと呼ばれます。 このエクスペリエンスの詳細については、 データの取得の概要 に関する記事を参照してください。

OData フィード コネクタの詳細については、 OData フィードに関するページを参照してください。

Power Query エディターのコンポーネント

ヒント

Power BIでPower Query エディターを見つけるには、[クエリ] で Transform data を選択します。

データ変換ボタンが強調表示されたPower BIのホーム バーのスクリーンショット。

Power Query エディターは、Power Queryユーザー インターフェイスを表します。 このユーザー インターフェイスでは、クエリの追加または変更、クエリ ステップへの説明のグループ化または追加によるクエリの管理、異なるビューを使用したクエリとその構造の視覚化を行うことができます。 Power Queryユーザー インターフェイスには、5 つの異なるコンポーネントがあります。 次の表の番号は、スクリーンショットの番号付き吹き出しに対応しています。

各コンポーネントのアウトラインと番号が付いたPower Queryユーザー インターフェイスのスクリーンショット

# コンポーネント Description
1 リボン リボン ナビゲーション エクスペリエンスでは、変換を追加したり、クエリのオプションを選択したり、さまざまなリボン ボタンにアクセスしてさまざまなタスクを完了したりするための複数のタブが用意されています。
2 [クエリ] ウィンドウ 利用可能なすべてのクエリの一覧。
3 現在のビュー メイン作業ビュー。既定では、クエリのデータのプレビューが表示されます。 データ プレビュー ビューと共に ダイアグラム ビュー を有効にすることもできます。 ダイアグラム ビューを維持したまま、 スキーマ ビュー とデータ プレビュー ビューを切り替えることもできます。
4 クエリ設定 クエリ名、クエリ ステップ、さまざまなインジケーターなど、関連情報を含む現在選択されているクエリのビュー。
5 ステータス バー クエリに関する重要な情報 (実行時間、列と行の合計、処理状態など) を示すバー。 このバーには、現在のビューを変更するためのボタンも含まれています。

スキーマとダイアグラム ビューは現在、Power Query Online でのみ使用できます。

Power Query エディターでデータを変換する前に、UI ウィンドウを展開または折りたたみ、ビューを切り替える方法を理解しておくのに役立ちます。 適切なウィンドウを選択すると、最も重要なビューに集中できます。 次のセクションでは、Power Query ユーザー インターフェイスで使用できるウィンドウとビューについて説明します。

Power Query エディターのリボン

リボンは、Power Query エディターで実行できるほとんどの変換とアクションを見つけるコンポーネントです。 これには複数のタブがあり、その値は製品の統合に依存します。 各タブには特定のボタンとオプションが用意されており、その一部はPower Queryエクスペリエンス全体で冗長になる場合があります。 これらのボタンとオプションを使用すると、必要な変換やアクションに簡単にアクセスできます。

Power Query ユーザー インターフェイスの [ホーム] タブの標準リボン ビューのスクリーンショット。

Power Queryインターフェイスは応答性が高く、画面の解像度を調整して最適なエクスペリエンスを表示しようとします。 コンパクト バージョンのリボンを使用するシナリオでは、リボンの右下隅に折りたたみボタンもあり、コンパクト なリボンに切り替えることができます。

Power Query ユーザー インターフェイスの [ホーム] タブのコンパクト リボン ビューのスクリーンショット。

リボンの右下隅にある展開アイコンを選択すると、標準のリボン ビューに戻ることができます。

Power Query ペインを展開および折りたたみます

Power Queryユーザー インターフェイス全体で、特定のビューやセクションを折りたたんだり展開したりするのに役立つアイコンがあることに気付くかもしれません。 たとえば、[クエリ] ウィンドウの右上隅にアイコンがあり、選択するとクエリ ペインが折りたたまれて、再度選択されたときにペインが展開されます。

クエリ ペインを折りたたんで展開するために使用する [クエリ] ペインのアイコンを強調するスクリーンショット。

Power Query ビューを切り替える

Power Queryユーザー インターフェイスで特定のペインやセクションを折りたたむことができるだけでなく、表示されるビューを切り替えることもできます。 ビューを切り替えるには、リボンの View タブに移動します。このタブには、Preview グループと Layout グループがあり、Power Queryユーザー インターフェイスの外観を制御します。

これらのオプションをすべて試して、最も快適に作業できるビューとレイアウトを見つけることをお勧めします。 たとえば、リボンから [スキーマ] ビュー を選択します。

Power Query リボンの [ビュー] タブ内にある [スキーマ ビュー] ボタンを強調するスクリーンショット

ステータス バーの右側には、ダイアグラム、データ、およびスキーマ ビューのアイコンも含まれています。 これらのアイコンを使用して、ビュー間を変更できます。 これらのアイコンを使用して、選択したビューを有効または無効にすることもできます。

[クエリ] ペインが折りたたまれており、現在のビューがスキーマ ビューに切り替え、スキーマ ビュー アイコンが強調されているスクリーンショット。

Power Queryのスキーマ ビューとは

スキーマ ビューでは、列名やデータ型など、テーブルのスキーマのコンポーネントのみを簡単に操作できます。 スキーマ関連のアクションを実行する場合は、スキーマ ビューをお勧めします。 これらのアクションには、列の削除、列の名前変更、列データ型の変更、列の並べ替え、列の複製があります。

スキーマ ビューの詳細については、「スキーマ ビューの使用」を 参照してください

たとえば、スキーマ ビューで、[ 受注 ] 列と [ CustomerDemographics ] 列の横にあるチェック マークを選択し、リボンから [ 列の削除 ] アクションを選択します。 この選択により、変換が適用され、データからこれらの列が削除されます。

[注文] 列と [CustomerDemographics] 列が選択され、[列の削除] オプションが強調されているスクリーンショット。

Power Queryのダイアグラム ビューとは

データ プレビュー ビューに戻り、ダイアグラム ビューでデータとクエリのより視覚的な視点を使用できるようになりました。

ダイアグラム ビューとデータ プレビュー ビュー アイコンを強調するスクリーンショット。

ダイアグラム ビューを使用すると、クエリの構造と、プロジェクト内の他のクエリとの対話方法を視覚化できます。 クエリの各ステップには、使用された変換を認識するのに役立つ個別のアイコンがあります。 行は、依存関係を示すためにステップを接続します。 データ プレビュー ビューとダイアグラム ビューの両方が有効になっているため、ダイアグラム ビューはデータ プレビューの上に表示されます。

Power Query ワークスペースのダイアグラムビューとデータプレビューを示すスクリーンショット

ダイアグラム ビューの詳細については、「 ダイアグラム ビュー」を参照してください。

ダイアグラム ビューで国/地域別に顧客をグループ化する

国/地域ごとの顧客数をカウントするには、変換 でグループ を追加します。 ダイアグラム ビューが有効になっている場合は、プラス記号を選択します。 クエリに追加する新しい変換を検索できます。 グループ化を検索し、変換操作を選択します。

ダイアグラム ビューでのグループの検索を含むスクリーンショット。

[ グループ化 ] ダイアログが表示されます。 Group by 操作を国/地域でグループ化し、各国/地域の顧客行数をカウントするように設定できます。

  1. [基本] ラジオ ボタンは選択したままにします。
  2. グループ化する 国/地域 を選択します。
  3. 新しい列名として 「Customers 」と入力し、操作として [行の数] を選択します。

顧客のデータが入力された基本的な [グループ] ダイアログのスクリーンショット。

[ OK] を 選択して操作を実行します。 データ プレビューが更新され、国/地域別の顧客の合計数が表示されます。

[ グループ化 ] ダイアログを起動する別の方法として、リボンの [ グループ化 ] ボタンを使用するか、[ 国/地域 ] 列を長押し (右クリック) します。

リボンの [グループ化] ボタンと[国/地域] 列メニューの [グループ化] オプションを強調するスクリーンショット。

便宜上、多くの場合、Power Query内の変換には複数の場所からアクセスできるため、ユーザーは好みのエクスペリエンスを使用できます。

新しいクエリの追加

国/地域ごとの顧客数を示すクエリが作成されたので、各国/地域のサプライヤーの合計数を見つけることで、このデータにコンテキストを追加できます。

まず、 仕入先 データを追加する必要があります。 [データの取得] を選択します。 [ データ ソースの選択]OData を検索します。 次に、 OData コネクタを選択します。

OData コネクタが強調されている [データ ソースの選択] ページのスクリーンショット。

OData 接続エクスペリエンスが再び表示されます。 「OData フィードに接続」の説明に従い、Northwind OData フィードに接続するために接続設定を入力します。 ナビゲーター エクスペリエンスで、Suppliers テーブルを検索して選択します。

 Northwind OData サプライヤーが選択されたPower Queryナビゲーターのスクリーンショット。

Create を選択して、Power Query エディターに新しいクエリを追加します。 [ クエリ ] ウィンドウを展開すると、[ 顧客 ] クエリと [仕入先] クエリの両方が表示されます。

顧客クエリと仕入先クエリの両方を強調する [クエリ] ペインのスクリーンショット。

リボンの [変換] タブで、[グループ化] ボタンを選択して、[グループ化] ダイアログをもう一度開きます。

[グループ化] が強調されている [変換] タブ リボンの一部のスクリーンショット。

グループ化 ダイアログで、グループ化 操作を、国/地域ごとにグループ化し、各国/地域の仕入先の行数をカウントするように設定します。

  1. [基本] ラジオ ボタンは選択したままにします。
  2. グループ化する 国/地域 を選択します。
  3. [新しい列名] に「仕入先」と入力し、[操作] で [行の数] を選択します

仕入先のデータが入力された基本的な [グループ] ダイアログのスクリーンショット。

変換 によるグループ 化の詳細については、「 行のグループ化または集計」を参照してください。

参照クエリ

クエリを参照するときは、既存のクエリの出力を指す新しいクエリを作成します。 顧客のクエリとサプライヤーのクエリが作成されたので、次の目標は、それらを 1 つに結合することです。 Customers テーブルのマージ オプション、クエリの複製、クエリの参照など、多くの方法を使用してこの目標を達成できます。 この例では、Customers テーブルを長押しする(右クリックする)か、Reference を選択して参照を作成します。 このアクションにより、 Customers クエリを参照する新しいクエリが作成されます。

[参照] オプションが強調された [顧客] メニューのスクリーンショット。

この新しいクエリを作成した後、クエリの名前を国/地域分析に変更し、[仕入先] クエリから [読み込みを有効にする] オプションをオフにして Customers テーブルの読み込みを無効にします

3 番目のクエリ名が Country Analysis に変更され、[Suppliers Enable load]\(サプライヤーの読み込みを有効にする\) オプションがマークされていないと強調されているスクリーンショット。

クエリをマージする

マージ クエリ操作では、1 つまたは複数の列の一致する値に基づいて、2 つの既存のテーブルを結合します。 この例では、Customers テーブルと Suppliers テーブルの両方を、CustomersSuppliers の両方を持つ国/地域に対してのみ 1 つのテーブルに結合することを目標としています。

国/地域分析クエリ内で、リボンの [ホーム] タブから [クエリのマージ] オプションを選択します。

国/地域分析クエリが選択され、[ホーム] タブの [クエリのマージ] オプションが強調されているPower Query ワークスペースのスクリーンショット。

マージ操作の新しいダイアログが表示されます。 その後、現在のクエリとマージするクエリを選択できます。 マージの右側のテーブルで、[仕入先] クエリを選択し、両方のクエリから [国/地域] フィールドを選択します。 最後に、[ 内部 結合] の種類を選択します。この分析には 顧客仕入先 がある国/地域のみが必要です。

両方のクエリで国/地域列が選択され、[内部] 結合の種類が選択されている [クエリのマージ] ダイアログのスクリーンショット。

[OK] ボタンを選択すると、仕入先クエリのデータを含む新しい列が国/地域分析クエリに追加されます。 [仕入先] フィールドの横にあるアイコンを選択すると、展開するフィールドを選択できるメニューが表示されます。 [ 仕入先 ] フィールドのみを選択し、[ OK ] ボタンを選択します。

[仕入先] メニューが開き、[仕入先] のみが選択されている [仕入先] 列のスクリーンショット。

この 展開 操作の結果は、12 行のみのテーブルになります。 フィールド名をダブルクリックし、新しい名前を入力して、[ Suppliers.1 ] フィールドの名前を [ 仕入先 のみ] に変更します。

名前が変更された [仕入先] 列のスクリーンショット。

マージ クエリ機能の詳細については、マージ クエリの概要に関するページを参照してください。

適用されたステップ

クエリに適用されるすべての変換は、クエリ設定ペインの [ 適用されたステップ ] セクションにステップとして保存されます。 クエリがどのようにステップからステップに変換されるかを確認する必要がある場合は、ステップを選択し、その特定の時点でクエリがどのように解決されるかをプレビューできます。

クエリを長押し (右クリック) し、[ プロパティ ] オプションを選択してクエリの名前を変更したり、クエリの説明を追加したりすることもできます。 たとえば、[国/地域分析] クエリから [クエリのマージ] ステップを選択して長押し (右クリック) し、クエリの名前を [仕入先とマージ] に変更し、説明を [国/地域別の仕入先] クエリからデータを取得するようにします。

変更された名前と説明が入力された [ステップのプロパティ] ダイアログのスクリーンショット。

この変更の後、ダイアグラム ビューのマージ クエリ アイコンにカーソルを合わせるか、[適用されたステップ] ウィンドウのステップの横にある新しいアイコンをポイントして、その説明を読むことができます。

ステップのプロパティを表示するためにポイントする場所を示すスクリーンショット。

適用されたステップの詳細については、「適用されたステップの使用」リストを参照してください

新しい列を追加する前に、 ダイアグラム ビュー を無効にして 、データ プレビューのみを使用します。

新しい列の追加

既存の列から計算される新しい列を追加できます。 顧客と仕入先のデータを 1 つのテーブルに含めて、国/地域ごとに顧客と仕入先の比率を計算できるようになりました。 国/地域分析クエリの最後のステップを選択し、[顧客] 列と [仕入先] 列の両方を選択します。 リボンの [ 列の追加 ] タブと [ From number ] グループ内で、ドロップダウン リストから [ 標準] を選択し、[ 除算 (整数)] を選択します。

列の追加タブと標準が選択されたPower Queryワークスペースのスクリーンショット。除算 (整数) オプションが強調されています。

この変更により、比率に名前を変更できる整数除算という新しい列が作成されます。 この変更はクエリの最後のステップであり、データに顧客とサプライヤーが含まれる国/地域の顧客とサプライヤーの比率が提供されます。

データ プロファイリング

データ プロファイルは、データの理解を深めるのに役立つPower Query機能です。 データ プロファイル機能を有効にすると、値の分布、列の品質など、クエリ フィールド内のデータに関するフィードバックが得られます。

クエリの開発全体でこの機能を使用します。 この機能は、必要に応じて有効または無効にすることができます。 次の図は、 国/地域分析 クエリで有効になっているすべてのデータ プロファイル ツールを示しています。

下部の [比率] 列の詳細を含むデータ プロファイル情報のスクリーンショット。

データ プロファイルの詳細については、「データ プロファイル ツールの使用」を参照してください。

高度なエディター

Power Query エディターが各ステップで作成しているコードを確認する場合、または独自のシェイプ コードを作成する場合は、高度なエディターを使用できます。 advanced editorを開くには、リボンの View タブを選択し、詳細エディター を選択します。 既存のクエリ コードを示すウィンドウが表示されます。

高度なエディターのスクリーンショット。構文エラーのないコードが含まれています。

詳細エディター ウィンドウでコードを直接編集できます。 エディターは、コードに構文エラーが含まれているかどうかを示します。 ウィンドウを閉じるには、 [完了] ボタンまたは [キャンセル] ボタンを選びます。

Power Queryヘルプにアクセスする

Power Queryを使用するMicrosoft アプリでは、さまざまなレベルのヘルプにアクセスできます。 このセクションでは、これらのヘルプ レベルについて説明します。

Power Queryに関するExcelのヘルプ

ExcelのPower Queryに特化したPower Queryヘルプ情報にアクセスするには、いくつかの方法があります。 オンライン Excel Power Query ドキュメントにアクセスする方法の 1 つは、Power Query エディターで File>Help>Help を選択することです。

Excelのインライン Power Queryヘルプ情報にアクセスするには、Excel リボンの Help タブを選択し、検索テキスト ボックスに「Power Query」と入力します。

Power BI Desktop におけるPower Query に関するヘルプ

Power BI デスクトップで実行されているPower Query エディターには Help タブがありますが、現時点では、すべてのオプションがPower BI情報を提供する場所に移動します。 Power BI デスクトップの Power Query エディターで、同じ Power BI Help 情報にアクセスすることもできます。そのためには、File>Help を選択してから、ヘルプ オプションのいずれかを選択します。

Power BI サービス、Power Apps、Dynamics 365 Customer Insights、Azure Data Factory における Power Query のヘルプ

Power BI サービス、Power Apps、Dynamics 365 Customer Insights の [Power Query Help タブには、Azure Data Factory Power Queryに関する重要な情報ソースへのリンクが含まれています。

ヘルプ、コミュニティ、フィードバックのオプションがすべて表示されているPower Queryドキュメントのヘルプ タブのスクリーンショット。

[ヘルプ] タブのオプションには、次のリンクがあります。

  • Power Query ドキュメント: Power Query ドキュメントへのリンク
  • Keyboard ショートカット: Power Queryドキュメントのキーボード ショートカットに関する記事へのリンク。
  • Support: Power Queryが現在実行中のMicrosoft製品のサポート Web サイトへのリンク。
  • Power Query web サイト: Power Query Web サイトへのリンク。
  • Power Query ブログ: Power Query ブログへのリンク
  • Power Query コミュニティ: Power Query コミュニティへのリンク。
  • アイデアの提出: Power Queryが現在実行中のMicrosoft製品のアイデア Web サイトへのリンク。
  • フィードバックの送信: Power Queryでウィンドウを開きます。 このウィンドウでは、Power Queryのエクスペリエンスを評価し、提供する追加情報を提供するように求められます。

現時点では、Azure Analysis Servicesにはインライン Power Query ヘルプ リンクは含まれません。 ただし、Power Query M 関数に関するヘルプを取得できます。 詳細については、次のセクションで説明します。

Power Query M 関数のヘルプ

前のセクションで示したPower Queryヘルプ関数に加えて、Power Query エディター内から個々の M 関数のヘルプを取得することもできます。 手順は、使用するバージョンによって若干異なります。Power Query Desktop (Power BI Desktop などのアプリに統合) またはオンライン Power Query (Power BI サービスやデータフローなどのサービスに統合されます)。 次の手順では、このインライン ヘルプにアクセスする方法について説明します。

  1. Power Query エディターを開いた状態で、挿入ステップ () ボタンを選択します。
  2. 数式バーに、チェックする関数の名前を入力します。
    1. Power Query Desktop を使用している場合は、等号、スペース、および関数の名前を入力します。
    2. Power Query Online を使用している場合は、関数の名前を入力します。
  3. 関数のプロパティを選択します。
    1. Power Query Desktop を使用している場合は、Query Settings ペインの Properties で、All properties を選択します。
    2. Power Query Online を使用している場合は、Query 設定 ペインで、Properties を選択します。

次の手順では、選択した関数のインライン ヘルプ情報を開き、関数で使用される個々のプロパティを入力できます。

Date.AddDays M 関数の説明と構文と、各関数のパラメーターのエントリ ポイントのスクリーンショット。

概要

この記事では、Northwind 企業の国/地域レベルで顧客とサプライヤーの比率の分析を提供するPower Queryを使用して一連のクエリを作成しました。

Power Query ユーザー インターフェイスのコンポーネント、クエリ エディター内で新しいクエリを作成する方法、クエリを参照する方法、クエリをマージする方法、適用された手順のセクションを理解する方法、新しい列を追加する方法について学習しました。 また、データ プロファイル ツールを使用してデータをより深く理解する方法についても学習しました。

Power Queryは、さまざまなデータ ソースに接続し、データを目的の形状に変換するために使用される強力なツールです。 この記事で説明するシナリオは、Power Queryを使用して生データを重要な実用的なビジネス分析情報に変換する方法を示す例です。