LuckyTemplates ランクとカスタム グループ化

LuckyTemplates ランクとカスタム グループ化

データ アナリストとして、傾向や洞察を生成するために、データ セットの値をグループ化してランク付けすることが求められることがよくあります。ただし、LuckyTemplates を使用してこれらのタスクを簡単に実行する方法を誰もが知っているわけではありません。

今日のブログでは、LuckyTemplates ランクとカスタム グループ化関数を必要とするシナリオを検討し、まさにそれを行う方法を示します。このチュートリアルの完全なビデオは、このブログの下部でご覧いただけます。

このチュートリアルでは、 Record IDsPriorities、およびMinutesという 3 つの列を含むデータのテーブルを使用します。私たちの目標は、最大分数に基づいて優先度 1 または 2 を持つレコードの上位 5% を特定することです。

目次

LuckyTemplates ランクとグループ化を作成するためのデータ セット

Power Query でデータセットがどのように表示されるかは次のとおりです。優先順位 1 と 2 を残りから分離する属性がないため、M 関数 Table.Partitionを使用する必要があります。これにより、優先度 1 と 2 を他の行から分離するためのヘルパー列が生成されます。

LuckyTemplates ランクとカスタム グループ化

LuckyTemplates 関数: テーブル.パーティション

Table.Partition を使用してデータをセグメント化する方法を調べるには、まず詳細エディターを開きます。

LuckyTemplates ランクとカスタム グループ化

表示されるウィンドウで、新しい行を追加して新しい変数を作成します。変数をPartitionsと名付けましょう。次の情報を必要とする関数Table.Partitionを追加します。

  • パーティション化するテーブル。私たちの場合は、 がソースです。
  • 評価する列。これは、ルールが配置される戻りテーブルの列です。それが「優先度」列になります。
  • 作成するグループの数。これはパーティション化するテーブルの数も指します。ここでは2 つのテーブルが必要です。 
  • ハッシュ関数。ハッシュ値を取得するには、数値を使用する必要があります。ハッシュ関数をeach ifで開始し、その後に現在の値を表すアンダースコアを続けます。次に、条件is less than threeを追加し、zero else oneを返します。 

5 行目で、 Source をPartitionsに変更し、次の解決策を与えます。

LuckyTemplates ランクとカスタム グループ化

「完了」をクリックして、テーブルにどのような影響を与えるかを確認します。以下に示すように、Table.Partition 関数は 2 つのネストされたテーブルを含むリストを作成します。 

LuckyTemplates ランクとカスタム グループ化

「テーブル 1」をクリックすると、優先順位が 3 より小さいすべてのレコード (優先順位 1 および 2) を含むプレビュー テーブルが開きます。

LuckyTemplates ランクとカスタム グループ化

 残りの行はすべて表 2にあります。

LuckyTemplates ランクとカスタム グループ化

優先度 1 と 2 が 1 つのテーブルにグループ化されたため、このテーブルを使用して上位 5% を計算できます。 

LuckyTemplates 関数: Table.RowCount

Table.RowCount使用して、5% の要件を満たすために必要な行数を決定できます。優先度 1 と 2 の行数をカウントし、取得した数の 5% を取得します。

まず、左上隅から[Advanced Editor]ウィンドウを開きます。

LuckyTemplates ランクとカスタム グループ化

次に、新しい行と新しい変数を追加します。これをnRowと呼びます。3 行目から変数名Partitionsをコピーして、最初のテーブルを抽出する必要があります。

次に、位置インデックス演算子を使用して、最初のテーブルのリストの最初の項目にアクセスします。次に、Table.RowCount 演算子を Partitions(0) の周囲にラップします。次に、0.05 を掛けて 5% を取得します。 

また、 Number.Round関数を使用して、数値を小数点以下のゼロに丸めます。最後に、最後の行をPartitionsから nRowに変更します。 

LuckyTemplates ランクとカスタム グループ化

これにより、以下に示すように 2 が返されるはずです。

LuckyTemplates ランクとカスタム グループ化

結果は、5% の要件を満たすには、表 1 の 2 行をマークする必要があることを意味します。これを行うには、新しい M 関数 Table.AddRankColumn を使用できます。 

