🦁
Qiita記事"Python × 公開経済データで学ぶ マクロ経済学 入門(4):各国の政府支出はどう変わった?2000年以降の
記事の要約と詳しい解説(噛み砕き版)
いい記事ですね — マクロ指標を wbdata で取ってきて「2000年以降の各国の政府支出/財政の動き」を見よう、という内容です。記事名・著者・公開日などのメタ情報と目的は本文に明示されています。(Qiita)
1) この記事の目的(ざっくり)
- World Bank の公開データを Python (
wbdata+pandas) で取得し、各国の GDP 構成要素(民間消費・投資・政府支出・輸出入・GDP)を整理して、政府支出や債務などのマクロ政策の変化を時系列で読み解く。(Qiita)
2) コードの基本(データ取得/整形の流れ)
- 基本関数
get_gdp_and_related_data(country_code="JP", start_year=1975, end_year=2024)を定義し、wbdata.get_dataframe()で以下の指標を年次(freq="Y")で取得している:
NE.CON.PRVT.CD(民間消費),NE.GDI.TOTL.CD(投資),NE.CON.GOVT.CD(政府支出),NE.EXP.GNFS.CD(輸出),NE.IMP.GNFS.CD(輸入),NY.GDP.MKTP.CD(名目GDP)など。 - 取得後は
reset_index()→dateをYearに変換 → 年でソート、という整形をして DataFrame として返す流れ。基本実装がまず示されています。(Qiita)
3) 追加・強化された指標(記事が推奨する拡張)
記事は「財政や雇用・為替の議論をするならこれも入れたほうが良い」という観点で、以下のような指標を追加する強化版 indicators を示しています(World Bank コード付き):
- 失業率:
SL.UEM.TOTL.ZS - CPI(インフレ率):
FP.CPI.TOTL.ZG - 政府債務 (% of GDP):
GC.DOD.TOTL.GD.ZS - 財政収支 (% of GDP):
GC.BAL.CASH.GD.ZS(基礎的・財政バランス系) - 実質成長率:
NY.GDP.MKTP.KD.ZG、為替(対USD):PA.NUS.FCRF、外貨準備高:FI.RES.TOTL.CD、経常収支(%GDP):BN.CAB.XOKA.GD.ZS、人口:SP.POP.TOTL、労働参加率:SL.TLF.CACT.ZS等。
これにより「財政の持続可能性」「失業とインフレ(フィリップス曲線)」「純輸出と為替の連動性」といったテーマの議論が可能になります。(Qiita)
4) 実運用上の工夫(エラー処理・統合)
- 各指標を個別に
wbdata.get_dataframe({code:name}, ...)で取得してall_dataに格納 →pd.concatで横方向に結合、Yearに基づく groupby で整理、という「指標ごとに失敗しても残りは取得する」実装になっています(API の欠損や一時エラー対策)。 - 実行ログとして「取れなかった指標はコンソールに出力」しておき、国リストは成功した国のみ
dfsに格納する運用が推奨されています。(Qiita)
5) 記事が示す代表的な分析例(コード例付き)
記事は具体的な分析案とコードスニペットをいくつか示しています。代表的なものを要約します:
-
政府債務の時系列比較(国ごとに
Gov_Debt_to_GDPをプロットして比較)。(サンプルmatplotlibコードあり)(Qiita) -
フィリップス曲線的分析:
Unemployment_RateとInflation_Rateの散布図で失業とインフレの関係を見る(seaborn.scatterplotの例)。(Qiita) -
純輸出と為替の同時表示:純輸出(
Exports - Imports)と為替(Exchange_Rate_to_USD)を二軸プロットで比較する例(twinx()を使ったコード)。(Qiita) - 構成比の積み上げグラフ:GDP に対する消費・投資・政府支出の割合を積み上げ棒グラフで可視化し、国ごとの構造を比較する、など。(Qiita)
6) 実際の出力例 — 「政府債務(%GDP)」の3期平均比較 と記事の解釈
記事中で実行した出力(各国の Gov_Debt_to_GDP を「〜2000 / 2001〜2010 / 2011〜」で平均した結果)は次の通りでした(主要数値のみ抜粋):
- JP: 約 63 → 131 → 197(%)
- US: 約 43 → 61 → 103(%)
- GB: 約 63 → 99 → 156(%)
- KR: 約 8.5 → (欠損) → 41(%)
- AU: 約 20 → 24 → 51(%)
- DE, CN, AR:データ欠損や利用不能の期間あり。(Qiita)
記事の解釈ポイント(要旨)
- 日本:2000年代以降、財政赤字拡大や景気対策、社会保障費増加で比率が大きく上昇し、2011年以降は GDP の約2倍近くに到達している。(Qiita)
- 米国:2008年以降の金融危機(および後続の景気刺激策)、さらに COVID-19 対応で負債比率が上昇。(Qiita)
- 英国:同様に 2008 年以降に債務が増加、パンデミック対応も影響。(Qiita)
- 韓国/オーストラリア:以前は比較的低水準だったが近年上昇傾向(それでも先進国平均よりは低め)。(Qiita)
(上は記事の出力とその解釈を要約したものです。実数・欠損の扱いは記事内の出力そのままに基づきます。)(Qiita)
7) 注意点・データの限界
- World Bank のデータカバレッジの関係で国・指標によって欠損が出る(記事では英国の
NE.CON.PRVT.CDが取得できなかった例がある)。その場合は「別指標から近似」したり(例:Consumption ≒ GDP - Investment - Gov_Spending + (Imports - Exports))代替する手法が提案されています。(Qiita) - 中国やアルゼンチンなどは特定指標が未報告・未取得のケースがあり、政策解釈には注意(ローカル会計ルールや地方債などの非公表項目が存在する場合がある)。(Qiita)
8) 記事の締め(次のステップ提案)
- どのテーマを深掘りするか決めてコード化(可視化ノートブック化)する/国ごとのレポートを自動生成するボットを作る、などの発展案が提示されています。実務的には「欠損補完→時系列分解→回帰やイベントスタディ(例:2008年、2020年のショック)」といった流れが考えられます。(Qiita)
もしご希望なら、次をすぐ作ります(どれか選んでください):
- 上記の
get_gdp_and_related_data強化版を Jupyter ノートブック形式で整備(実行可能なコード) - 特定国(例:日本・米国)について「政府支出比率」「債務比率」「インフレと失業」の 1 ページ分析レポート(図 + 解釈)を作るコード
- 欠損の多い指標の補完手順(代替式・補完ロジック)を実装するコード例
どれにしますか?あるいは「この記事のどの部分をもっと詳しく(コードや図で)解説してほしいか」を教えてください。
Discussion