8 Replies Latest reply on Apr 6, 2017 8:25 PM by Shinichiro Murakami

    簡易表計算:比較対象が無い場合の差の表示

    Kazuhiro Miyake

      初めて投稿させて頂きます。Miyakeと申します。

       

      下記のようなデータがあり、例えば締め区分2月と3月の差分として

      品目Bであれば1000 -500 = 500と簡単に簡易表計算で表示できます。

       

      締め区分品目数量
      2017年2月締めA300
      2017年2月締めB500
      2017年3月締めB1000
      2017年3月締めC200

       

      ご相談させて頂きたいのは、

      同条件で

      ・品目Aは3月締めを0とみなし、 0 - 300 = -300 の差を出したい

      ・品目Cは2月締めを0とみなし、200 - 0 = 200 の差を出したい

      これを1つのシート内でまとめて表示するにはどうすれば良いか?

      という内容になります。

       

      *実際は1~12月締めと締め区分が増えていき、その任意の月間での比較をするようになります。

      元データとして、比較先(元?)が無い場合に0レコードを作成する手も考えましたが、

      全月間の組み合わせを考慮して作る必要がありそうで、Tableau上だけでなんとかする方法が無いものか悩んでおります・・・

       

      お手数おかけしますが、ご意見頂けると幸いです。

      よろしくお願いいたします。

        • 1. Re: 簡易表計算:比較対象が無い場合の差の表示
          Shinichiro Murakami

          Miyake さん

           

          ひとまず、表のFormatであれば、以下のようにできました。

          AだけFilter とかを試してみましたが、ちょっとややこしどうで、すぐにはわかりませんでした。

           

           

          [Value2]

          zn(LOOKUP(sum([数量]),0))

           

           

          [Delta  2]

          zn(sum([数量]))-zn(lookup(sum([数量]),-1))

           

           

           

           

          データがないときは、ややこしいことが多いです。

          できれば、元データにゼロが入ってるのが一番扱い安いです。

           

           

           

           

          むらかみ

          • 2. Re: 簡易表計算:比較対象が無い場合の差の表示
            Kazuhiro Miyake

            MURAKAMI様

             

            MIYAKEです。早々のご返信ありがとうございます!

            依頼者の要望が品目、締め区分を行にまとめて、

            差分のランキングを見たい、ということだったので

            行列に分けて同様のランキングができないかも検討してみます。

             

            品目、締め区分を行にまとめる場合、

            締め区分に対しての表計算で

            【表計算で差分がとれるもの】

            ZN(sum([数量])) - LOOKUP(ZN(sum([数量])),-1)

             

            【差分がとれないもの】

            if isnull(LOOKUP(sum(数量), -1)) then

                ZN(sum(数量))

            end

             

            に分けてどうにかできないか考えてみましたが、

            2月締め 3月締めで比較する場合の2月締めしかない場合、値をマイナスにする

            という判定で詰まってしまいました…(添付:締め区分2つ選択の差(2)シート)

             

            なかなか一筋縄ではいきません・・・

            • 3. Re: 簡易表計算:比較対象が無い場合の差の表示
              Shinichiro Murakami

              Miyake さん

               

              インタラクティブなChart作成でなく、2次的な解析が必要なら、いっそのことスパッとあきらめましょう。(笑)

              あきらめるのは、ダイナミックに変わるChartで、その都度作成が許されるなら、以下のアプローチが取れます。

               

              コンセプトとしては、0 を含むデータを作成するのに、タブローそのものを使うというものです。

              私の中ではある種「禁じ手」あるいは 「最終手段」的なものではあるのですが、広範囲に応用可能なのも確かです。

               

               

               

              以下のテーブルを作成。

               

              [Value2]

              zn(LOOKUP(sum([数量]),0))

               

               

               

               

               

               

               

               

               

               

               

               

               

               

               

               

               

               

               

              あとはデータがあるので、お好きなように加工できると思います。

               

              サーバー環境があるなら、このClipboardを特定のサーバー上のデータソース名に上書きすれば、データとして共有/継続的なアップデートも可能です。

               

              分かりづらければご返信ください。

               

               

              むらかみ

              • 4. Re: 簡易表計算:比較対象が無い場合の差の表示
                Kazuhiro Miyake

                MURAKAMI様

                 

                MIYAKEです。返信が遅れて申し訳ありません。

                任意のタイミングでデータ更新しているので、

                ご提示頂いた方法で対応できそうな気がします。

                 

                1点、継続的なアップデートについてなのですが、

                1.大元のデータソースを更新

                2.Value2式を適用したワークシートをデータとしてコピー

                3.データソースの置換 で、前回作成したClipboard*****のデータソースを上書きする?

                ようなイメージでしょうか?

                 

                認識間違っていたら補足頂けますでしょうか?

                お手数おかけしますがよろしくお願いいたします。

                • 5. Re: 簡易表計算:比較対象が無い場合の差の表示
                  Shinichiro Murakami

                  Miyake さん

                   

                  3. に関しては、

                  最初に、Clipboard1*** のデータソースをサーバーにPublish。

                  (サーバー上のファイル名が付与されます)

                   

                  その後、更新後のデータをコピペしてできたclipboard2***のデータソースを、再びサーバーにPublish。

                  この際、サーバー上のファイルを上書きする という流れです。

                  もちろんその前に、新規データで、ワークシートから、サーバー上のデータソースに接続し、

                  ビューを構築しておく必要があります。

                  2度目からは、データソース自身が上書きされるので、ワークシート側から、データソースの更新を

                  行えば、ビュー自身がリフレッシュされます。

                   

                  適当に試行錯誤しながらやってもらったらわかるようになると思います。

                   

                  サーバーを使わないなら、Clibboard1**  からClipboard2 にデータソースの置換を行うことになります。

                   

                  しかしながら、データソースの置換は問題の多い手順なのでお勧めしません。

                  Replace Datasource tableau ででもググれば、過去Threadが見れます。

                   

                  村上

                  • 6. Re: 簡易表計算:比較対象が無い場合の差の表示
                    Shinichiro Murakami

                    ついでに、もしよければ、解答を「正解」にマークしてもらえるとありがたいです。

                     

                    むらかみ

                    • 7. Re: 簡易表計算:比較対象が無い場合の差の表示
                      Kazuhiro Miyake

                      Murakami 様

                       

                      丁寧なご回答ありがとうございます。

                      データソースのパブリッシュ時に上書きするということで理解しました。

                       

                      既存の案件ではないか?と思いながら探してみるのですが、

                      探すセンスがないようで・・・Replace Datasource tableauでも確認してみます。

                       

                      お世話になりました。「正解」つけさせていただきます。

                      • 8. Re: 簡易表計算:比較対象が無い場合の差の表示
                        Shinichiro Murakami

                        タブローのサイトは、検索性が悪いですね。

                        ようやく見つけました。

                         

                        FAQ:  Replace Data Source

                         

                        が、いっぱいあり過ぎて、ちょっと面倒かもしれないです。取り急ぎ。

                         

                        むらかみ