サイバーホルンのブログCyberhorn's Blog

コロナ公開データで練習する、Google データポータルのレポート作成

  • 2021.03.19
  • 2021.01.29

データ×マーケティング

本記事では、Google がオープンに提供している COVID-19 Public Forecasts のデータセットを題材として、Google データポータルでのレポート作成方法を紹介していきます。

本記事は、コロナウイルス感染症に関するデータ「可視化」および「Googleデータポータルを用いたレポート作成方法」をテーマとするものであり、データを「分析」「解釈」し、その内容を主張するものではありません。

なお、本記事で用いた公開データセットにおけるコロナ感染者数やその関連指標に関する定義や数字は、公的機関が発表するものと一部異なる場合があります。

上記の点、ご了承いただきました上でお読みいただけますと幸いです。

Googleデータポータルとは?

Google データポータルについて初めて触れる方向けには、こちらの記事で紹介しています。

<div align="center">Googleデータポータルでできること<br>活用事例</div>

Googleデータポータルでできること
活用事例
こんにちは、サイバーホルンのマーケティングデータチームのエンジニアです。 今回は、Google データポータルでできること、弊社での活用事例について紹介したいと...

Google データポータルは「BIツール」と呼ばれるツールの 1 つで、1度表やグラフを整えてしまえば、裏側のデータが自動更新され、最新のレポートを得ることができます。

そのため、毎月エクセルで表を作る、それをパワポに貼って報告可能な形式にする、という一式の作業が、Google データポータルを使うことで解決することができます。

この記事では、公開されているデータ (COVID-19 Public Forecasts 、コロナの患者数に関する公開データ) を用いて、データポータルレポート作成の練習をしていきたいと思います。

データソースの接続

コロナに関するデータソースは、以下のページからアクセスできます。

https://console.cloud.google.com/marketplace/product/bigquery-public-datasets/covid19-public-forecasts

「データソースを表示」の青いボタンを押すと、自分の Google クラウド (Big Query) から、コロナのデータが利用可能になります。

データポータルにログインし、データソースを接続します。データソースは、「Big Query」を選択

公開データソースのうち、
covid_public_forcasts > japan_prefecture_28d を選択。

データソース名から推測するに、都道府県別の28日間のデータが含まれるデータセットと思われます。(データの詳細な内容は、のちのセクションで確認していきます)

データのフィールド一覧画面を確認すると、このデータソースには、下記のようなデータが含まれていることが分かります。このデータを基に、都道府県別のコロナ感染者数、感染予測数の表を作っていきたいと思います。

データソースのフィールド一覧画面の英語を解読しながら、どの指標がどんな意味を持つのかを確認しておきます。

都道府県別 コロナに関する表の作成

ディメンションに「prefecture_name_kanji」、

指標に「hospitalized_patients_ground_truth」を追加すると、下図のような表ができます。

フィールドの一覧を確認すると、「hospitalized_patients_ground_truth」は下記を意味していることが分かります。

Actual number of people hospitalized according to the ground truth data. This is not cumulative over time

上の英語から、hospitalized_patients_ground_truth は入院患者の実数値(予測ではない)を意味していることがわかります。

この表は、入院患者数が多い順にソートされているので、総務省が定めている都道府県コード別(おおよそ北から順番になっている)に並び替えます。

これは、ディメンションに「prefecture_code」を追加し、表の並び替えを prefecture_code の昇順に並び替えることで実現できます。

なお、ディメンションの順序は、① prefecture_code ② prefecture_name_kanji としています。

指標やディメンションのカードの小さな枠の部分をクリックすると、表示名を分かりやすいものに変更することが可能です。

英語だとわかりにくいので、日本語に変えてみました。

データポータルの表の作り方の基本は以上です。ここでは、

  • ディメンションと指標の追加方法
  • 並び替え方法
  • ディメンションや指標名の変更方法

を紹介しました。

ディメンションは、「データの集計単位」を意味します。

ディメンションが「都道府県」なら都道府県別の集計、「日付」にすると日付ごとの集計になります。

次のセクションでは、ディメンションを日付として、日別の感染者数の数字を追いかけてみたいと思います。

日別感染者数の表

ディメンションに「prediction_date」を追加してみると、以下のような表になります。

表の行数から見て分かるように、これは、28日間の日付×47都道府県別 の詳細な集計となっており、表の行数が莫大になっています。

ここで、東京都の日別の患者数を追いかけてみましょう。表にフィルタをかけることで、東京都のデータのみを表示させます。

次のようなフィルタを作成し、表に対して適用すると

東京都のデータのみ抽出できました。(日付の昇順にソートしてあります)

レポートページの縦幅が窮屈なので、ページ幅を伸ばします。

レポート用紙の空白領域を右クリックすると、「現在のページ設定」という項目がでるので、ここからページの高さの数値を変更します。

数値の検証

本記事 執筆時点で (1/29) 、1/27 と 1/28 の日別の数値は「null」(データなし) となっています。これより、このオープンデータは、昨日と一昨日の数字は取得できておらず、3日前時点までのデータが取得されていることが推測できます。

