LuckyTemplates の日付なしの累積合計 – Advanced DAX

LuckyTemplates の日付なしの累積合計 – Advanced DAX

ここでは、日付やインデックス列を使用せずに累計または累計を計算する方法を説明します。このチュートリアルの完全なビデオは、このブログの下部でご覧いただけます。

実際、LuckyTemplates フォーラムでこれについて質問した人がいました。投稿したメンバーは、必要な情報に対して非常に複雑なアルゴリズムが実行されていることに遭遇しました。累積合計または累計の要件はありましたが、日付はなく、単なる乱数生成器のように見えました。しかし、最初の結果、2 番目の結果、3 番目の結果などから累積合計を生成する必要がありました。それが、解決策を見つけるためにいくつかのアイデアを試してみた理由です。 

これは簡単ではなく、公式に入ると少し複雑になる可能性がありますが、解決策は動的であり、それが可能であることさえ驚くべきことです。これは、累積合計や同じ性質のものを必要とするさまざまな環境間で複製できるものです。

これが今日取り上げる例です。

LuckyTemplates の日付なしの累積合計 – Advanced DAX

この場合、数値が最高から最低の順に並べられた合計売上があります。ここでは累積合計を求めているので、ランク 1 をランク 2 に加算し、次にランク 3 をそれに加算するなど、テーブルの下に進むにつれて合計を確認したいと考えています。

場合によっては、自分に合ったビジュアライゼーションを選択できることに注意してください。たとえば、ウォーターフォール チャートを使用して、必要な結果を得ることができます。

ただし、この具体的な例では、この種の視覚化は実際には機能しません。

ここで、日付とインデックス列がない場合でも累積合計を取得する方法の手順に進みましょう。

目次

インデックスの作成

ランダムな値から累計を作成することは不可能だと思います。したがって、最初に行う必要があるのは、インデックスを作成することです。このために、動的なインデックス列を簡単に作成できるようにするため、What-If パラメーターを使用します。

LuckyTemplates の日付なしの累積合計 – Advanced DAX

したがって、これをランキング指数と呼ぶことにします。1 から 200 まで、1 ずつ増分してみましょう。ページにスライサーを追加する必要はありません。

このステップでは、そのインデックスをモデルに取り込みます。恋愛やそれに類するものを介して結合することはありません。これは、後で行う計算の一部をサポートするためのものです。

テーブルの作成

ここで、これをテーブルにドラッグして、数値を 1 から順に確認できるようにします。

LuckyTemplates の日付なしの累積合計 – Advanced DAX

ここで実際に作成したいのは、値を表示する結果ですが、実際には列ではありません。したがって、メジャー内の値を返します。これを行うには、別のメジャーを作成し、それを Product By Rank と呼びます。

LuckyTemplates の日付なしの累積合計 – Advanced DAX

ここで式は少し複雑になりますが、それでも非常に実行可能です。

そこで、CALCULATE 関数を利用して、テキスト値を返します。次に、 SELECTEDVALUE 、 Product Nameを使用し、複数の値を使用します。次に、VALUES 関数と製品名によるフィルターを使用します。

ここで追求しようとしているのは、ランキング指標値です。そこで、すべての製品に対して RANKX を実行し、次に Total Sales を降順で実行します (最初のテーブルがそのようにフィルター処理されているため)。

実際にメジャーを作成したので、What-If パラメーターからランキング インデックス値が自動的に生成されます。 

これをテーブルに持ち込みましょう。実際にすべてのランクに対してこれらの結果が返されていることがわかります。これで、ランキング インデックスと製品別ランキングの両方が得られました。

データの複製

どの製品がどのようにランク付けされているかを示す表ができたので、特定の各製品の総売上高がいくらになるかを調べたいと思います。そのためには、古いテーブルから新しいテーブルに総売上高を複製する必要があります。

ただし、今回は、データ モデルの自動フィルターを利用することはできません。メジャーの実際の結果によってフィルター処理します。

そのためには、Product Sales と呼ばれる新しいメジャーを作成する必要があります。そこで、総売上高を計算してから、新しいフィルターを使用して別のコンテキストを作成します。これは、数式が製品名で値をフィルタリングすることを示していることを意味します。次に、先ほど作成したこの製品ランキングを使用して、特定の製品名のみのフィルターを作成します。

さて、このフィルターを使用して製品 63 を見ると、製品 63 の売上が表示されます。つまり、このセクションでは具体的な対策を検討しながらデータを複製しました。

累積合計の作成

今回はこのランキング指標をもとに累計を作成していきます。これにより、LuckyTemplates のさまざまな機能をどれだけ活用できるかがわかります。

そこで、新しいメジャーを作成し、それを「Cumulative Product Sales」という名前にします。ここでは必ず正しい変数を使用してください。この例では、簡単にするために 1 つだけを使用します。これをインデックス ランクと呼び、ランキング インデックス値を参照します。

LuckyTemplates の日付なしの累積合計 – Advanced DAX

以下の式を見ると、かなり複雑であることがわかります。SUMX関数を利用し、フィルターを実行してから、製品に対して SUMMARIZE 関数を使用しました。 

これにより、1 行目、2 行目、3 行目、4 行目、5 行目などを実際に後ろから見ることができる動的なテーブルが作成されます。たとえば、ランク 5 より下のランキング結果が必要な場合は、合計を含むテーブルでそれがわかります。

また、この特定のテーブルで行っていることは、特定の顧客ごとの売上を表示していることもわかります。また、その顧客の売上ランキングも参照したいので、実際に別の RANKX を入力し、[すべての製品]、[総売​​上高]、[説明] の順に移動する必要があります。

ここで最後に行う必要があるのは、売上ランキングがインデックス ランク以下であるかどうかに基づいて、この特定のテーブルをフィルタリングすることです。これをテーブルに取り込むと、これが実際に累積合計を作成していることがわかります。


LuckyTemplates で DAX を使用して動的な累積合計を作成する
LuckyTemplates での累計: DAX 式を使用して計算する方法
LuckyTemplates で異なる月にわたる累積情報を比較する

結論

今日、私たちはいくつかの重要な学びを経験しましたが、どのようにしてこれらすべての新しい対策を作成できたのかは本当に驚くべきことです。 

基本的に、最初のテーブルを仮想的に再作成することができ、必要なデータに応じてフィルタリングできるようになりました。そこで、売上ランキングが必要だとしましょう。ここのインデックスランキングの下にそれが表示されます。

ここで行ったもう 1 つのことは、このテーブルですべての行または製品を評価できるようにしたことです。まさにこのフィルターが機能する理由です。したがって、行 1 ~ 5 を確認するだけで、その特定のテーブルの売上を取得できます。次に、それを 15 行まで拡張し、その 15 行すべての売上をカウントアップします。このリストを下位に移動するときにこれを動的に実行し、累積合計を継続的に取得できるようにします。

この解決策は、日付やインデックスがない場合だけでなく、他の同様の状況にも適用できることに注意してください。これが必要なユニークな例を見つけて、それを活用する方法を見つけていただければ幸いです。

***** LuckyTemplates を学習していますか? *****







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