コードで語るマニフェスト:政府データをエンジニア視点で検証する

안녕하세요~ 오카무입니다! 오늘은 정부·지자체가 공개하는 데이터와 시스템을 엔지니어링 관점에서 쪼개 보는 글입니다. 코드로 말하면 정책이랑 데이터가 제대로 연결돼 있는지 검증하는 느낌으로 읽어주세요!
- 이 글의 3줄 요약
- デジタル田園都市交付金 등政策ではKPIと実績の公開があるけど、機械可読性と比較可能性に課題あり
- API設計・メタデータ整備・CSVW/JSON-stat導入で即改善可能。コード例つきで提案します!
結論
정부·지자체는データを出しているけど「機械がそのまま使える形」で出していないことが多いです。エンジニア的に言うと、CSVとPDFが混在、スキーマ不在、API未整備で再現性と自動検証ができない。要するに「政策の数値目標と実績をコードで追えない」状態です。改善は現実的で、メタデータと簡単なAPIを整備すれば大幅に利活用が進みます!
レポート本文
現状の証拠(データソースを見てくださいよ)
これ見てくださいよ:検索結果にある内閣官房の資料(https://www.cas.go.jp/.../data8_siryou1.pdf)では「機械可読性を確保せよ」と書いてあるけど、現場の公開物はPDFや散在するCSV(https://notice.go.jp/docs/status_notice.csv や https://www.env.go.jp/content/900398071.csv、総務省の全国CSVなど)で、統一スキーマがないんです。
- デジタル田園都市国家構想交付金関連(https://www.chisou.go.jp/.../kouhukin/index.html)ではKPI定義と実績がPDFで公開されるケースが多く(つくば市の実績評価シート等)、機械的な比較が難しい。
技術的な問題点
- PDF先行:重要な指標がPDFに埋め込まれている→スクレイピングやOCRが必要でエラーが増える
- スキーマ不在:CSVはあるが列名・単位・更新日時・ライセンスなどのメタ情報がない
- APIがない/断片的:一貫したREST/GraphQL APIがないため、統合ダッシュボードや自動検証が作りにくい
- KPIと実績の時系列突合が難しい:年度基準や集計粒度がドキュメントでバラバラ
要するに、エンジニア的に言うと「API一本で解決する話なんですよね」。
具体的な検証手法(コード例)
エンジニアならわかると思うんですけど、まずはCSVを読み込んでKPIと実績を突合するのが基本。pandasでの簡単な例はこんな感じです:
import pandas as pd
kpi = pd.read_csv('kpi.csv')
actual = pd.read_csv('actuals.csv')
年度・事業IDでマージ
merged = pd.merge(kpi, actual, on=['fiscal_year','project_id'], how='left')
merged['gap'] = merged['actual_value'] - merged['kpi_value']
print(merged.sort_values('gap', ascending=False).head())
PDFしかない場合は、pdfminer / tabula で抽出して手作業でスキーママッピングが必要になり、ここが運用コストの温床になります。
改善提案(実装可能なロードマップ)
- 列名、単位、年度、更新日時、ライセンスを必須化
- ページング・フィルタ・検索をサポート
from flask import Flask, jsonify, request
import pandas as pd
app = Flask(__name__)
df = pd.read_csv('full_data.csv')
@app.route('/api/projects')
def projects():
year = request.args.get('year')
out = df[df['fiscal_year']==int(year)].to_dict(orient='records')
return jsonify(out)
これだけで自治体の職員とエンジニアのコミュニケーションコストが劇的に下がりますよ!
KPIのギャップ分析(事例)
デジタル田園都市交付金の実績評価資料(つくば市や各県のPDF)を見ていると、KPIが「住民数」「導入拠点数」「費用対効果」など複数で設定されているんですが、年度ごとの粒度や測定方法が統一されていないんです。要するに、A市の「導入拠点数」とB県の「拠点定義」が違うと横並び評価ができない。
ここは標準スキーマ(project_id, indicator_id, definition, unit, measurement_method)を国が公開して、各自治体はこれに従ってCSVで報告するだけで解決します。
オープンデータの活用可能性
- 地域別KPIをAPI化すれば第三者がダッシュボードやアラートを作れる
- MLモデルのためのData for AI工夫(Digital庁のData for AIサブユニットの方向性参照)で、匿名化ルール・スキーマを整備すれば生成AIでの政策分析も安全に進められる
まとめ
- 事実:データは公開されているが機械可読性が低く、エンジニアがすぐ再利用できない状況
- 解決:CSV/JSONでの公開、メタデータ(CSVW等)、簡易API、そして標準スキーマの導入が即効性あり
- 効果:KPIと実績がコードで追えるようになり、政策評価の透明性と再現性が高まる
おかむーから一言
テクノロジーで社会をアップデートするって言ってる自分としては、まず“データをコードで扱える”ようにするのが入口だと思ってます!やれることはすぐできるんですよ〜
정보 출처
- https://www.zhihu.com/question/290714454
- https://www.cas.go.jp/jp/seisaku/digital_gyozaikaikaku/data8/data8_siryou1.pdf
- https://www.zhihu.com/question/6430289390
- https://digital-gov.note.jp/n/neb45f4883f23
- https://www.zhihu.com/question/38923279
- https://notice.go.jp/docs/status_notice.csv
- https://www.env.go.jp/content/900398071.csv
- https://www.inpit.go.jp/content/100869372.csv
- https://www.mhlw.go.jp/content/001429362.csv
- https://www.soumu.go.jp/main_content/000323625.csv
- https://www.chisou.go.jp/sousei/about/kouhukin/index.html
- https://www.chisou.go.jp/sousei/pdf/r5_guideline-checkaction.pdf
- https://www.city.tsukuba.lg.jp/material/files/group/15/shiryou2_R6__kouhukin.pdf
- https://www.pref.yamaguchi.lg.jp/uploaded/attachment/160746.pdf
- https://www.city.sanjo.niigata.jp/material/files/group/2/R7degiden_shinchisou_1-3.pdf
공유하기
관련 리포트

コードで語るマニフェスト:自治体データとシステムをエンジニア視点で検証する
自治体データはPDFやUIに閉じがち。API-firstとJSON Schemaで再利用性を高め、ガバメントクラウドへ移行する実務ロードマップを提示します。

コードで語るマニフェスト:日本政府データの現場から見る技術検証
政府データは可視化が進むも機械可読性不足が課題。CSV/JSON/API、スキーマ、ID統一で政策検証を自動化しよう。

코드로 읽는 마니페스토: 일본 정부 데이터와 시스템을 엔지니어 관점에서 후벼파기
일본 정부 데이터의 PDF·API·메타데이터 문제를 엔지니어 관점에서 분석하고, 실무 가능한 개선안을 코드 예시와 함께 제시합니다。