Power Query モジュロ: 積み重ねられたデータを処理する方法

Power Query モジュロ: 積み重ねられたデータを処理する方法

このチュートリアルでは、乱雑に積み重ねられたデータをより整理された形式に変換する方法を説明します。これを行う非常に簡単な方法があり、非常に便利で、さまざまな用途に使用できます。Power Query モジュロを使用します。このチュートリアルの完全なビデオは、このブログの下部でご覧いただけます。

妻がオフィスに来て、カレンダーの招待状から大量の住所をコピーしたのに、結局この形式で貼り付けることになったと言いました。彼女は 28 個の電子メール アドレスと名前を持っていましたが、最終的にはこのような奇妙な積み上げ形式になりました。それは、引用符、カンマ、ジャンク、電子メール アドレスがたくさん含まれた名前のリストでした。彼女は、Power Query を使用してデータをより良い形式に変換する方法を知りたいと考えていました。

Power Query モジュロ: 積み重ねられたデータを処理する方法

それでは、Power Query に移り、生データを見てみましょう。生データはそのままにして、参照するだけにしておきます。この参照ファイルをTestDataと呼びます。

Power Query モジュロ: 積み重ねられたデータを処理する方法

最初にインデックスを追加します。これらの目的では、インデックスが 0 から始まるか 1 から始まるかはあまり関係ありません。このデモでは、ゼロから始まるインデックスだけを使用します。他のオプションを経由する必要がなく、クリックするのは簡単です。

Power Query モジュロ: 積み重ねられたデータを処理する方法

ピボットは行を取得して列に変換するため、これにはピボットが関係します。この場合、この一連の行を 3 つの列に変換します。1 つは名、1 つは姓、もう 1 つは電子メール アドレスです。

列内のそれらをピボットしますが、ピボットがどの要素がどの列に入るのかを知る方法が必要です。ここで Power Query Modulo が登場します。

目次

Power Query Modulo を使用したスタックされたデータの処理

Modulo は、特定の数値を除算したときの余りを返します。Modulo にアクセスするには、[列の追加] タブに移動し、[標準] を見つけてドロップダウン矢印をクリックし、下にスクロールします。

Power Query モジュロ: 積み重ねられたデータを処理する方法

[Modulo] をクリックすると、必要な列の数を尋ねるポップアップ ボックスが表示されます。この場合、3 つの列が必要です。

Power Query モジュロ: 積み重ねられたデータを処理する方法

3 を 3 で割ると、余りが 0 の 1 が得られます。3 を 4 にすると余りが 1 になり、3 を 5 にすると余りが 2 になり、さらに 3 を 6 にすると余りが 0 になります。したがって、ピボットに使用できるこの素晴らしい繰り返しパターンが生成されます。

その前に、データをクリーンアップしましょう。これを行うには 2 つの方法があります。1 つは、単純に値を置き換えることができることです。たとえば、引用符の場合は、そこに引用符を入力し、何も置き換えることができます。それらの引用符を削除して削除します。

Power Query モジュロ: 積み重ねられたデータを処理する方法

これを一度にクリーンアップしていくつかのステップを保存できるもう 1 つの方法は、Text.Removeという関数を使用することです。まず、カスタム列を追加し、次に削除するすべての値をリストします。

Power Query モジュロ: 積み重ねられたデータを処理する方法

ご覧のとおり、これによりすべてがうまく簡単にクリアされます。これで、最初の列を削除して、そのカスタム列を移動できるようになりました。

Power Query モジュロ: 積み重ねられたデータを処理する方法

これでピボットをきれいに実行できるようになりました。Modulo を使用し、[Transform]、[Pivot Column] の順に移動し、Custom を基にピボットしますが、それを集約したくありません。したがって、「集計しない」を選択し、「OK」をクリックします。

Power Query モジュロ: 積み重ねられたデータを処理する方法

これを列内のこれらの値に置き換えるだけです。次に、これら 3 つの列を作成します。そこには姓、名、電子メール アドレスが表示されていますが、これは私たちが望む形式ではありません。

これを修正するには、これらの列を取得して、Fill Upを実行します。

Power Query モジュロ: 積み重ねられたデータを処理する方法

そして、モデューロの繰り返しパターンにより、これらの余分な行ができました。

Power Query モジュロ: 積み重ねられたデータを処理する方法

交互の行を削除することで、これを簡単に取り除くことができます。これは、[行の削除] オプションで実行できます。

Power Query モジュロ: 積み重ねられたデータを処理する方法

削除する最初の行は 2 行であると言えます。次に、2 行目と 3 行目を削除し、4 行目を残し、これを繰り返しパターンとして実行します。

Power Query モジュロ: 積み重ねられたデータを処理する方法

すべての正しいデータが適切な方法でクリーンアップされ、28 個の元の電子メール アドレスがまだ残っていることがわかります。

Power Query モジュロ: 積み重ねられたデータを処理する方法

これで、Index 列を削除し、それに応じて列ヘッダーの名前を変更できます。


LuckyTemplates のモジュロ関数と整数除算の DAX 関数
データ モデルの Power Query のベスト プラクティス
Power Query M: 日付テーブルの 0 ~ 1 の交互パターン

結論

Modulo トリックを使用し、データをピボットし、少しクリーンアップするだけで、非常に簡単に実行できることがわかります。コツを掴めば、すべてを行うのにおそらく 1 分程度しかかかりません。

これで、さらにいくつかのアイデアやツールが得られたことを願っています。次のチュートリアルもご覧ください。その中で、このチュートリアルで説明した内容のいくつかをさらに詳しく見ていき、カスタム関数を使用してこのプロセスを反復可能な方法で自動化する方法についても見ていきます。カスタム関数をデバッグするための素晴らしいトリックもいくつか紹介します。

お役に立てば幸いです。以下の完全なビデオを視聴し、その他の関連コンテンツについては以下のリンクをチェックしてください。

ではごきげんよう!


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 ゲートウェイとは何ですか? 知っておくべきことすべて