LuckyTemplates 関数: Table.AddRankColumn

このセクションでは、LuckyTemplates のランク機能を使用して行をランク付けします。Table.AddRankColumnは、比較基準に基づいてテーブルに新しいランキング列を追加するために使用されます。

まず、[詳細エディター]ウィンドウを開きます。テーブル 1 を作成し、新しい行にt1という名前を付けます。次に、Table.AddRankColumnを使用して、最初のテーブルPartitions (0) を追加します。また、i と呼ぶ新しい列名を割り当てる必要もあります

比較基準として、 {“Minutes”, Order.Descending}を使用して分を高いものから低いものまでランク付けします。 

最後に、RankKind=RankKind.Ordinalを追加します。これにより、すべての項目が等しいと評価される場合でも、すべての項目に一意の番号が強制的に与えられます。次に、nRow をt1に変更して、テーブル 1 を返します。 

私たちのソリューションは次のようになります。 

LuckyTemplates ランクとカスタム グループ化

「完了」をクリックすると、次のような表が表示されます。 

LuckyTemplates ランクとカスタム グループ化

ブールフィルタの追加

ランク列をもう保持したくないため、テーブルにブール フィルターも追加します。代わりに、ブール値フィルターを追加して、除外する必要がある上位 2 行のみを識別することが必要です。 

それでは、 [詳細エディター]ウィンドウに戻り、カスタム列を追加しましょう。Table.AddColumn関数を使用して新しい行を追加し、新しい列をExcludeと呼びます。

columnGenerator の場合、 nRow番号 (除外する行数)以下の各 iを使用して、新しく作成された列を確認できます。また、論理型を使用してデータ型を割り当てます。

私たちのソリューションは次のようになります。

LuckyTemplates ランクとカスタム グループ化

「完了」をクリックすると、以下のようなテーブルが表示されます。

LuckyTemplates ランクとカスタム グループ化

LuckyTemplates 関数: Table.RemoveColumns

ヘルパー列は必要なくなったので、テーブルから削除できます。 

そこで、[詳細エディター]ウィンドウで、Table.RemoveColumnsを使用して列iを削除しましょう。

LuckyTemplates ランクとカスタム グループ化

次に、「完了」をクリックします。 

LuckyTemplates ランクとカスタム グループ化

テーブルの結合

ネストされたテーブル 1 の新しいバージョンを作成しました。ネストされたテーブル 2 にも同じレイアウトを作成する必要があります。また、そのテーブルには、すべての値が TRUE に等しい除外列を追加する必要があります。 

詳細エディターで、t2 という新しい変数を作成します。Table.AddColumn を使用してカスタム列を追加し、Partitions (1)を呼び出します。次に、Exclude列を追加し、columnGenerator をそれぞれ true に設定し、logical と入力します。 

13行目を編集してt2を返したいと思います。

LuckyTemplates ランクとカスタム グループ化

このようなテーブルを取得する必要があります。

LuckyTemplates ランクとカスタム グループ化

最後に行う必要があるのは、これら 2 つのテーブルを再度結合することです。[詳細エディター]ウィンドウで、 t1 & t2に等しい t という新しい変数を追加します。 

LuckyTemplates ランクとカスタム グループ化

「完了」をクリックすると、以下のような最終テーブルが表示されます。これで、指定した基準に基づいてランク付けおよびグループ化され、上位 5% が除外対象としてマークされたテーブルが完成しました。

LuckyTemplates ランクとカスタム グループ化


LuckyTemplates でのランキング分析: 結合されたデータ セットからの高度な分析情報
LuckyTemplates でのランキングの視覚化 – レポート内のテーブルをフィルター処理するための動的ビジュアル
LuckyTemplates のディメンションとグループ

結論

このブログでは、Power Query でTable.PartitionTable.AddRankColumn、およびTable.RemoveColumns関数を使用する方法を学習しました。サンプル データセットには優先度 1 と 2 の 44 行があり、それらをグループ化してランク付けすることに成功し、上位 5% にそれに応じてマークが付けられました。

これらの関数の使用に関する新たな知識を活用して、次のデータ セットに 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 を使用して数式内に仮想リレーションシップを作成する方法を説明します。