LuckyTemplates で DAX を使用して購入間の日数の差を計算する方法

LuckyTemplates で DAX を使用して購入間の日数の差を計算する方法

このチュートリアルでは、LuckyTemplates の DAX を使用して購入間の日数の差を計算する方法を学習します。このトピックは LuckyTemplates サポート フォーラムから来たもので、私がどのように解決したかを紹介します。これは興味深いシナリオであり、ビジネスの世界では非常に一般的です。このチュートリアルの完全なビデオは、このブログの下部でご覧いただけます。

LuckyTemplates で DAX を使用して購入間の日数の差を計算する方法

この例では、何度も購入した顧客を対象としており、購入日間の違いを確認したいと考えています。

重要なのは、DAX 数式を簡素化することです。 

私は常に、メジャー分岐テクニックを利用し、正しい DAX 関数を使用して組み合わせることにより、数式を短くシンプルにすることをお勧めします。モデルに複雑な数式は実際には必要ありません。複雑なシナリオで使用する手法の 1 つは変数 ( ) であり、このチュートリアルで説明します。

目次

サンプルデータセット

まず、モデルのセットアップを見てみましょう。これは私が作成した単なるデモ データ セットです。この場合、「購入日」列に注目します。作成する必要がある 1 つのものは数値 インデックス列です。ロジックを簡素化するためにこの列を処理するためです。

LuckyTemplates で DAX を使用して購入間の日数の差を計算する方法

したがって、ここで任意のフィルター (顧客、製品、場所など) を適用して、顧客が最後に購入した日 と前の購入日との差を計算できるようにしたいと考えています。この例では、場所に動的フィルターがあります。場所 ID をクリックするとデータが変更され、選択した場所の結果が表示されます。

LuckyTemplates で DAX を使用して購入間の日数の差を計算する方法

このテーブルには、注文 ID、顧客 ID、特定の場所における顧客の購入日、および購入間の日数の差が表示されます。ここでもう 1 つ注意すべき点は、1 日に 2 つの購入がある場合、 2 番目の日付は前日と変わらないため、ゼロになる必要があるということです。

LuckyTemplates で DAX を使用して購入間の日数の差を計算する方法

購入間の差異を計算するための DAX 式

それでは、式を見てみましょう。ここでは多くの変数が利用されているため、もう少しロジックを検討する必要がある場合には、これを強くお勧めします。後で数値を監査して、何が起こっているのかを理解するのがはるかに簡単です。

LuckyTemplates で DAX を使用して購入間の日数の差を計算する方法

ここでのすべての結果は個別に計算されることに注意してください。したがって、このテーブル内のすべての結果または行で、これらの変数が何を計算しているかを解明する必要があります。たとえば、2016 年 8 日中 7 日の結果は 12 (購入の最終日である 7 月 26 日の間の日数) です。

LuckyTemplates で DAX を使用して購入間の日数の差を計算する方法

を使用してインデックス番号 ( IndexNum ) (この場合は 430)から開始します。次に、同じこと (インデックスの MAX) を計算して前のインデックス番号 ( PreviousIndexNum ) を計算しますが、 内の関数を使用して計算するコンテキストを変更します。

を使用して現在の日付 ( CurrentDate )を計算します。この例の現在の日付は、2016 年の 8 日の 7 日です。最後の変数は前の日付 ( PriorDate ) ですが、すでに PreviousIndexNum があるため、これは簡単に把握できます。

式の 2 番目の部分 ( ステートメント) は、作成した変数を単純に使用し、最初の日付を 0 として特定します。次に、PriorDate から CurrentDate を減算して、 12 日の差を取得します。

これが、LuckyTemplates での購入間の日数の差を計算する方法です。


LuckyTemplates の最終購入日: 顧客が最後に購入したのはいつですか?
LuckyTemplates で複数の日付を操作する方法
LuckyTemplates で DATESBETWEEN を使用してローリング合計を計算する

結論

ここでメジャー分岐がどのように機能するかを理解していただければ幸いです。1 つの変数 (IndexNum) から始めて、それを使用して次の変数を計算する、というようにしていきました。 

この作業に取り組むのは本当に楽しかったし、これが多くの人に役立つと確信しています。これは、日数の差を計算する必要がある一般的なシナリオです。買い物やイベントの合間に発生する可能性があります。

このトピックについて詳しく知りたい場合は、ビデオと以下のリンクをご覧ください。

乾杯!

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