e-StatのデータをAPIを使ってPython上で分析する

2025/02/04に公開

はじめに

e-Statには政府の膨大な統計データが提供されていますが、データが神excelで展開されている上、APIにもクセがあるためデータが取り出しにくい課題があります。

手前味噌ですが、今回はこの課題を解決するために開発した、e-stat-adaptorの使い方を解説します。
このライブラリでは、APIを意識せずe-StatのデータをPandasのDataFrame形式で取得できるため、データ分析の本質とは関係のない部分でのデータ収集などの稼働を大きく減らすことができます。

動作確認環境

  • Python 3.10

インストール方法

以下のコマンドで、e-stat-adaptorをインストールできます。

pip install git+https://github.com/Zaiwa-linus/e-stat-adaptor.git

インストール後、必要なライブラリをインポートします。

from eStatAdaptor import Session

e-Stat APIの利用準備

APIキーの取得方法

e-Stat APIを利用するには、アプリケーションID「APIキー」が必要です。以下の手順で取得できます。

  1. e-Stat APIポータルにアクセスします。
  2. ユーザー登録を行い、ログインします。
  3. 「アプリケーション管理」セクションから新しいアプリケーションを作成します。
  4. 作成したアプリケーションに対してAPIキーが発行されます。

このAPIキーを使って、e-Stat APIにアクセスします。

基本的な使い方

1. セッションの作成

取得したAPIキーを使用してセッションを初期化します。

session = Session(api_key="your_api_key_here")

2. 統計データの検索

特定のキーワードで統計データを検索し、結果を取得します。

search_word = "人口動態"
df_reports = session.searchReports(search_word)
print(df_reports.head())

詳細なパラメータの指定方法については、GitHubリポジトリを参照してください。

3. データの取得

取得した統計データID (stats_data_id)を使用して、実際のデータを取得します。

stats_data_id = "0003412313"  # 例として適当なIDを使用
df_data = session.getData(stats_data_id)
print(df_data.head())

これにより、指定した統計データIDに対応するデータがDataFrame形式で取得できます。

まとめ

いかがだったでしょうか?今回はe-Statのデータをpandasとして読み込む方法を解説しました。

e-stat-adaptorを使用することで、e-Stat APIからのデータ取得が容易になり、Pandas DataFrame形式での操作が可能となります。統計データの分析や処理を効率的に行いたい方にとって、有用なツールとなることを願っています!
詳細や最新情報については、公式GitHubリポジトリをご参照ください。

私のX(旧Twitter)では、AIやデータ分析に関する情報を発信しています。ご興味のある方はぜひフォローをお願いします。

https://twitter.com/Linus_lab

Discussion