[開発者向け]公開統計データベースを扱うData Commons Pythonライブラリが V2にバージョンアップ:変更点から使い方まで

目次

はじめに

 データは、現代社会のあらゆる分野で進歩の土台となる重要な資源です。現状を正確に測定し、重要なトレンドを特定し、未来を予測するためには、信頼できるデータへの容易なアクセスが不可欠です。

 本稿では、Google Developers Blogで2025年6月26日に公開された「Unlock deeper insights with the new Python client library for Data Commons」という記事をもとに、Googleが提供する巨大な公開統計データベース「Data Commons」と、それを活用するための新しいPythonクライアントライブラリについて、詳しく解説します。

引用元記事

  • タイトル: Unlock deeper insights with the new Python client library for Data Commons
  • 著者: Kara Moscoe
  • 発行元: Google Developers Blog
  • 発行日: 2025年6月26日
  • URL: https://developers.googleblog.com/ja/pythondatacommons/

要点

  • Googleは、世界中の公開統計データを統合したナレッジグラフ「Data Commons」を、より強力に活用するための新しいPythonクライアントライブラリ(V2)を一般公開したのである。
  • 新ライブラリは、データ分析の標準ツールであるPandasのデータフレームをネイティブにサポートし、データの取得から分析までのワークフローを劇的に効率化するものである。
  • 最大の注目点は、企業や組織が持つ独自のデータセットを扱う「カスタムインスタンス」に完全対応したことである。これにより、公開データと非公開データを組み合わせた、より深い洞察の獲得が可能になる。
  • このライブラリは、社会課題解決に取り組むNPO「The ONE Campaign」とのパートナーシップを通じて開発され、オープンソースとして誰もが開発に参加できるものである。
  • 旧バージョン(V1)のAPIは廃止が予定されており、Googleはすべてのユーザーに新ライブラリ(V2)への移行を強く推奨しているのである。

詳細解説

そもそも「Data Commons」とは?

 まず、今回の主役である「Data Commons」についてご説明します。Data Commonsとは、一言で言えば「世界中の公的な統計データを集めて、誰でも使いやすいように整理・統合した巨大なデータベース」です。アメリカの国勢調査局、世界銀行、ユーロスタットなど、様々な機関が公表している人口、経済、環境、健康といった多岐にわたるデータを一つにまとめています。

 このプロジェクトの核となるのが「ナレッジグラフ」という考え方です。これは単にデータを集めるだけでなく、「東京都」が「日本の首都」であり、「人口は約1400万人」で、「日本の関東地方に位置する」といった、データ同士の関連性や意味を構造化したものです。これにより、コンピューターはデータの意味を理解し、より複雑な問いに答えることができるようになります。

 実は、私たちはすでにこの恩恵を受けています。Google検索で「サンフランシスコの人口は?」と入力した際に表示されるグラフは、このData Commonsのデータを利用して生成されています。このように、Data Commonsは私たちの身近なところでも活用されているのです。

新しいPythonライブラリ(V2)の何がすごいのか?

 Data Commonsは非常に強力なデータ基盤ですが、その真価を発揮させるには、開発者やデータアナリストがプログラムを通じてデータを自由に扱える環境が不可欠です。今回発表された新しいPythonライブラリ(V2)は、そのための画期的なツールと言えます。重要なポイントを3つに絞って解説します。

(a) データ分析の定番「Pandas」との完全統合

 Pythonでデータ分析を行う人なら誰もが知っている「Pandas」は、データを表形式で効率的に扱うためのライブラリで、まさに「標準装備」とも言える存在です。

 今回の新しいライブラリでは、Data Commonsから取得したデータを直接Pandasのデータフレーム形式で受け取れるようになりました。これにより、データの取得、整形、可視化、分析という一連の流れがシームレスにつながり、開発者は面倒なデータ変換作業から解放され、本来の分析業務に集中できるようになります。掲載されているコード例では、わずか数行で世界の貧困率の推移をグラフ化しており、その手軽さが見て取れます。

