Bi-Bo-6

Bi-Bo-6

記憶を記録 feat. 宇田川藍

時系列データでいろいろなグラフを作る(CSV更新回数編)

都道府県別新型コロナウイルス感染者数マップ」というものを作り、日々更新を続けております。

aimerci.hatenadiary.jp

リリースした2月16日時点では46件だった症例数も、4月29日深夜時点で14,160件と、膨大な数になってしまいました。ポストコロナはいつになるだろうか…。

 

更新作業では、自治体ごとに公表情報(内容そして様式)が違うものを平準化および一元化するために結構な手作業が発生しています。しかし私自身、自分の会社での日常業務もありますし、特に4月下旬のここ1週間ほどは思うように作業の時間をとることが出来ず、皆様にご不便をおかけすると共に、大変歯がゆい思いをしていました。4月29日深夜にやっと、データ更新が追いついたところです。

 

データ更新をしていて思ったこと。それは、「こんなに同じ作業を、2ヶ月間以上、土日祝関係なく毎日やったことって、人生で初めてかもしれない」という不思議な気持ち。

そこで今回は、「CSVファイルの更新回数」をテーマにいろいろなグラフを作って、ここ数ヶ月の作業を振り返ってみたいと思います。

 

プロジェクト概要

CSVファイルの更新履歴」をテーマにグラフを作る

 

対象データ

対象期間は3月1日〜4月30日、1128回分の更新履歴

 

目標

・時系列データの扱いに慣れよう

・自分の作業をタイムスタンプ付きで振り返る機会は少ない、新たな気づきを得よう

・つまりは反省会

データの整形

今回は、Dropboxの更新履歴一覧を使用します。こんな感じでファイルがアップロードされた日時の記録が残っています。このファイルは3月1日から使用しているということで、1128回分の更新記録が残っていました。

f:id:aimerci13:20200430023429p:plain

まずはこれをExcelにコピペ。関数を使って要素を切り出し、X軸に使えそうないくつかのパターンを作ってみます。

" 2020年3月1日 19:55 "の場合……

  1. 2020(年)
  2. 3(月)
  3. 1(日)
  4. Sun(曜日)
  5. 2020/3/1(年月日)
  6. 3/1(日付)
  7. 19:55(時間)
  8. 1(更新回数=全部1)

こんなもんで足りるかな?

f:id:aimerci13:20200430024533p:plain

これで一旦csvとして保存。下ごしらえは完了です。

 

グラフを作るためのツールは ChartBlocks に決定

最初はExcelで作ろうと思ったのですが、ここでもう一歩勉強したいなと思い、未経験のチャートツール(Webサービス)を使ってみることにしました。

最低限のサービスが無料で使えること、UIが優れていること、シェア機能が優れていることなどを鑑みて、いくつかのサービスの中からChartBlocksに決定。

Excel作成のグラフ画像に比べて便利そうな点

・ウィザードでグラフを作れる

・Embed機能が便利(埋め込み後の更新も同期される)

ベクターデータになる

・マウスオーバーで出るツールチップ(ポップアップ)がかっこいい

・グラフ配置、余白の調整が簡単

・コミュニティへの投稿も可能 

www.chartblocks.com

 

グラフとコメント

それでは、作ったグラフを並べながらゆるゆると批評していきます。

曜日別、更新回数

まずは、曜日別の更新回数。水、金、土の3日間の更新回数が目立ちます。

仮説1 症例の公表数に関係する?(公表数が多い=こまめに更新する)

仮説2 月・火は自社業務を優先する場合が多い?

仮説3 私的な予定(主に子育て関係)との兼ね合いで確保できる作業時間が変わる? 

こんな感じでグラフを見た感想を事実とか仮説として書き残します。明確な数字をもってこれないので、検証はしません。

  

日別、更新回数

次は、日別の更新回数。マウスオーバーで件数が出ます。

4月5日の54回、4月29日の50回が目立ちます。ボトムとしては4月22日、26日の4回(!)。

事実1 4月20日〜30日は今までの全期間で最も更新回数の少ない期間となった(ただし、更新件数が少ないことを意味しません)

仮説1 4月に入ったころから、更新回数が増えた="更新頻度"が増えた?

仮説2 2〜3日程度のスパンで、「更新回数が多い日&少ない日」を繰り返しているが、これは他業務との兼ね合いか、稼働力の問題か?

 

時間別、更新回数

左から0時→24時で集計します。これは本来、1時間単位で丸める(集計する)ような下準備をしたほうがメリハリのある表現ができるのかもしれません。

仮説1 16時〜22時頃に更新作業多い=ここが公表時刻であることも多い?

仮説2 夕食をゆっくり食べている日がほぼないのではないか

仮説3 寝不足気味ではあるが、夜中は比較的眠れているはず

  

月別、更新回数

症例が増えていっても、更新回数はそんなに増えない(増やせない)ように見えます。といっても、488→640で3割増。152回で1日あたり5回増。60日間で1128回ということは平均で1日18回更新ですから、この「5回」を稼働時間に落とし込むと充分重たいと考えられます。限界は近い。

 

まとめ

時刻をキーにしようとしても、上手にXやYに当てはめることが出来ませんでした。4桁の数字にする1時間単位で集計をしておくなどの工夫をしたほうがいいかもしれません。もうちょっとヒートマップ的と言いますか、ドットが並んでいるとかビビッドな視覚化をしたかったのですが、無理でした。

そして、3月〜4月で件数は大幅に増えましたが、それに比例するかのごとく更新回数が増えたわけではありませんでした。限界が近いのだと思います。疲労が蓄積して体調を崩したら元も子もないです。無理は禁物。