突然ですが、みなさんオープンデータってご存じですか?その名の通り、公開されているデータです。
では、オープンデータを触ったことはありますか?どこのオープンデータを使いましたか?
オープンデータと一口にいっても、企業が公開しているもの、有志団体が公開しているものと様々あります。
本書は日本政府が公開しているオープンデータを提供するサイトのひとつ、e-Stat1を知り、e-Statからオープンデータを取得し分析できるようになるための書籍です。
詳しくは本文で解説しますが、e-Statは独立行政法人統計センターが運営しているサービスで、内閣府や省庁が実施している統計調査の情報を取得できます。政府も利用している統計情報を使うことで、自分が住んでいる自治体の税収の比率がどうなっているのかや、住民の年齢別の比率などが分析できるようになります。
本書は技術書典11(2021/07/10 (土) 〜2021/07/25(日))で頒布させていただいた「e-Statと仲良くする本 API機能編」と、技術書典12(2022/01/22 (土) 〜2022/01/30(日))で頒布させていただいた「e-Statと仲良くする本 分析活用編」を合わせて再編し、加筆したものになります。
・オープンデータを使ってみたい方
・e-Statが気になっている方
・Pythonが少しできる方
・データ集めに苦労をしている方
・データの分析に興味がある方
・Google Colaboratory
・Python 3.9
・e-Stat API ver 3.0
本書に記載された内容は、情報の提供のみを目的としています。したがって、本書を用いた開発、製作、運用は、必ずご自身の責任と判断によって行ってください。これらの情報による開発、製作、運用の結果について、著者はいかなる責任も負いません。また、本書は読者がe-Statをより理解し使えるようになることを目的としています。特定の政党の支持や批判をするものではありません。
本書で使用するプログラムはすべてGoogle Colaboratoryで動きます。執筆に使用したサンプルプログラムはこちら2とこちら3を置いてあるので、ぜひご使用ください。物理本をご利用いただいている方は、ページ下部のURLをご参照ください。
本書執筆の動機を共有させてください。政府が集める統計情報を提供するe-Statですが、認知度が高いとはいえません。さらにAPIの機能ともなると、存在を知らない人がほとんどです。せっかく便利なデータを公開しているので、みなさんにe-Statを知ってもらい、誰もが統計データを使用した正確な分析や、未来予測をできるようになってほしい。という思いから執筆しております。
「統計」と聞くと難しそうなイメージを持つかもしれませんが、統計の中身を見ると、我々の生き方が数字になっていることがわかります。たとえば、あなたが働いた対価にもらった給料が「賃金」という形で集計されたり、あなたが生きていることが「人口」という数字で集計されています。そんな統計データを誰もが効率的に取得して、誰もが分析して明日の過ごし方を議論できるようになることを願い、本書を執筆しております。
本書に記載されている会社名、製品名などは、一般に各社の登録商標または商標、商品名です。会社名、製品名については、本文中では©、®、™マークなどは表示していません。
e-Statの話を始める前に、一般的なデータ分析の流れについて解説します。既にご存じの方は読み飛ばして大丈夫です。データ分析の流れを理解することで、e-Statを活用する際はどの場面で利用できるかがわかるようになります。
一般的には、データの分析は以下の流れで行われます。
おおまかにデータ分析は4つの流れで行います。それぞれどのようなことをするのかは、次節以降で解説します。
分析に一番大切な「目的」を決めます。
データだけ渡されて「分析してくれ」といわれても、データの件数や数値の平均など、味気ない分析しかできません。しかし、「この勤務データから、各部署の残業時間の平均の推移を見たいからグラフ化してくれ。ついでに、残業時間について気づいたことがあれば教えてほしい」みたいに、具体的な目的がある指示だと、何を分析すべきかが明確になります。
このように、データの分析には目的が必要になります。先ほどの例だと、「社員の残業時間の原因や偏りを知りたい」というのが目的です。データの分析は、目的を達成するための方法であり、手段です。分析することが目的ではないことに注意してください。
目的を踏まえた分析を行うためには、「かもしれない」を考え仮説を立てる必要があります。「冬に社員の残業時間が多くなるのは、年末に何かあるのかもしれない」と仮説を立てると、検証のために「月ごとの社員の残業平均時間を分析してみよう」となります。
とはいえ、すでにあるデータを分析することも多くあると思います。多くの企業では業務システムを導入しており、システムではすでにデータを保持しています。こういった社内のデータを活用する名目で分析を行うケースが、これにあたります。業務システムで保有しているデータは構造化されて整っていることが多く、非常に使いやすいのが特徴です。すでにあるデータを使用する場合は、データの意味合いをしっかりと把握する必要があります。たとえば、就業データの場合は「どのコードが事業コードなのか」「データの単位は個人単位なのか」等です。データの意味合いを理解したら、日ごとの集計や月ごとの集計等を行い、データから見える仮説を立てていきます。
分析の目的が決まったら、必要なデータを集めます。データの集め方は大きく分けて2種類あり、センサーなどを使ってデータを集める方法と、すでにあるデータを使用する方法です。
データ化されていないものはデータ化する必要があります。目的に応じてデータ化するものを決定します。たとえば、「テレワークで体重が増えた社員が多くなっているので、社員の勤務状態や運動状況を分析したい」という目的があった場合には、Apple Watchなどのスマートウォッチを社員に配布すれば、スマートウォッチに内蔵されているセンサーが勤務時間中の心拍数や運動状況を計測してくれます。あとはデータ化された計測結果を収集し分析すれば、勤務状況や運動状況を改善する策が見えてきます。
すでに業務システムにあるデータや、公開されているオープンデータを使うと、データを取得する手間が省けます。すでに用意されているので、すぐに分析に入ることができます。ただし、目的に完全に合致しているかは見極める必要があります。
たとえば、「評価が高い社員はどのような働き方をしているのか」を分析する目的として設定していた場合は、就業データだけでは足りません。人事評価の結果が必要なので、人事データが必要になります。さらに、どのような時間配分で業務を行っているかを分析するために、日報が格納されている日報データなどが必要になってきます。
本書のメインであるe-Statを使う場合は、すでにあるものを使うこちらのパターンになります。
データは集めただけでは使えない場合があります。整形をすることで、データを分析することができるようになります。
集めたデータに欠損がある場合、補完をするか無視するか決める必要があります。たとえば、気温計で集めたデータを分析する場合に、機器の故障や電源が入っていなかったという理由で、データが取得できていない時間帯があったとします。その場合は直前の時間帯のデータで保管してあげるのか、その時間帯は分析から除くなどの整形が必要になります。
集めたデータに異常がある場合も整形が必要になります。たとえば勤務データの場合、とある社員が退勤をつけ忘れた場合を考えてみてください。退勤のデータがないため、翌日の22時まで働いていたことになり、残業時間がものすごいことになっています。このデータは異常値になるので、削除する必要があります。
データが揃ったらいよいよ分析です。分析はデータから解釈を見つけることです。データを可視化して解釈をしやすくしたり、過去の推移から未来の解釈を導く予測をします。
データを可視化して解釈していきます。可視化の手法は、グラフ表現を使うことが多いです。数の遷移を見やすい線グラフ、累計の比較と構成比の比較を同時に見やすい積み上げ棒グラフ、数字の構成比率が見やすい円グラフ等があります。可視化部分はある意味分析の花形です。数の表現方法をどれだけ知っているか、データの解釈をどれだけわかりやすく伝えるかが重要になってきます。
可視化の前にはデータを集計したり、データの特性を理解するために統計的な手法を使います。
データの可視化は今まで蓄積したデータの解釈でしかありません。過去の推移から、未来がどうなるかを予測するのも、分析で行うことがあります。コンピューターパワーを使った機械学習や、回帰分析などの統計的な手法を使い予測をします。
データ分析には大きく分けて4つのフェーズがあることを解説しました。そのうちe-Statが活用できる場所は「データを集める」と「データを整形する」の一部分で活用することができます。
「データを集める」の部分は理解しやすいかと思います。「データを整形する」の一部分がわかりづらいので少し解説します。e-Statの中には〇〇年度から新しく取得したデータ(取得しなくなった場合もあり)があり、場合によっては分析対象から外すために整形する必要があります。
はじめに、e-Statとは何かを知りましょう。具体的な機能や何ができるかは、第3章で解説します。この章では政府のどの組織がe-Statを運営して、どのような狙いをもって存在しているのかを学びましょう。
「e-Statは、日本の統計が閲覧できる政府統計ポータルサイトです」
e-Stat Webサイトより引用
e-Statはこの言葉がすべてを表していますが、これだけだと何の解説にもならないので、どこが運営しているかを紐解いて、何をするサイトなのかを見ていきます。
e-Statは独立行政法人統計センター1が運営しており、統計センターは総務省統計局2の一部業務を担っています。法人格は皆さんご存じの情報処理推進機構(IPA)3と同じ独立行政法人で、独立行政法人は中央省庁や内閣府の公共性の高い業務を行っています。
統計センターの具体的な業務は、統計局の組織紹介ページを見ると、わかりやすいです。統計局は総務省の組織でありながら、経済産業省や厚生労働省といった中央省庁と内閣府、さらには地方自治体の統計情報を横断的に調整しています。これは筆者の感想ですが、胃が痛くなりそうな業務です。統計局自身も統計調査を行っており、代表的なものが「国勢調査」です。2020年にも調査が行われたので、記憶に残っている方も多いと思います。
統計局の業務のうち、統計センターは以下の業務を行っています。
・国勢の基本に関する統計調査の製表
・公的統計基盤サービスの提供
・各府省・地方公共団体の統計作成支援
このうち「公的統計基盤サービスの提供」のひとつが、e-Statを運営する業務です。公的統計基盤サービスは公務員だけでなくすべての国民と企業が使えるサービスで、e-Statもすべての国民と企業が統計情報を見るためのポータルサイトになっています。
言い換えると、e-Statは誰でも使える公的な統計情報を閲覧できるサイトです。
e-Statは何のために存在するサービスなのでしょうか。
これを理解するのは、2006年(平成18年)に定められた「統計調査等業務の業務・システム最適化計画4」を見てみるのが早いです。
「統計調査等業務の業務・システム最適化計画」の本文(PDF)の11ページ~12ページにある「9.統計情報のワンストップ・サービスの実現」にe-Statのことが書かれており、中央省庁と内閣府に点在していた情報提供機能をe-Statにまとめて効率化する狙いが書かれています。
e-Statにまとめることでサービスの利用者はワンストップで情報を探すことができ、各省庁はそれぞれで情報提供機能を持つ必要がなくなります。
利用者への効率的な情報提供と、各省庁の機能重複の無駄を省くのがe-Statの狙いです。
前節では政府の計画の内容を少し覗いて、e-Statの狙いを解説しました。この節では、e-Statがどの法律を根拠にしているかを見てみましょう。
ひとつご注意いただきたいのは、筆者は法律の専門家ではありません。この節の内容は筆者が法律の一部を解釈し、平易な言葉に表現し直したものになっています。必ずしも正しい内容であるとは限らないことをご承知ください。
統計センターの概要及び沿革ページより、統計センターは統計法第三十四条の事務行っていることがわかります。では、統計法第三十四条を見てみましょう。ここに記載している内容は電子政府総合窓口の法令検索機能5を用いて、2021年5月30日に検索した結果6を転載しております。
第三十四条
行政機関の長又は指定独立行政法人等は、その業務の遂行に支障のない範囲内において、総務省令で定めるところにより、一般からの委託に応じ、その行った統計調査に係る調査票情報を利用して、学術研究の発展に資する統計の作成等その他の行政機関の長又は指定独立行政法人等が行った統計調査に係る調査票情報を利用して行うことについて相当の公益性を有する統計の作成等として総務省令で定めるものを行うことができる。
2
行政機関の長又は指定独立行政法人等は、前項の規定により統計の作成等を行うこととしたときは、総務省令で定めるところにより、次に掲げる事項をインターネットの利用その他の適切な方法により公表するものとする。
一
前項の規定により統計の作成等の委託をした者の氏名又は名称
二
前項の規定により統計の作成等に利用する調査票情報に係る統計調査の名称
三
前二号に掲げるもののほか、総務省令で定める事項
3
行政機関の長又は指定独立行政法人等は、第一項の規定により統計の作成等を行ったときは、総務省令で定めるところにより、次に掲げる事項をインターネットの利用その他の適切な方法により公表するものとする。
一
前項第一号及び第二号に掲げる事項
二
第一項の規定により作成した統計若しくは行った統計的研究の成果又はその概要
三
前二号に掲げるもののほか、総務省令で定める事項
少しわかりづらいですが、算数字が"項"で漢数字が"号"です。項の「1」に関しては書くのが省略されています。この法律を見ると、3項がe-Statの根拠といえそうです。中央省庁や内閣府は統計を作成したり、統計を用いた研究を行った場合、インターネットを利用して公表することが法律によって定められているため、e-Statで公開をしています。
「e-Statはオープンデータなの?」
これはよく聞かれる質問です。これはイエスでありノーです。e-Statにはオープンデータであるものとそうでないものが混じっています。これを理解するために、まずはオープンデータの定義から見ていきましょう。
日本行政におけるオープンデータの定義は、2012年7月に策定された「電子行政オープンデータ戦略7」の概要を見るのがわかりやすいです。
概要の基本原則の中にふたつの項目があります。
1.機械判読可能で二次利用が容易な形式で公開すること
2.営利目的、非営利目的を問わず活用を促進すること
e-Statは営利目的、非営利目的に関しては満たしてはいるのですが、"械判読可能"に満たせていない部分があります。詳細は次章以降で解説しますが、 公開している統計の一部は、人にとって読みやすいPDFやExcelになっており、機械判読可能とはいえません。
e-Statは統計データだけでなく、統計を用いた研究を公開する役割を持っているため、e-Statにはオープンデータもあるがオープンじゃないデータもあることになります。
さて、小難しい話が続きましたが、e-Statについてなんとなく理解できたのではないでしょうか。次章からはe-Statの具体的な機能について解説していきます。