動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

現在、私は DAX について複雑になってきていますが、それは LuckyTemplates 内でこの数式言語の力を示すのが楽しいからです。あなたにもそこに到達してほしい。だからこそ、私は常に実装について実践的なことを考えたいと思っています。動的セグメンテーションは、LuckyTemplates での分析から抽出できる非常に価値のある商業的な洞察の好例です。このチュートリアルの完全なビデオは、このブログの下部でご覧いただけます。

どの顧客グループが製品を購入しているかを確認したいとします。顧客グループと言うとき、それは上位の顧客ですか、中位の顧客ですか、それとも下位の顧客ですか? この「グループ化」は生のテーブルには存在しないため、これを解決するのは実際にはそれほど簡単ではないことがすぐにわかります。サポート テーブルを使用して作成する必要があります。このブログ投稿でその方法を示します。

この投稿では、どの顧客グループが利益に最も貢献しているかを視覚化する方法を説明します。ここに至るまでにいくつかの手順を実行する必要がありますが、これは、時間を遡って上位 5 位、上位 5 ~ 20 位、および残りの順位を確認したい場合には、非常に優れた分析になります。の顧客が利益に貢献しています。

このブログ投稿で説明するのと同じテクニックを使用して、実際に独自の分析を行うことができます。データモデルを活用することで、このようなダイナミックなビジュアルを作成することができます。たとえば、このビジュアライゼーションでは、トップ 5、ランク 5 ~ 20、および残りのグループの貢献度を調べています。

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

すべてが動的であるため、販売している各製品をクリックして、それぞれの異なる製品の違いを確認することもできます。一部の製品がトップ 5 に完全に独占されていることがわかりますが、おそらくその特定の製品では実際にはあまり売れていないためです。

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

一方で、売れ筋の商品をクリックすると、もう少し流通性が高いことがわかります。この種の分析からは、このような優れた洞察が得られます。

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

目次

総利益の計算

ゼロから始めて、実際にこの点に到達する方法を検討してみましょう。まず最初に、簡単な計算を設定する必要があります。

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

まず、総売上高から総コストを引いた値を使用して、総利益を計算します。

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

ランキング用のテーブルの作成

まずはデータモデルに戻りましょう。上部には、Dates テーブル、Products テーブル、Regions テーブル、Customer テーブルというコア データ モデルがあり、これらはすべて下部の Sales テーブルに続きます。行われたすべてのトランザクションは Sales テーブルに格納され、そこで計算をやり直します。

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

考えてみると、ここのモデルには、誰がトップ 5 に入っているのか、誰が 5 位から 20 位までにランクされているのか、あるいは他の全員が誰なのかを示すものは何もありません。つまり、それを作成する必要があります。また、それを動的にしたいということも忘れないでください。

したがって、これを行うテーブルを作成する必要があります。グループとその MIN と MAX を作成します。トップ 5 の場合、最小値は 0、最大値は 5 です。ランキング 5 ~ 20 の場合、5 と 20 などになります。次に、Dax 式を通じてこのテーブルをデータ モデルに統合し、計算のコンテキストに基づいて顧客を動的にランク付けします。

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

グループ別の顧客利益の計算

グループ別の顧客利益を調べる方法を見ていきます (4:00)。ここで実際に何が起こっているのかを簡単に見てみましょう。まず最初に、先ほど説明した総利益の尺度である総利益を計算します。

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

しかし、私たちがしなければならないのは、各顧客がどのランクに属しているのか、そしてテーブルに作成したばかりのカスタム ランクのそれぞれに顧客が入っているかどうかを確認することです。そうした場合、トップ 5、ランク 5 ~ 10、または残りによってそのグループに入れられます。

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

これは、これらの計算を実際に作成または実行するために使用するロジックです。

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

ここで何かを簡単にモックアップして、月と年をテーブルにドラッグしてみましょう。それらの月ごとの総売上高を確認できるようになります。

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

グループ別の顧客利益の使用

顧客グループをテーブル内にドラッグしても、正しい結果は得られません。これらの数字を詳しく調べてみると、すべてまったく同じであることがわかります。したがって、私たちがしなければならないのは、グループ別の顧客利益を使用することです。これにより、ランキングごとの各利益が私たちに届けられます。

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

必要なのは、より具体的な期間を掘り下げて、2016 年の最後の 6 か月にフィルターを適用することです。

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

いくつかのデータラベルを付けると、これは合計利益を計算しているが、それを顧客グループごとに分割していることがわかります。

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

テーブルの視覚化

グラフを作成してパーセンテージを見てみましょう。必要なのは、ビジュアライゼーションを100% 積み上げ縦棒グラフに変更することだけです。

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

これにより、これらのカスタム グループからの売上の割合が得られます。視覚化を少し変更して、これをドロップダウンに変えます。次に、製品ごとの売上を示す別のビジュアライゼーションを作成します。

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

この計算は、どのようなコンテキストに置いても自動的に調整されます。したがって、2016 年のすべての月を調整して含めると、月ごとに状況がどのように変化するかを確認できます。

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

左側の表のいずれかの製品をクリックすると、当社の利益のどれだけが特定のグループによって決定されているかをパーセンテージベースで動的に確認できます。

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

利益構成の見える化

さまざまな製品をすべてクリックすると、販売している各製品の経時的な利益の構成がわかります。ポートフォリオ全体の観点から見ることができます。

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

あるいは、上位 3 つの製品を掘り下げて、2015 年末に落ち込みがあったことを確認することもできます。大規模な顧客が何も購入していないのに比べて、小規模な顧客の割合がこれらの製品を購入しているのはなぜなのかを尋ねることもできます。

動的セグメンテーション: 高度な DAX を使用して顧客をグループに分割する方法

このようなことを営業担当者や経営陣から聞くと、非常に良い議論になるのは明らかです。この DAX 式は、さまざまなシナリオで実際に再利用できる非常に優れた手法です。この動的セグメンテーション手法を実際に活用し、実際に自分自身や行っている分析にどのように利用できるかを検討することを強くお勧めします。

結論

ご覧のとおり、少し複雑ですが、非常に強力なものです。この分析は、製品全体だけでなく、特定の製品を詳しく調べて、その構成がどのように異なるかを比較することもできます。この手法には、 「動的セグメンテーション」という専門用語があります。それは、結果を何らかのロジックに通すことで結果を動的にセグメント化し、それを独自のパイに分割しているためです。

の分析シナリオの解決コースで、この特定のテクニックを包括的に説明します。詳細については、こちらをご覧ください。このビデオでは、これを自分で実装する方法と、レポートでどのように表示されるかについて概要を説明します。

これの実装を頑張ってください!


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