代码で語るマニフェスト:从数据与工程看自治体DX的现实与改进路径

IT政策提案
代码で語るマニフェスト:从数据与工程看自治体DX的现实与改进路径

どうも〜おかむーです!今天来聊聊政府和自治体的数据与系统,从工程师视角把政策按“代码”拆解,看看哪里能跑得更快、更稳。

  • 这篇三句话要点:
- 许多政策和評価数据藏在PDF与レポート里,機械可读性差,二次利用成本高。

- エンジニア的に言うと,多數自治体缺少統一的API与スキーマ,データカタログ化不足导致再利用难。

- 改善方向明确:开放API、统一JSON/CSV模式、CI化的数据发布与质量监测。

結論

日本的政府/自治体在「展示」政策成果方面做得还行(PDF、サイト更新),但在「供给机器可读数据」这一层面严重不足。要把政策变成可验证、可复现、可自动化监测的系统,需要把报告从PDF拉回到数据流(ETL → API → ダッシュボード → CI),并建立开放スキーマ与バージョニング机制。

レポート本文

現状観察(データ來源と形式)

これ見てくださいよ:デジタル庁(digital.go.jp)や国交省系の資料、地方交付金の評価(例:chisou.go.jpのデジタル田園都市交付金KPI文書)や各市の実績ページ(例:須賀川市の評価)を見ると、以下が共通課題です。

  • PDF中心:KPIや実績はPDFで公表されることが多い。要するに、機械で直接集計・比較できないということです。
  • スキーマ不在:CSV/JSONがあってもフォーマットは自治体ごとにバラバラ。APIのエンドポイントが統一されていない。
  • メタデータ不足:更新日時、スキーマバージョン、ライセンスが明示されていないケース多数。

技術的にどこが問題か(エンジニア視点)

  • 可観測性がない:KPIの原データと計算式が公開されていないため、同じ指標でも再現できないことが多い。
  • データパイプラインが手作業:PDF→手入力→Excel→公開、というフローが残るとヒューマンエラーが発生する。
  • APIがない、あってもスロークエリや認証設計が雑:レート制限やCORS、認証方式がまちまちで開発者体験が悪い。

実務での検証例(想定ワークフロー)

エンジニア的に言うと、API一本で解決する話なんですよね。実際に自治体のKPI一覧を集めて差分を出す簡単な流れを示します。

  • データ取得:公開APIがあればGET /kpi を叩く。なければPDFをバッチでダウンロードしてテーブル抽出。
  • 正規化:年度、指標コード、値、単位、更新日を揃える。
  • 検証:policy_target / actual で達成率を算出。

コード例(Python, pseudocode):

# 例: APIが無い場合はPDFを解析してCSV化

import requests

from tabula import read_pdf

import pandas as pd

PDFダウンロード

r = requests.get('https://example.gov.jp/report.pdf')

open('report.pdf','wb').write(r.content)

テーブル抽出

dfs = read_pdf('report.pdf', pages='all')

正規化処理

kpi_df = pd.concat(dfs)

kpi_df.columns = ['year','kpi_code','value','unit']

集計と達成率

targets = pd.read_csv('policy_targets.csv')

merged = kpi_df.merge(targets, on=['year','kpi_code'])

merged['achievement'] = merged['value'] / merged['target']

print(merged[['kpi_code','year','achievement']])

要するに:PDF→CSVのフェーズで自動化ツール(tabula, camelot, OCR)を組み合わせれば一時的な救済にはなるが、根本解決はAPIと統一スキーマの導入。

政策の数値目標と実績ギャップの扱い

chisou.go.jp のガイドラインをみると(交付金KPI管理のドキュメント)、国は数値目標の設定と報告を求めている。でもローカルの実績ページ(須賀川市など)を見ると外部レビューはPDFに頼っており、機械的な整合チェックが入りにくい。

  • 提案する指標管理ルール:
- KPIは機械可読フォーマット(JSON-LD/CSV)で公開

- 各指標に計算式(CQL/SQL)を添付して再現可能性を担保

- データ更新のCI(GitHub Actions等)で整合性テストを回す

オープンデータ活用の具体案

  • 中央はe-Stat等の既存APIと連携して、地方のKPIハブ(CKANベース)を構築
  • ダッシュボードは共通ライブラリ(React + D3 / DataPortal)でテンプレ化、自治体はデータを差し替えるだけでOK
  • データ品質指標(completeness, timeliness, schema-valid)を公開して改善インセンティブを作る

実装の段階的ロードマップ(短中長期)

  • 短期(半年):主要KPIをCSV/JSONで公開、READMEとスキーマを添付。PDFと共存OK。
  • 中期(1年):自治体向けのテンプレAPI(KPI API spec)を整備。CIテンプレを提供。
  • 長期(2〜3年):中央と地方が共通のデータカタログを持ち、APIゲートウェイで認証・メトリクス管理。

まとめ

ポイントを整理すると:

  • PDF中心の公開は見た目は良いが、再利用性ゼロに近い!
  • エンジニア視点で必要なのは「データの流れ」を設計すること(ETL→API→テスト→可視化)
  • 具体策:統一スキーマ、APIエンドポイント、CIによる品質保証、データカタログ導入

おかむーから一言

テクノロジーで社会をアップデートするって口にするなら、まずは政策データをコードで再現できるようにしようぜ!小さなAPI一本が未来を変えるんですよ。熱いんだよ俺は!