(b) 「カスタムインスタンス」への対応

 V2ライブラリにおける最もインパクトの大きい機能が、この「カスタムインスタンス」のサポートです。これは、組織や企業が独自に保有する非公開データを、Data Commonsの枠組み上で扱えるようにする仕組みです。

 これが何を意味するかというと、例えば、ある企業が持つ「自社の製品売上データ」と、Data Commonsが持つ「世界各国の人口統計や経済指標」を、同じプラットフォーム上で簡単に組み合わせて分析できるようになったということです。これにより、以下のような、これまで以上に高度な分析が可能になります。

  • マーケティング戦略の立案: 自社の売上データと地域の所得水準や年齢構成を組み合わせ、新たなターゲット層を発見する。
  • サプライチェーンの最適化: 気象データや交通インフラのデータと自社の物流データを組み合わせ、配送ルートのリスクを予測・回避する。
  • 公衆衛生研究: ある地域の独自の健康調査データと、国勢調査などの公開データを統合し、疾病の要因を分析する。

 このように、公開されているマクロなデータと、自社が持つミクロなデータを融合させることで、これまで見えなかった新たな知見を引き出す扉が開かれたのです。

(c) その他の技術的な改善点

 他にも、新しいライブラリには多くの技術的な改善が施されています。

  • Pydanticとの統合: データの型チェックが厳格になり、予期せぬエラーを防ぎやすくなりました。これにより、コードの信頼性と安定性が向上します。
  • APIキー管理の簡素化: 認証に関する設定がクライアントに組み込まれ、より簡単に利用を開始できるようになりました。
  • 複数の応答形式をサポート: 結果を従来のJSON形式だけでなく、Pythonの辞書やリスト形式でも受け取れるようになり、柔軟性が増しました。

実践ガイド:Data Commons V2ライブラリの使い方

1. インストール方法

基本的なインストール

Data Commons V2ライブラリのインストールは非常に簡単です。pipコマンドを使用して以下のように実行します:

pip install datacommons-client
Python仮想環境を使用する場合(推奨)

Googleが推奨しているPython仮想環境を使用する場合は、以下の手順で進めてください:

# プロジェクトディレクトリに移動
cd your_project_directory

# 仮想環境を作成
python -m venv datacommons_env

# 仮想環境をアクティベート(Windows)
datacommons_env\Scripts\activate

# 仮想環境をアクティベート(Mac/Linux)
source datacommons_env/bin/activate

# Data Commonsライブラリをインストール
pip install datacommons-client

2. APIキーの取得と設定

APIキーの必要性

 Data Commonsの基本サイト(datacommons.org)へのリクエストには、API認証が必要です。ただし、カスタムインスタンスを使用する場合はAPIキーは不要です。

トライアル用APIキー

初めて試す場合は、Google が提供するトライアル用APIキーを使用できます:

APIキー: AIzaSyCTI4Xz-UW_G2Q2RfknhcfdAnTHq5X5XuI

注意: このトライアルキーは制限があるため、本格的な利用の場合は公式APIキーの取得を推奨します。

公式APIキーの取得

