【Tableau】日付を特定の期間で絞り込むには ~例題形式~
noteをお読みいただきありがとうございます。Tableau活用歴約1年のなつみかんです。この記事では売上などのデータを特定の期間で絞り込むための方法について例題形式でご紹介します。
前提:Tableau Desktop 2020.3.5/付属のサンプルスーパーストア.xlsxを使用しています。
【例題①:過去6か月のカテゴリごとの売上を表示してください。】
解答:フィルターの相対日付を使用します。
(作成手順)
1.カテゴリごとの売上のグラフを作成します。
2.オーダー日をフィルターにドラッグ&ドロップし、相対日付を選択します。
3.下記の通り設定を変更します。
注意点:サンプルスーパーストア.xlsx の最新のオーダー日は2020年12月31日のため、実質2020年11月1日から12月31日までのデータが表示されます。
【例題②:2020年12月31日を基準日とし、過去3か月のカテゴリごとの売上を表示してください。】
解答:任意の日付から過去3か月のデータに絞り込むために計算式を使用します。
(作成手順)
1.基準日の計算式を作成します。
※MAX([オーダー日]) を使用してもOKです。
2.基準日から3か月前の日付を求めます。
※DATEADD("month",-3,[基準日]) と記入するとデータ型が日付と時刻になるため、その場合は「データ型の変更」から日付を選択しましょう。
3.オーダー日を基準日から過去3か月に絞り込むための計算式を作成します。
4.グラフを作成します。
・カテゴリごとの売上のグラフを作成します。
・フィルターに3で作成した「過去3か月」をドラッグ&ドロップし、真を選択します。
補足:本当に過去3か月に絞られているのか不安なときは以下の方法で確認すると分かりやすいです。
・オーダー日を右クリックしながら行にドラッグ&ドロップし、「不連続」を選択します。
・売上をマーク>テキスト、「過去3か月」をフィルターに設定します。
【例題③:2020年12月14日を基準日とし、2020年10月1日から基準日の月末までの期間の売上を表示してください。】
解答:DATETRUNC関数を使用してN月の1日や月末の日付を求めます。
(作成手順)
1.基準日の計算式を作成します。
2.2020年10月1日、基準日の月末を求める計算式を作成します。
(式の解説)
まず、「DATEADD("month",-2,[基準日 (例題3)])」で基準日から2か月前(=2020年10月)を求めます。
そのままだと基準日の日の部分によって10月14日や30日になってしまいますが、DATETRUNCを使用して月単位で切り捨てすることにより、基準日の日の部分に関係なく10月1日(=月初めの日付)を算出できます。
では、上記の考え方を応用して基準日の月末の式も作成しましょう。「DATEADD("month",1,[基準日 (例題3)])」で基準日から1か月後(=2021年1月)を求めます。
「DATETRUNC("month",DATEADD("month",1,[基準日 (例題3)]) )」と記入すると2021年1月1日(=基準日の翌月の1日)が表示されるので、-1する必要があります。
(参考)
3.オーダー日を2020年10月1日から基準日の月末に絞り込むための計算式を作成します。
4.グラフを作成します。
・売上の棒グラフを作成します。
・フィルターに3で作成した「2020年10月1日から基準日の月末まで」をドラッグ&ドロップし、真を選択します。こちらで完成です。
まとめ:データ分析で日付(=いつ)の情報は重要ですよね。
特定の期間のデータを表示するにはどうしたらよいのか?と困っている方にも参考にしていただければと思います!
ここまでお読みいただきありがとうございました。
■参考サイト
・DATETRUNC関数について(Tableau公式サイト)
・日付に関するTableauのブログ記事
https://dev.classmethod.jp/articles/datefilter/
この記事が気に入ったらサポートをしてみませんか?