はじめまて。栗原と申します。
お恥ずかしながら、下記の操作に手こずっており、ご協力いただけますと幸いです。
時系列データの平均値算出についてお伺いしたいです。
貿易統計のような月次データを年次表示したグラフにおいて、2020年のみ1~6月の合計値が表示されている状態です。
2020年1~6月の合計値を年率換算するために、以下の方法を検討しているがうまくいかないので、その方法を教示いただきたいです。
<現状>
・すべての年(2014年~2020年)の平均値を求める
・上記平均値に12を乗じる
・おそらくは、平均値算出の段階で2020年1~6月の合計値が12で割られているため、上記で12を乗じた時に、元の1~6月期の合計値に戻ってしまう
なるほど、7/1以降は、値が存在しないわけではなく、0という値が存在していて日付も存在している、というお話ですね。
その場合は、おっしゃる通り、元の式ですと、月数のカウントが6ではなく12と数えてしまいます。
理由は、前回記載しました下記の式は、単純に、年内の月数をカウントしていることが理由です。
- { INCLUDE DATEPART('year', [オーダー日]):COUNTD(DATEPART('month', [オーダー日]))}
なので、7/1以降も日付の値が存在している場合は、「売上が0より多い場合のみ月数をカウントする」という条件を追加すれば丈夫だと思います。
具体的には、下記の式になります。
SUM( [売上] / { INCLUDE DATEPART('year', [オーダー日]):COUNTD( IF [売上]>0 THEN DATEPART('month', [オーダー日]) END)} * 12)
変更したのは、sum内の分母に当たる下記の部分の中の、
{ INCLUDE DATEPART('year', [オーダー日]):COUNTD( IF [売上]>0 THEN DATEPART('month', [オーダー日]) END)}
下記の、太字下線斜体の部分になります。
- COUNTD( IF [売上]>0 THEN DATEPART('month', [オーダー日]) END)}
作成したフィールドをワークシートで見ると、下記の状態になります。
- 「年ごとの月数(変更前)」が、前回と同じ形で月数をカウントしていて12になっています。
- 「年ごとの月数」が、「売上が0より大きい場合のみ月数をカウント」という条件を加えているため、6とカウントしています。
作成したワークブックをTableauPublicにアップしましたので、併せてご確認頂ければと思います。
https://public.tableau.com/profile/.88185021#!/vizhome/28075/1
こちらでご要望の値が計算されるか、ご確認頂ければ幸いです。
なお、今回のように、
- 参照しているデータの状態
- ディメンションの状態や配置
- 表現するグラフの内容
等によって、同じ計算式でも結果が変わってくる可能性がありますので、もし、今回もごご要望通りの値が表示されない場合は、
- ダミーデータで作成されたtwbxファイル
- (可能であれば)実現したい理想形のスクショ、もしくは、理想形が具体的に分かる何か
等を併せて添付していただけると、より具体的にご要望に沿った返答ができるかもしれません。
データの形式さえ同じであれば、中身の数字はダミーで大丈夫ですので、お手数ですが、もし、今回もご要望の形になっていなければ、ご検討いただければ幸いです。
以上になります。
ご不明点等ありましたら、コメント下さいませ。