日付データを半期毎でグループ化する

メモ:  Category:blog

Tableau で、半期ごとのグループを作成する方法をメモしておきます。

動作環境:

  • Tableau Desktop 2020.2

上期・下期のグループを作成

Tableau では、日付のフィールドは自動的に「年」,「四半期」,「月」,「日」,・・・と細分化(ドリルダウン)させることができるのですが、「上期」,「下期」といった括りはありません。今回、在庫の出庫情報を半期単位に集計したいというニーズがあり実際に作成してみました。

次のような「品目番号」,「出庫日」,「出庫数」のデータを用意します。

出庫実績データ

メニューにある「分析」 - 「計算フィールドの作成」を選択します。

計算フィールドの作成メニュー

表示されたダイアログに次の式を入力します。

IF DATEPART('quarter', [出庫日]) < 3 THEN '上期' ELSE '下期' END

計算フィールドの名前を「Semester」として「OK」ボタンをクリックします。

計算フィールドの作成

DATEPART 関数は、指定した日付値から特定の日付単位(年、月、日など)の「値」を取り出すことができる関数で「quarter」を指定することでその日付が四半期のどこにあたるか返してくれます。上記式では、返される値が「1」または「2」の時「上期」とし、それ以外は「下期」としています。

式に間違いがなければ、データペインの[ディメンション]に「Semester」と追加されます。

ディメンションの追加状態

テキスト表で結果を確認してみるとなんとなく「上期」・「下期」と分類されていることが確認できます。

テキスト表による結果確認

「なんとなく」というのは、月の単位までドリルダウンしてみると次のように表示されます。 Tableau ではデフォルトで1月~3月が第一四半期となっており、会計年度の開始月が1月であれば問題なのですが4月始まりの場合は問題が出てきます。

月単位までドリルダウンしたテキスト表

会計年度の開始月

Tableau には、会計年度の始まりとなる月を設定する機能があります。会計年度の開始月を設定するには、データソースを右クリックしポップアップメニューにある「日付のプロパティ」を選択します。

データソースの日付に関する設定

データソースに対して設定可能な4つの項目が表示されるので必要に応じて設定します。

日付に関する設定

会計年度の始まりとなる月は、「会計年度の開始」で指定しますが今回の例では設定内容が反映されませんでした。続けて、日付型のディメンション(ここでは出庫日)を右クリックし、[既定のプロパティ] - [会計年度の開始]と辿り始まりとしたい月を選択します。

項目に対して日付に関する設定

4月を開始月と設定したので、4月から6月が第一四半期になっていることが確認できます。

会計年度の開始月反映

開始月は4月となりましたが、年度が「2018年度」となっています。2017年4月からのデータを用意したのですが Tableau では2017年4月は「2018年度」となってしまいます。

4月から9月を上期とする

話を戻して、 DATEPART 関数を使った「上期」・「下期」の作成ですが「会計年度の開始」を4月に設定しても1月から3月が第一四半期となってしまいます。 Tableau 2020.2 のヘルプには、次のように記載されており会計年度の開始を設定しても日付関数では無視されてしまいます。

日付関数は、構成された会計年度の開始を考慮しません。

そこで、次のように式を変えてみます。

IF DATEPART('quarter', [出庫日]) = 2 OR DATEPART('quarter', [出庫日]) = 3 THEN '上期' ELSE '下期' END

式を変更した結果、4月から9月が上期となり期の括りは狙った感じになっています。

式の変更

しかし、年度については1年ずれて「2018年度」となってしまいました。

少し長くなってきたので、解決案については別の記事にしたいと思います。

bluenote by BBB