Power Query の行と列の選択の使用方法

Power Query の行と列の選択の使用方法

このチュートリアルでは、Power Query エディター内で選択と投影を使用する方法について説明します。選択は行を選択するためのものです。射影は列を選択するためのものです。これらを使用してテーブルからデータや情報を取得する方法を学び、理解します。

目次

Power Query の行選択の使用方法

位置インデックス演算子は、中括弧のセット内の 0 から始まるインデックス番号です。ルックアップ演算子は、角かっこで囲まれたフィールド名です。これらの演算子を組み合わせて、個々のセルにアクセスできます。  

デモのために、これは使用されるサンプル テーブル クエリです。

Power Query の行と列の選択の使用方法

[Item] 列の Table1 の値を取得する場合は、数式バーで[fx]をクリックし、手動ステップを追加します。次に、位置インデックス演算子を使用してゼロから始まる位置を参照し、フィールド アクセス演算子を使用して列名を参照します。

項目列の Sheet1 セルから、Table1 のセルまで 0 からカウントします。Table1 のセルの位置が 2 であることがわかります。したがって、中括弧の中に2を入力します。フィールド アクセス演算子には、Table1 セルが属する列の名前を入力します。その後、プレビュー ペインに Table1 が返されることがわかります。

Power Query の行と列の選択の使用方法

Table1 セル内のスペースを右クリックして [ドリルダウン] を選択すると、ユーザー インターフェイスが同じ結果と構文を生成することがわかります。

Power Query の行と列の選択の使用方法

Power Query の行と列の選択の使用方法

その理由は、サンプル テーブルに主キーがないためです。主キーを持つテーブルでは、キー一致ルックアップが使用されます。

これは、主キーを使用した別のサンプル テーブル クエリです。

Power Query の行と列の選択の使用方法

Table1 セル内のスペースを右クリックして [ドリルダウン] を選択すると、同じ結果が表示されますが、構文は異なります。

Power Query の行と列の選択の使用方法

これは、キー一致検索が位置インデックス演算子に適用されるためです。選択したレコードのすべての主キー列とその値がリストされます。主キーがない場合でも、上記の最初のサンプル テーブル クエリでキー マッチ ルックアップ メソッドを使用することもできます。

そのテーブル クエリの最後のステップを削除し、数式バーの[fx]をクリックして手動ステップを追加します。同じ結果を得るには、項目の値を Table1 と一致させる必要があります。

Power Query の行と列の選択の使用方法

同じ結果が生成されたことがわかります。この方法は、検索条件がテーブル内の複数の行に一致しない限り機能します。

説明のために、これはサンプル テーブル クエリを使用して手動で作成されたコードです。

Power Query の行と列の選択の使用方法

Enter キーを押すと、単一行を返すことはできず、キーがテーブル内の複数の行と一致したことを示すエラー メッセージが表示されます。

Power Query の行と列の選択の使用方法

疑問符を追加してオプションの選択を使用しても、見つからない動作にのみ影響するため、エラーは抑制されません。この場合、条件を満たす複数のレコードが見つかりました。

これは、キー一致ルックアップを適用するときに注意する必要があることです。ユーザー インターフェイスは、テーブルに主キーがある場合にのみキー マッチ ルックアップを使用します。それ以外の場合は、常に位置インデックス演算子が使用されます。

Table.Keys関数を使用すると、テーブルに主キーがあるかどうかを確認できます。この 3 番目のサンプル クエリでは、関数がレコードを返すことがわかります。

Power Query の行と列の選択の使用方法

[レコード] セル内のスペースをクリックすると、プレビュー ペインの下にその内容のプレビューが表示されます。

Power Query の行と列の選択の使用方法

Primary がテーブルに対して TRUE を示していることがわかります。これは、テーブルに主キーがあり、テーブルのキー列を含むリストが含まれていることを意味します。

Power Query の列投影の使用方法

プロジェクションでは、列の数が減った新しいテーブルが作成されます。射影演算子は、フィールドまたは列の選択を含む角括弧のセットです。デモのために、このサンプル テーブル クエリを使用します。