(今回作ったレポートを、明日や明後日 に確認してみると、最新データの日付も更新されていくはずです)

ここまでは、どちらかというと表の作成方法にフォーカスしてきましたが、東京都が発表した数字と比較しながら、「hospitalized_patients_ground_truth」の値について検証したいと思います。

東京都の コロナ関連指標のモニタリングページを確認すると、1/28 19:45 時点更新の情報では、各指標は以下のようになっています。

  • 入院 : 2,888 人
  • 宿泊療養 : 659 人
  • 自宅療養 : 6,600 人
  • 入院・療養等調整中 : 4,810 人

合計 : 14,957 人

一方で、レポートの数字は、1/26 時点で 16,000 人程度となっています。これより、Google が提供している「hospitalized_patients」は、東京都が定義するところの

  • 入院者
  • 宿泊療養者
  • 自宅療養者
  • 入院・療養等調整中 患者

を合算した数値であることが考えられます。

なお、hospitalized_patients_ground_truth のフィールドの説明には、
” This is not cumulative over time ” (累計値ではない)
と説明されています。

ディメンションから日付を外すと、表のデフォルト設定期間である 過去 28日 の数値が合算されたものが表示され、現状の数字を把握する上で乖離が生じます。

よって、hospitalized_patients_ground_truth は、ディメンションを prediction_date として、日別に集計すべき指標といえます。

新たな指標の追加

次に、new_deaths_ground_truth という指標を、表に追加します。

この指標の意味は、次のとおりです。

Actual number of new deaths according to the ground truth data. This is not cumulative over time

指標のカラムの名前を「日別新規死者数」とすると、次のような表になります。

次に、「cumulative_deaths」を表の指標に追加すると、直近の日付の部分に累計死者数が表示され、それ以前の日付はデータが null となります。

new_deaths_ground_truth の値は日別の新規の数字を、
cumulative_deaths の値は、過去これまでの累積の数字を表していることが分かります。

なお、東京都の定義による公式なデータは、こちら を確認ください。

都道府県別 人口に対する入院・療養者数

公開データセットそれぞれの数値の意味がつかめてきたところで、次は新たな表として、都道府県別の hospitalized_patients_ground_truth (入院・療養者数) の数字を出し、人口に対する比率も出してみます。

データポータル画面左上から、レポートの新しいページを作成することができます。

ページ上部から「グラフを追加」を選択し、表の項目にある一番左のものを選択し、新規の表を挿入します。

数値の集計の関係から、表の日付期間を変更します。

東京都のデータを通して各指標のデータ取得状況がおおよそ把握できたので、カスタム期間を「5日前」の1日間だけと固定します。

ディメンション、指標を次のように設定し、都道府県コード順にソートします。

これにより、各都道府県の人口と、入院患者数(入院+療養 ?)を表す表ができました。

表自体のサイズは、表を選択した時にサイズを変更できますし、表の列幅は、表を右クリックしたときに、「列のサイズを変更」から可能です。ここでは、「データに合わせる」を適用しています。

次に、人口に対する「hospitalized_patients」の比率を表示させます。

「+ 指標を追加」から、「フィールドを作成」を選択します。

フィールドに、次の式を入力し、適用します

sum(hospitalized_patients_ground_truth)/SUM(prefecture_population)

数値タイプは、「%」としています

すると、このような表ができます。

+ 0 % となっているのは、デフォルトの表示数値桁数(小数2桁)より小さいことを表します。

表示する小数点以下桁数を増やすには、表を選択したときの右側ウィンドウ → 「スタイル」タブで、列3の数値精度を3桁にします。

現状は、列3は「数値」という表示スタイルです。これを、「ヒートマップ」に変更することにより、相対的に割合が多い県がグラデーションで表されます。

グラフによる可視化

今回は詳細に触れませんが、Googleデータポータルでは、表だけでなくグラフによる可視化も可能です。

ディメンション、数値、期間、フィルタを適切に組み合わせることで、知りたい情報をグラフにより可視化することができます。

レポートとしての仕上げ

レポートのページ名を変更したり、テキストボックスを挿入することで、より分かりやすい数値レポートを作ることができます。

最後に

以上、Google がオープンに提供している COVID-19 Public Forecasts のデータセットを題材として、Google データポータルでのレポート作成方法を紹介しました。

本記事は、コロナウイルス感染症に関するデータ「可視化」および「レポート作成」方法を紹介するものであり、データを「分析」「解釈」し、それを主張するものではありません。

なお、本記事で用いた公開データセットにおけるコロナ感染者数やその関連指標に関する定義や数字は、公的機関が発表するものと一部異なる場合があります。

コロナウイルス感染症に関する最新情報や正確な数値は、厚生労働省をはじめとした各公的機関、報道機関が発表したものを必ず確認した上で行動してください。

ここまでお読みくださり、ありがとうございました。

(文章 : Cyberhoron マーケティングデータチーム エンジニア)

  • 2021.03.19
  • 2021.01.29

データ×マーケティング

広告代理店/制作会社の方へ

無料アカウント診断サービス