4 Replies Latest reply on Aug 8, 2019 8:16 AM by Shoma Deguchi

    前年データの取得方法について

    Shoma Deguchi

      コミュニティのみなさま

       

       

       

      表題の件、対象期間内のデータを表示しつつ、前年のデータを取得したいと思っておりますが、

      なかなかうまくいかず、お力を借りれたらと思っております。

       

       

      (サンプルを添付いたします)

       

       

       

      ・要件 

         

        現在、期間をパラメータで指定し、その期間内のデータにするために、表示件数を制御するフィルタを作成しています。

        その範囲内でとあるディメンションごとに計算したい項目があり、LODを用いてそれを表現しております。

        フィルタの実行順序的に、制御フィルタをコンテキストに追加し、範囲内でのLOD計算を作成しているのですが、

        その対象期間の昨年の数値も取得したいと思っており、どのように表現すればよいか悩んでおります。

       

         

      ・サンプルベース

       

           2019年の6月1日~6月30日を対象とした場合、その期間内で、会員Noごとの誕生日とオーダー日の差をとり年齢を作成。

         作成した年齢をビンにし年代のデータを作成後、男女ごとの対象期間内の年代別会員数を作成。

       

       

           その会員数の対象期間の前年データ(今回は2018年6月1日~6月30日のデータ)を用い、対象期間内とその前年の会員数比を作成したい。

       

           ◆行ったこと

                1.個別のカウント(会員No)を行フィールドへ追加。

                2.上記に記した方法で年齢のメジャーを作成し、作成したメジャーから年齢(ビン)を作成。

                3.当年データ(オーダー日が対象期間に収まるデータ)と、前年データ(対象期間から1年引いた期間に収まるデータ)のみを抽出するディメンションをコンテキストフィルタへ追加。

                4.当年データと、前年データに分ける計算フィールドを作成し、列フィールドへ追加。

                5.列フィールドへ性別ディメンションと、2.で作成した年齢ビンを列フィールドへ追加。

                6.個別のカウント(会員No)をラベルに追加し、表計算で当年データと前年データの会員数比を表示。

                7.前年データを非表示にする。

           上記の方法だと、4.の時点で、当年データのみ取ってきたデータと個別のカウント(会員No)の数が一致せず正しい会員数比が表示されません。

       

         

      ・環境

       

       10.5.6

       

       

      ・制限

       

       可能であれば、データソースでデータを作らず、

       ダッシュボード上で計算フィールドなどを使用しデータを作成できればと思っております。

        

       

       

      拙い文章で申し訳ありません。

       

       

      何かいい方法があればご教授ください。 よろしくお願いいたします。

        • 1. Re: 前年データの取得方法について
          Shigeki Konishi

          Shoma Deguchiさん

           

          ワークブックを拝見させていただきましたが、年齢の計算ですが、会員ごとの年齢を平均で求めていますよね?

          これは正し事なのでしょうか?

          各オーダー日の時点での年齢を求めるのが一般的なのかな?と思ったのですが。

          本筋とは関係ない所の疑問ですが、気になったので。

           

          4を行った時、「前年」と「当年」が表示される想定だったとの理解で良かったでしょうか?

          • 2. Re: 前年データの取得方法について
            Hiroaki Morita

            年齢の計算が間違ってますよ。

             

            誤){FIXED [会員No]:AVG(DATEDIFF('year',[誕生日],[オーダー日]))}

             

            正){FIXED [会員No],[オーダー日]:min(DATEDIFF('year',[誕生日],[オーダー日]))}

            • 3. Re: 前年データの取得方法について
              Shoma Deguchi

              Shigeki Konishi さん

               

              早速の返信ありがとうございます。

               

              年齢の件ですが、確かに計算式が間違っていますね。ご指摘ありがとうございます。

               

               

              >4を行った時、「前年」と「当年」が表示される想定だったとの理解で良かったでしょうか?

               

              「前年」と「当年」が表示されているのですが、正しい数値が表示されない。といった状況です。

              4.を行った時、「当年」部分のデータが、コンテキストフィルタで「当年(オーダー日が対象期間に収まるデータ)」のみ取ってきたデータの数値と一致せず困っております。

              何か解決策はありますでしょうか?

              • 4. Re: 前年データの取得方法について
                Shoma Deguchi

                @Hiroaki Morita さん

                 

                 

                年齢の計算式、確かに間違っておりました。

                ご指摘ありがとうございます。

                 

                表題の件、年齢の計算式を

                 

                {FIXED [会員No],YEAR([オーダー日]):min(DATEDIFF('year',[誕生日],[オーダー日]))}

                 

                とすることで、無事解決いたしました。

                 

                回答して頂いた皆さん、ありがとうございました。