本格的な利用には、自己サービスポータル(https://apikeys.datacommons.org)でAPIキーを取得する必要があります。

3. 基本的な使用方法

ライブラリのインポートとクライアント初期化
# 必要なライブラリをインポート
import datacommons_client as dc
import pandas as pd
import matplotlib.pyplot as plt

# Data Commonsクライアントを初期化(APIキー付き)
api_key = "your_api_key_here"  # または上記のトライアルキー
client = dc.DataCommonsClient(api_key=api_key)
基本的なデータ取得例

公式ブログ記事で紹介された貧困率のデータを取得する例を再現してみましょう:

# 統計変数の設定(国際貧困ライン以下の人口比率)
variable = "sdg/SI_POV_DAY1"
variable_name = "国際貧困ライン以下の人口比率"

# データを取得してPandasのDataFrameに変換
df = client.observations_dataframe(
    variable_dcids=variable,
    date="all",
    parent_entity="Earth",
    entity_type="Continent"
)

# データの整形(ピボット)
df = df.pivot(index="date", columns="entity_name", values="value")

# グラフの描画
ax = df.plot(kind="line", figsize=(12, 8))
ax.set_xlabel("年")
ax.set_ylabel("比率 (%)")
ax.set_title(variable_name)
ax.legend()
plt.show()

4. 主要な機能とAPIエンドポイント

統計データの取得

Data Commonsでは、統計変数、日付、エンティティの組み合わせで観測データを取得できます:

# 特定の地域の人口データを取得
population_data = client.observations_dataframe(
    variable_dcids="Count_Person",
    entity_dcids=["geoId/06", "geoId/36"],  # カリフォルニア州、ニューヨーク州
    date="2020"
)
print(population_data)
エンティティの解決(名前からDCIDへの変換)
# 地名からData Commons ID(DCID)を取得
response = client.resolve.fetch_dcids_by_name(names="東京")
print(response)

ノードのプロパティ取得

# 特定のエンティティのプロパティを取得
properties = client.node.fetch_properties(dcids="geoId/06")
print(properties)

5. Google Colabでの利用方法

Google Colabの利点

Data CommonsはGoogle Colabノートブックでの豊富なチュートリアルを提供しています。Google Colabを使用すると:

  • セットアップ不要でブラウザからすぐに開始可能
  • 必要なライブラリが事前にインストール済み
  • 結果を視覚的に確認しながら作業可能
Google Colabでの基本セットアップ
# Google ColabでData Commonsライブラリをインストール
!pip install datacommons-client

# 必要なライブラリをインポート
import datacommons_client as dc
import pandas as pd
import matplotlib.pyplot as plt

# クライアント初期化
client = dc.DataCommonsClient(api_key="your_api_key")

6. 参考リソース

公式ドキュメント
  • メインドキュメント: https://docs.datacommons.org/api/python/v2/
  • チュートリアル: https://docs.datacommons.org/api/python/v2/tutorials.html
  • REST API V2リファレンス: https://docs.datacommons.org/api/rest/v2/
サンプルコードとチュートリアル
  • GitHubリポジトリ: https://github.com/datacommonsorg/api-python
  • Google Colabチュートリアル: GitHub上のnotebooks/v2/フォルダ内に多数のサンプルあり
API キー関連
  • APIキー取得ポータル: https://apikeys.datacommons.org
  • API概要ページ: https://docs.datacommons.org/api/

7. V1からV2への移行

既にV1ライブラリを使用している場合、Googleは強くV2への移行を推奨しています。主な変更点:

  • インストールパッケージ: datacommonsdatacommons-client
  • Pandasサポート: ネイティブサポートに改善
  • API設計: よりPythonらしい設計に変更
  • カスタムインスタンス: 完全サポート

社会課題解決に向けたオープンな取り組み

 このライブラリは、アフリカの経済的機会創出や健康問題に取り組むグローバル組織「The ONE Campaign」との強力なパートナーシップによって実現しました。

 ONEは、このライブラリの設計を提案し、実際のコーディングにも貢献しました。これは、GoogleがData Commonsをオープンソースとして構築した理念、すなわち「コミュニティの貢献を促進し、革新的な利用を可能にする」という目標を完璧に体現する事例です。

 ライブラリのソースコードはGitHubで公開されており、誰でもその開発に参加できます。特定の企業が独占するのではなく、世界中の開発者や研究者が協力して、データ活用の未来を共に創っていくというオープンな姿勢が、このプロジェクトの大きな魅力となっています。

まとめ

 本稿では、Googleが新たに公開したData CommonsのPythonライブラリV2について解説しました。このライブラリは、単なるツールのバージョンアップではありません。

  • Pandasとのシームレスな連携により、データ分析の生産性を飛躍的に向上させます。
  • カスタムインスタンスへの対応により、公開データと独自データを組み合わせた、かつてないほど深い分析を可能にします。
  • オープンソースと社会貢献団体との協業という背景は、テクノロジーが社会課題解決にどう貢献できるかを示す好例です。

 データへのアクセスを民主化し、あらゆる人々がデータに基づいた意思決定を行えるようにする、というGoogleのミッションが、この新しいライブラリによってまた一歩前進しました。データサイエンティストや開発者、研究者の方々は、ぜひこの強力なツールを手に取り、その可能性を体験してみてください。公式サイトには、すぐに試せるチュートリアルも用意されています。

この記事が気に入ったら
フォローしてね!

  • URLをコピーしました!
  • URLをコピーしました!
目次