geometrics

地域の成長・収束・格差 — 空間的に、Pythonで。

geometricsPySAL ファミリーを基盤とし、地域収束の文献における標準的な分析を、インタラクティブな Plotly の図、出版品質の Great Tables、整然とした(tidy)DataFrame を返す適用しやすい関数にまとめています。探索/分析/学習のワークフローに、すべての結果を解釈・説明する組み込みの学習レイヤー3つのノーコードアプリを組み合わせています。学生、教員、応用研究者のいずれにも役立つように作られています。

🗺️ 探索

地域を地図化し記述します。分類・アニメーション化されたコロプレス図、空間重みの接続性、モランの散布図と LISA クラスターマップ、時空間ビュー。

🚀 アプリを開く · ▶ Colabで開く

🧮 分析

モデルを推定します。β・σ・クラブ収束、インパクトを伴う空間計量経済モデル、マルコフおよび空間マルコフのダイナミクス、空間分解を伴うジニ/タイルの格差、GWR/マルチスケール GWR。

🚀 アプリを開く · ▶ Colabで開く

📚 学習

手法の背後にある考え方を確かめます。既知の真実を自分で調整できる11個の実行可能な概念サンドボックス30トピックの解説インデックス、そしてすべての結果に対する平易な言葉での解説。

🚀 アプリを開く · ▶ Colabで開く

ブラウザでアプリを試す

インストールもコードも不要 — 3つの geometrics アプリが、ワークフロー全体をブラウザ上で実行します。ポイント&クリックの地図とモデル、ソート可能な表、再現可能なエクスポート。それぞれがドキュメントのケーススタディに対応するノーコード版です。

🗺️ 探索アプリ · 🧮 分析アプリ · 📚 学習アプリ

機能の概要

地図と ESDA — 分類/アニメーション化されたコロプレス図、空間重みの接続性、モランの散布図、LISA クラスターマップ、時系列でのモランの I。

時空間ダイナミクス — 横断面分布の推移とエンティティ×時間のヒートマップ。

収束 — OLS または空間推定量による β 収束、σ 収束、そしてクラブマップ付きの Phillips–Sul 収束クラブ。

空間計量経済学spreg スイート、モデル推奨付きの LM 診断、代替的な重みによる頑健性。

分布ダイナミクス — マルコフおよび空間マルコフの遷移分析。

格差 — 空間分解を伴うジニ/タイルのトレンド、タイルの級間/級内分解。

局所モデル — 局所係数を地図化した GWR とマルチスケール GWR。

概念サンドボックス — 既知のデータ生成過程からデータをシミュレートする11個の教育用関数。

付属のケーススタディ

geometrics.data には、すぐに分析できる2つのケーススタディが付属しています。

  • インド — 520の地区、衛星による夜間光(1996〜2010年):gm.data.load_india()load_india_states()
  • ボリビア — PWT に基づく地域 GDP(2021年購買力平価の米ドル、2012〜2022年)を3つの地理的スケールで:gm.data.load_bolivia()(112の郡)、load_bolivia_departments()(9の県)、load_bolivia_grid()(1,603のグリッドセル)。

インストール

最新リリースを PyPI からインストールします(基本インストールでほとんどのワークフローに対応します。エクストラでマルコフのダイナミクス、ノーコードアプリ、PNG エクスポートを追加できます)。

pip install geometrics                 # core
pip install "geometrics[dynamics]"     # + Markov / spatial Markov (giddy)
pip install "geometrics[streamlit]"    # + the three no-code apps
pip install "geometrics[all]"          # everything, incl. PNG export

Python 3.11 以上が必要です。

ひと目で

付属のケーススタディを読み込み、変数ラベルを付与して地図化します — すべての図はインタラクティブな Plotly オブジェクトです。

import geometrics as gm

# India — 520 districts, satellite nighttime lights (1996–2010)
gdf, df, df_dict = gm.data.load_india()
df = gm.set_labels(df, df_dict, set_panel=True)

# A classified choropleth of nighttime lights in 2010
gm.explore_choropleth_map(df, "ntl_total", gdf=gdf, period=2010).fig

収束を推定し、それ自身に説明させる — β 収束と σ 収束、それぞれに平易な言葉での解説を添えて。

beta = gm.analyze_beta_convergence(df, "ntl_total", model="ols")
print(beta.interpret())          # plain-language, associational reading

sigma = gm.analyze_sigma_convergence(df, "ntl_total")

学びながら進む — 概念サンドボックスと解説。

gm.learn_beta_convergence(convergence_rate=0.02)  # a runnable concept sandbox
print(gm.explain("spatial_autocorrelation"))      # a concept explainer; gm.list_topics() lists all 30

探索分析学習 で各関数の動作をご覧ください。

基盤

geometrics は、空間分析エコシステム PySAL とモダンな Python のデータスタックの上に成り立っています。

  • PySALlibpysal(重み)、esda(モランの I/LISA)、giddy(分布ダイナミクス)、inequality(ジニ/タイル)、mapclassify(コロプレス図の分類)、spreg(空間回帰)、mgwr(マルチスケール GWR)
  • geopandas — 地理空間データフレーム
  • Plotly — インタラクティブな図
  • Great Tables — 出版品質の表

謝辞

geometricsQuaRCS Lab(定量地域・計算科学)で開発されており、PySAL プロジェクト、geopandas、Plotly、Great Tables の上に成り立っています。研究で geometrics を使用する際は、リポジトリ(CITATION.cff を参照)および基盤となる PySAL パッケージを引用してください。

カルロス・メンデス
カルロス・メンデス
開発経済学 准教授

私の研究は、開発経済学、空間データサイエンス、計量経済学を統合し、地域間における持続可能な開発のプロセスをより深く理解し、政策に役立てることを目指しています。