Power Query の行と列の選択の使用方法

データ列のみを保持したい場合は、まず数式バーのfxをクリックして手動ステップを追加します。構文については、角括弧内に「データ」を入力します。

Power Query の行と列の選択の使用方法

最初の列の後にカンマを追加し、追加した列で新しい角括弧を作成することで、複数の列を選択できます。射影では、構文に応じて列の順序も再配置されることがわかります。

Power Query の行と列の選択の使用方法

存在しない列を参照するとエラーが発生します。構文に新しい列を追加すると、プレビュー ペインにエラー メッセージが表示されます。

Power Query の行と列の選択の使用方法

疑問符を追加すると、存在しない列が追加されますが、その値は null に設定されます。

Power Query の行と列の選択の使用方法

Power Queryでは大文字と小文字が区別されるため、選択または投影を使用する場合は注意が必要です。

結論


Power Query/M マスタークラス #1 – LuckyTemplates の新しいコース
Power Query でレコードとリストから値を抽出する

選択と投影は、大きなテーブルやソースから特定の情報を取り出して取得するのに役立ちます。これらは、必要なデータを選択するのに役立ちます。この 2 つがどのように機能するかを理解できれば、データ モデリングのスキルが大幅に向上することがわかります。

メリッサ


Power Automate の文字列関数: Substring と IndexOf

Power Automate の文字列関数: Substring と IndexOf

Microsoft フローで使用できる 2 つの複雑な Power Automate String 関数、substring 関数とindexOf 関数を簡単に学習します。

LuckyTemplates でビジュアル ツールチップを作成する

LuckyTemplates でビジュアル ツールチップを作成する

LuckyTemplates ツールチップを使用すると、より多くの情報を 1 つのレポート ページに圧縮できます。効果的な視覚化の手法を学ぶことができます。

Power Automate で HTTP 要求を行う

Power Automate で HTTP 要求を行う

Power Automate で HTTP 要求を作成し、データを受信する方法を学んでいます。

LuckyTemplates で日付テーブルを作成する方法

LuckyTemplates で日付テーブルを作成する方法

LuckyTemplates で簡単に日付テーブルを作成する方法について学びましょう。データの分析と視覚化のための効果的なツールとして活用できます。

2 つの方法による SharePoint 列の検証

2 つの方法による SharePoint 列の検証

SharePoint 列の検証の数式を使用して、ユーザーからの入力を制限および検証する方法を学びます。

SharePoint リストを Excel または CSV ファイルにエクスポート

SharePoint リストを Excel または CSV ファイルにエクスポート

SharePoint リストを Excel ファイルおよび CSV ファイルにエクスポートする方法を学び、さまざまな状況に最適なエクスポート方法を決定できるようにします。

Power Automate のオンプレミス データ ゲートウェイ

Power Automate のオンプレミス データ ゲートウェイ

ユーザーがコンピューターから離れているときに、オンプレミス データ ゲートウェイを使用して Power Automate がデスクトップ アプリケーションにアクセスできるようにする方法を説明します。

DAX 数式での LASTNONBLANK の使用

DAX 数式での LASTNONBLANK の使用

DAX 数式で LASTNONBLANK 関数を使用して、データ分析の深い洞察を得る方法を学びます。

CROSSJOIN 関数の使用方法 – LuckyTemplates および DAX チュートリアル

CROSSJOIN 関数の使用方法 – LuckyTemplates および DAX チュートリアル

LuckyTemplates で予算分析とレポートを実行しながら、CROSSJOIN 関数を使用して 2 つのデータ テーブルをバインドする方法を学びます。

TREATAS 関数を使用して LuckyTemplates で仮想リレーションシップを作成する

TREATAS 関数を使用して LuckyTemplates で仮想リレーションシップを作成する

このチュートリアルでは、LuckyTemplates TREATAS を使用して数式内に仮想リレーションシップを作成する方法を説明します。