Power Query でのカスタム テキスト クリーニング関数の作成

Power Query でのカスタム テキスト クリーニング関数の作成

というシリーズのために作成したテキスト クリーニングのカスタム関数を詳しく見ていきます。このチュートリアルの完全なビデオは、このブログの下部でご覧いただけます。

第 2 週では、クリーンアップが必要な乱雑なデータがいくつかあります。ここでの目標は、両方の列のすべてのテキスト値をクリーンアップすることです。

このタスクのために、クリーン テキスト関数を作成しました。

Power Query でのカスタム テキスト クリーニング関数の作成

まずは、M コードを簡単に見てみましょう。

Power Query でのカスタム テキスト クリーニング関数の作成

この関数は、myText という 1 つのパラメータを受け取ります。以下にリストされているすべての変数がテキスト値を返すわけではないため、その値はテキスト型である必要があり、関数はテキスト値を返す必要があります。

Power Query でのカスタム テキスト クリーニング関数の作成

戻り値の型を宣言するとエラーになります。このエラーの発生を防ぐために、今のところはコメントアウトできます。

Power Query でのカスタム テキスト クリーニング関数の作成

最初の変数が何を返すかを確認したい場合は、in 句の後に名前で参照するだけです。そこで、ToRemove 変数をコピーし、一番下の行に貼り付けて、[OK] をクリックします。

Power Query でのカスタム テキスト クリーニング関数の作成

その関数の結果を確認するには、その関数を呼び出す必要があります。このクエリにカスタム列を追加しましょう。

Power Query でのカスタム テキスト クリーニング関数の作成

次に、関数を呼び出し、この結合された列を選択して、[OK] を押します。

Power Query でのカスタム テキスト クリーニング関数の作成

目次

空のクエリからリストを作成する

ToRemove ステップでリストが作成されることがわかります。実際には、これは 2 つのリストを組み合わせたものです。

最初のリストは引用符を作成し、2 番目のリストは削除したい文字の範囲を示しています。

Power Query でのカスタム テキスト クリーニング関数の作成

このリストはどうやって作成したのでしょうか?

さて、私はTxt.ToListという関数を使いました。

内部関数のドキュメントにアクセスするには、空のクエリを作成し、括弧なしで関数名を入力し、Enter キーを押します。

Power Query でのカスタム テキスト クリーニング関数の作成

Text.ToList が指定されたテキスト値から文字値のリストを返すことがわかります。

いくつかのテキストを貼り付けて、この関数を呼び出してみましょう。

Power Query でのカスタム テキスト クリーニング関数の作成

新しいクエリが作成され、このリストにはテキスト内に表示されるすべての文字が含まれていることがわかります。

Power Query でのカスタム テキスト クリーニング関数の作成

追加のリストを追加したことを覚えていますか? 2 つのリストを結合し、アンパサンドを使用しました。

それを今再現しましょう。アンパサンドとリスト初期化子を使用して、引用符を入力しました。

Power Query でのカスタム テキスト クリーニング関数の作成

引用符がこのリストに追加されたことがわかりますが、なぜリストを作成したのでしょうか?

Power Query でのカスタム テキスト クリーニング関数の作成

さて、テキスト クリーニング関数の次のステップでは、Text という M 関数を使用しました。削除。

Power Query でのカスタム テキスト クリーニング関数の作成

テキストを入力してから、その文字列から削除する文字のリストを入力できることがわかります。

Power Query でのカスタム テキスト クリーニング関数の作成

テキストクリーニング機能に戻りましょう。

Power Query でのカスタム テキスト クリーニング関数の作成

に。Remove はこれら 2 つのリストを作成し、それらを 1 つのリストに結合しました。

Power Query でのカスタム テキスト クリーニング関数の作成

次に、CleanText 変数を貼り付けましょう。'in' 句は M 関数 Text.Remove を呼び出し、myText 変数を渡してから、To.Remove リストを呼び出します。これが何をするのか見てみましょう。

Power Query でのカスタム テキスト クリーニング関数の作成

クエリに戻りましょう。これはリストを返さなくなりましたが、いくつかのテキスト値を返します。

Power Query でのカスタム テキスト クリーニング関数の作成

Power Query でのトリミング

次のステップはトリミングです。上の画像からわかるように、追加のスペースと最後にある末尾のカンマを削除する必要があります。これを行うには、トリム関数を使用できます。クエリに戻って M コードを調べてみましょう。

M コードでは、2 つのトリム関数をネストしました。最初の文字列関数は、CleanText 変数の先頭と末尾にある追加のスペースを削除します。

Power Query でのカスタム テキスト クリーニング関数の作成

残りのテキストについては、結果の文字列からスペースも削除します。

末尾のカンマも削除します。

Power Query でのカスタム テキスト クリーニング関数の作成

結果を見てみましょう。変数名をコピーし、「in」句の後に貼り付けて、「完了」をクリックします。クエリを更新すると、追加のスペースが削除され、末尾のカンマが削除されていることがわかります。

Power Query でのカスタム テキスト クリーニング関数の作成

クエリの最後のステップでは、いくつかのテキスト値を置き換えただけです。

Power Query でのカスタム テキスト クリーニング関数の作成

最後のケースでは、アンダースコアをスペースに置き換えました。それをコピーして、「in」句の後に貼り付けましょう。戻り値の型も再度有効にしました。

Power Query でのカスタム テキスト クリーニング関数の作成

クエリに戻って結果を調べてみましょう。これまでのところ、非常に良好です。

Power Query でのカスタム テキスト クリーニング関数の作成

さて、関数を呼び出すために新しい列を作成する必要はありませんよね? 私たちができることは、代わりにマージ列の列 1 を変換することです。

このカスタム列ステップを削除します。

Power Query でのカスタム テキスト クリーニング関数の作成

次に、UI を使用してコードの大部分を作成します。[変換] タブで両方の列を選択し、[形式] に移動して関数を選択します。

Power Query でのカスタム テキスト クリーニング関数の作成

これは UI によって生成される M コードであるため、どの関数が選択されるかは実際には問題ではありません。これで、そのテキストを置き換えることができます。下位機能…

Power Query でのカスタム テキスト クリーニング関数の作成

…クリーンテキスト機能を使用します。なぜ fx を前に追加しなければならなかったのか理解していただけたでしょうか。それから始まる「in function」はありません。

Power Query でのカスタム テキスト クリーニング関数の作成

OK を押すと、テキストが消去されたことがわかります。これはすごいですね。

Power Query でのカスタム テキスト クリーニング関数の作成

結論

なぜカスタム クリーニング関数を作成するのに苦労しなければならなかったのでしょうか? 今後、この手順を繰り返すか、同様のロジックを使用する必要がある可能性がある場合は、この関数クエリを保存できます。

そうすることで、後の段階でのクエリの開発がスピードアップします。もう一つの良い理由は、それが楽しいからです。

このチュートリアルを楽しんでいただければ幸いです。購読した場合は、 LuckyTemplates チャンネルに登録することを忘れないでください。

メリッサ


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 を使用して数式内に仮想リレーションシップを作成する方法を説明します。