COALESCE オペレーター: Power Query アプリケーション

COALESCE オペレーター: Power Query アプリケーション

このチュートリアルでは、2 つの実際的な問題を検討することにより、Power Query / M 言語で COALESCE 演算子を使用する方法を示します。このチュートリアルの完全なビデオは、このブログの下部でご覧いただけます。

COALESCE 演算子は、二重疑問符 ( ?? ) で表されます。この演算子は、 Python のor演算子、または既定の関数と同様に機能します。最初のオペランドが存在し、null でない場合はそれを返し、それ以外の場合は 2 番目のオペランドを返します。

最初の問題は、値の条件付き置換を扱います。たとえば、列 2 に null 値が含まれている場合、結果は列 1 の値を返す必要があります。それ以外の場合、列には列 2 の値が保持されます。

COALESCE オペレーター: Power Query アプリケーション

2 番目のシナリオは、 LinkedIn の Excel BIによって提供されるチャレンジです。

COALESCE オペレーター: Power Query アプリケーション

Excel BI は、Excel と Power Queryの毎日の課題を提供します。ただし、ほとんどの場合、Excel の課題は Power Query でも解決できます。2 番目の例の目的は、2 つの単語で構成されていない文字列をすべて除外することです。

目次

例 #1: COALESCE 演算子を使用した値の置換

クエリエディタを開きます。数式バークエリ設定ペインが表示されていることを確認してください。そうでない場合は、「表示」タブに移動して、「レイアウト」設定を切り替えます。

COALESCE オペレーター: Power Query アプリケーション

最初の例では、2 つの列を含むテーブルが使用されます。

COALESCE オペレーター: Power Query アプリケーション

列 2 を選択し、「変換」タブに移動します。次に、「値を置換」オプションをクリックします。

COALESCE オペレーター: Power Query アプリケーション

[値の置換]ウィザードでは、何も変更せずに[OK]をクリックします。

COALESCE オペレーター: Power Query アプリケーション

これにより、必要な構文が生成されます。あとは、数式バーのコードを更新して、必要な変更を表示するだけです。

IF THEN ELSE構造の使用

この場合、コードは null 値を探す必要があります。列 2 に null 値が含まれている場合は、列 1 の値に置き換えられます。

コードの更新が完了したら、数式バーの横にあるチェック マークをクリックします。

COALESCE オペレーター: Power Query アプリケーション

これは、テーブル内の null 値を条件付きで置き換える方法の 1 つです。ただし、より簡単な方法があり、それは M 言語の COALESCE 演算子を使用することです。

COALESCE オペレーターの使用

COALESCE 演算子は、二重疑問符 ( ?? ) で表されます。

COALESCE は、NULL 値を条件付きでテストするときに使用できます。

COALESCE 演算子を使用するには、まず前の例の構文をコピーし、数式バーの左側にある[fx]タブをクリックする必要があります。これにより、クエリに新しいステップが作成されます。

構文を貼り付けて、COALESCE 演算子を使用して更新します。したがって、 If then Elseステートメントを使用する代わりに、列 2 と列 1 の間に二重疑問符を配置します。

COALESCE オペレーター: Power Query アプリケーション

列 2 が null を返さない場合は、同じ列から値を取得します。ただし、null が返された場合は、列 1 から値を取得します。

例 #2: 条件付きフィルターを適用する

2 番目の例の目標は、2 つの単語で構成されていないデータを除外することです。

テーブル内のフィルター オプションをクリックし、ランダム フィルターを選択します。これにより、Power Query でM コード構文が生成されます。

COALESCE オペレーター: Power Query アプリケーション

次に、構文を更新して、2 つの単語で構成されていない文字列を除外します。通常、2 つの単語はスペースで区切られるため、 Text.Splitコマンドを使用する必要があります。次に、結果が値のリストを返すように、それをList.Count関数内に配置する必要があります。

完了したら、数式バーの横にあるチェック マークをクリックします。結果のテーブルには、2 つの単語を含む文字列が含まれていることがわかります。ただし、最後の行にエラーがあります。

COALESCE オペレーター: Power Query アプリケーション

コードでデータセット内に null 値が検出されたため、エラーが表示されます。このようなエラーの発生を防ぐには、COALESCE 演算子を使用する必要があります。

したがって、 Text.Split引数内に??を配置します。Name値の後に入力し、NULL 値が見つかった場合にテーブルに表示される内容を指定します。

COALESCE オペレーター: Power Query アプリケーション

結論

このチュートリアルでは、If Then Else ステートメントや Try Other 構文の代わりに COALESCE 演算子を実装できる 2 つの実践的な例を見てきました。

COALESCE 演算子は、null または別のデフォルト値を持つ変数にデフォルト値を提供するのに便利なツールです。これは、null 参照例外を回避したり、欠落または不完全な可能性のあるデータを操作するときにデフォルト値を提供したりするためによく使用されます。

ではごきげんよう、

メリッサ・デ・コルテ


Python における Self とは: 実際の例

Python における Self とは: 実際の例

Python における Self とは: 実際の例

RでRDSファイルを保存してロードする方法

RでRDSファイルを保存してロードする方法

R の .rds ファイルからオブジェクトを保存および読み込む方法を学習します。このブログでは、R から LuckyTemplates にオブジェクトをインポートする方法についても説明します。

最初の N 営業日の再考 – DAX コーディング言語ソリューション

最初の N 営業日の再考 – DAX コーディング言語ソリューション

この DAX コーディング言語チュートリアルでは、GENERATE 関数の使用方法とメジャー タイトルを動的に変更する方法を学びます。

LuckyTemplates のマルチスレッド動的ビジュアル手法を使用したインサイトのショーケース

LuckyTemplates のマルチスレッド動的ビジュアル手法を使用したインサイトのショーケース

このチュートリアルでは、マルチスレッド動的ビジュアル手法を使用して、レポート内の動的データ視覚化から洞察を作成する方法について説明します。

LuckyTemplates のフィルター コンテキストの概要

LuckyTemplates のフィルター コンテキストの概要

この記事では、フィルター コンテキストについて説明します。フィルター コンテキストは、LuckyTemplates ユーザーが最初に学習する必要がある主要なトピックの 1 つです。

LuckyTemplates Online Service でアプリを使用する際の最良のヒント

LuckyTemplates Online Service でアプリを使用する際の最良のヒント

LuckyTemplates Apps オンライン サービスが、さまざまなソースから生成されたさまざまなレポートや分析情報の管理にどのように役立つかを示したいと思います。

時間の経過に伴う利益率の変化を分析する – LuckyTemplates と DAX を使用した分析

時間の経過に伴う利益率の変化を分析する – LuckyTemplates と DAX を使用した分析

LuckyTemplates でのメジャー分岐や DAX 数式の結合などの手法を使用して、利益率の変化を計算する方法を学びます。

DAX Studio でのデータ キャッシュのマテリアライゼーションのアイデア

DAX Studio でのデータ キャッシュのマテリアライゼーションのアイデア

このチュートリアルでは、データ キャッシュの具体化のアイデアと、それが結果を提供する際の DAX のパフォーマンスにどのように影響するかについて説明します。

LuckyTemplates を使用したビジネス レポート

LuckyTemplates を使用したビジネス レポート

これまで Excel を使用している場合は、ビジネス レポートのニーズに合わせて LuckyTemplates の使用を開始するのに最適な時期です。

LuckyTemplates ゲートウェイとは何ですか? 知っておくべきことすべて

LuckyTemplates ゲートウェイとは何ですか? 知っておくべきことすべて

LuckyTemplates ゲートウェイとは何ですか? 知っておくべきことすべて