パラメーターにより、柔軟なPower Query コードを作成する
こんにちは!フォンと申します。
株式会社メディアフュージョンのPower BI関連製品の開発を担当しているベトナム出身のエンジニアです。
蓄積された経験をPower BIに興味のあるや利用者などに共有したいです。
Power Query に慣れると、場合によってはデータ ソースのパスが変更されており、Power Query コードが適切に動作するには、ソース コード内のパスを手動で修正する必要があることに気づくでしょう。
または、データ テーブルに含まれるカテゴリが多すぎます。特定のカテゴリを表示するたびに、そのカテゴリのデータをフィルタリングする必要があります。
これを頻繁に行うのは面倒で、生産性の低下やエラーの原因となります。
Power Query のパラメーター機能は、上記のタスクの最適化に役立ち、コードをより柔軟にして、さまざまな環境で操作しやすくします。
この記事では、パラメータを適用する方法を説明します。
・データソースのパスを変更
・フィルターを柔軟に作成
1.データソースのパスを変更
まず、ソースから Power Query にデータを読み込みます。
使用されたデータ ソースはこちらです。
次に、「詳細エディター」 を開いて Power Query M コードを確認すると、「ソース 」ステップでデータ ソースのパスが固定されています。
パスが変更されるたびにここで編集する代わりに、パラメーターを使用すると簡単になります。
パラメーターは、Power Query エディターで [ホームタブ]>[パラメーターの管理]>[新規作成] を選択して、以下の必要事項を登録します。
パラメーターの名前:dataSourcePath
必須:true
種類:テキスト
提案された値:任意の値
現在の値:https://dummyjson.com/products ※注意:必須のパラメーターなので、ここで、空白のままにすることはできません。
設定した後、「OK」ボタンをクリックして、パラメーターが作成されます。
次に、Power Query Mコードを開いて、パラメーター名に固定したデータソースを変換して、「完了」ボタンをクリックします。
データソースのパスは変更するたびにパラメーターの現在の値のみ修正する必要があります。
2.フィルターを柔軟に作成
カテゴリごとにデータを手動でフィルタリングする場合は、以下の画像のように表示されることがわかります。
Power Query コードの「#"Filtered Rows"」で「fragrances」の値が固定されています。このための柔軟なパラメータを作成します。
「1.データソースのパスを変更」 と同様に、新しいパラメータを作成し、適切なパラメータを設定します。
パラメーターの名前:products_category
必須:true
種類:テキスト
提案された値:値の一覧
カテゴリー種別を追加
現在の値:fragrances ※注意:必須のパラメーターなので、ここで、空白のままにすることはできません。
設定した後、「OK」ボタンをクリックして、パラメーターが作成された。
カテゴリごとにデータをフィルタリングする場合はパラメーターで選択できます。
また、Power Query エディターだけではなく、Power BI で変更できるのでとても便利です。
Power BIのホームタブで、「データの変換」の下で「v」イコンをクリックして、「パラメーターの編集」を選択すると、「パラメーターの編集」が表示され、修正できます。
参照; https://learn.microsoft.com/ja-jp/power-query/power-query-query-parameters