公開日:

データ分析における日付の扱いについて ~その2~

データ分析における日付の扱いについて ~その2~

現在のカレンダーの原型が2000年以上前のローマ時代に作られたものである、というお話を前回書かせて頂きました。前回のブログはこちら
https://www.jeki-ddl.co.jp/blog/データ分析における日付の扱いについて/

この話の出発点が何だったか?もう一度整理すると、分析や集計を行う際、日付が非常に扱い難いということ。具体的には、
① 一年の長さが変わる (閏年が四年に一回ある)
② 月の長さが変わる (大の月と小の月がある)
③ 月内のの曜日の数が変わる

そこで、新しいカレンダーの原点は、もっと規則的なカレンダーに出来ないか? ということになります。カレンダーの中で最小の単位は日です。日を積み上げると週になります。一週間は7日で、曜日の順番が決まっています。次に小さい単位は月です。ところが、週を積み上げても月にはなりません。月と週には関連性がなく、月を単位にすると週が分断さてしまいます。ここが一番の問題です! 即ち、この問題を解決するには、規則性のある週を単位にしたカレンダーを作れば良いのです。「そんなの無理でしょ、一年は365日なんだから」とおっしゃる方もいるかも知れませんが、実は、既にそのカレンダーは存在しています。

ISO WEEK カレンダー

ISO WEEK カレンダーは、日本ではあまり知られていないかも知れませんが、欧米の小売業では広く使われているカレンダーです。『世界の小売業ランキング2019』( デロイト,2019年4月) トップ・テン企業の内、5社がISOカレンダーベースで決算報告を行っています。他にも、アップル、コカ・コーラ、ジョンソン・エンド・ジョンソン、GAP など、世界の著名な企業がこの方式で決算報告を行っています。

ISO WEEK カレンダーは、週の始まりを月曜日とし、1月4日が含まれる週をその年の第一週にします。従って、年の開始日は毎年異なります。12月28日が開始日になる年もあるし、1月4日が開始日になる年も有ります。一年は52週(364日)とし、各週に週番号が振られます。これを四半期に分けて見ていきます。四半期は必ず13週(91日) になります。一期が四半期では長すぎる場合は、一つの四半期を 4週 – 4週 – 5週 に分けたり、4週 – 5週 – 4週 に分けて見ていくのが一般的です。そのため 445カレンダー(454カレンダー)と言われることもあります。 但し、ISOカレンダーにも閏週が5~6年に一回あり、一年を53週とする年があります。閏週を設けることで、グレゴリオ暦とのズレが調整されます。

2019年の ISO WEEK カレンダーは以下のようになります。

一見、余計複雑じゃないか?と思われる方がいらっしゃるかも知れませんが、分析業務を行う時は、このカレンダーが非常に便利なのです! 一年を364日にすることで、四半期は全て同じ日数 (13週, 91日) になります。週は全て月曜日~日曜日の7日間で、週の長さは変わりません。前年との比較は、常に52週前(364日前) と比較していけば良いのです。月の比較は、4週の月と5週の月が出来てしまいますが、その前の4週、5週と比較していけば良いし、週単位の比較は何も問題有りません。単位を揃えることで比較が容易になり、分析時に起こる日数問題のノイズを取り除くことができるのです。

現代人は、週単位に行動することが非常に多いです。会社や学校は土日が休み、定例会議は月曜日10:00~、フィットネスクラブのヨガクラスは木曜日19:00~、金曜日夜は飲み会とか。スケジュールを週単位に決めることは極めて多いです。多くの方は「月」単位に仕事や生活をしているつもりになっていますが、実際には「週」単位に活動しています。会社の会計報告が「月」単位なだけで、仕事や生活は「週」単位に行われているのです。そのため、マーケットも週や曜日で特性が出てくることがほとんどです。売上やマーケティングの分析は、「週」を単位にして見ていったほうが、変化や推移、比較がとっても楽になります。日々の仕事や行動、計画が週単位に行われ、マーケット自体が週というサイクルの上で動いているのに、会社の業績の振り返りや分析は月単位、、、これはナンセンスな話だとは思いませんか? 世界の上位小売業が、ISO WEEK カレンダーをベースに決算報告を行っているは、消費者の動向を捉えて、市場分析に基づいて業務を進め、業績をレビューしていく、という考えに立脚しているからなのです。

分析業務を行う上で、日付の単位を「月」にこだわる必要はありません。一年の始まりを1月1日に固定する必要はないし、月の始まりを1日に固定する必要もないのです。「月」にこだわることは、むしろ重要な変化を見逃してしまうことすらあります。Tableau は、バーション2019.3 から標準で ISO WEEK カレンダーに対応しています。これまでも一部の言語ロケールで使用することができましたが、現行バージョンは、日本語環境でもデータソースの日付のプロパティを変更すれば、直ぐに使用できます。ISO WEEK カレンダーを使って、今までとは少し視点の違ったデータ分析をしてみてはいかがでしょう? 見えてくるものが変わってくると思いますよ。

データソースの日付のプロパティを変更することで簡単に ISOカレンダーへ変更できます。
日付関数の文字列引数に ‘iso-week’ などを指定することで ISO WEEK 番号に変換することも出来ます。

今回は、グレゴリオ暦の「月」という概念を取り払い「週」をベースに見ていくと、実に合理的に物事を分析出来る、というお話でした。しかし、ISO WEEKカレンダーも約6年に一回、53週の年がやってくるので、この時どうするか?の課題はあります。次回は、更に私なりの「現代のカレンダー」を考えてみたいと思います。(つづく)

この記事を書いた人:
森田浩彰
BIエンジニア・Tableau画伯
東京生まれ。趣味はトライアスロン。フルマラソンベストタイムは3時間8分。 (株)ナイキジャパン Sales Operations、ジョンソン・エンド・ジョンソン(株) Sales Planning、(株)アダストリア 情報システム部を経て、現在は(株)クリーク・アンド・リバー社 デジタルマーケティンググループにてBIエンジニアとして活躍。 『データ活用で世の中を良くする』ことを信条としている。