交付金レポートを“自動で比較”する技術ガイド:PDFの海からKPIを掘り出す方法

どうも〜おかむーです!今日はデジタル田園都市国家構想交付金の実績レポートをエンジニア的に解析して、地域間比較を自動化する話をしますよ〜
- レポートはPDFで散らばっているけど、比較したいKPIは同じはず
- 機械可読化の第一歩はテーブル抽出+スキーマ正規化
- コードでやれば自治体ごとの“いいね”ポイントと課題が見えてくる
結論
現状、交付金関連の実績資料(例:内閣府や各自治体のPDF:https://www.chisou.go.jp/ や https://www.pref.yamaguchi.lg.jp/)は人間向けに最適化されていてデータ利活用に向かない。でもエンジニア的に言うと、PDF→表抽出→スキーマ正規化→バージョン管理のパイプラインを作れば、地域比較は十分自動化できる。要するに「データの入口」をプログラムで作れば、政策評価のスピードと透明性が劇的に上がるということです!
レポート本文
問題の整理:これ見てくださいよ
- 国・自治体の交付金ページはPDF中心(例:内閣府報告書 https://www.chisou.go.jp/sousei/about/kouhukin/pdf/r6_houkokusho-suishin.pdf や自治体の評価PDF https://www.city.moka.lg.jp/material/files/group/47/r6digitaldennennkouhukinnhyouka.pdf)
- PDFはレイアウトが多様で、KPI名の表現もバラバラ
- 一方で総務省やデジタル庁は標準化を推している(https://www.digital.go.jp/policies/local_governments 、https://www.soumu.go.jp/)
エンジニア的に言うと、ここはETLの典型課題です。入力(PDF)→抽出(テーブル認識)→変換(正規化スキーマ)→出力(CSV/JSON/DB)というパイプラインをコードで作ればいいんですよね。
技術スタック提案
- テーブル抽出:Camelot / tabula-py / Adobe PDF Services(精度比較が必要)
- テキスト抽出:pdfminer.six、Tesseract(スキャンPDF対応)
- 正規化:Pandas + custom mapping辞書(KPI名マッピング)
- 検証:Great Expectations風のルールでKPIの型・単位を自動チェック
- 管理:Git + CI(新しいPDFを取り込んだら自動テスト&デプロイ)
コード例(概念):
import tabula
import pandas as pd
pdf = 'r6_houkokusho-suishin.pdf'
tables = tabula.read_pdf(pdf, pages='all', multiple_tables=True)
テーブルを統合し、KPI名を正規化
df = pd.concat(tables)
mapping = {'KPI達成率':'kpi_rate', '目標値':'target'}
df.columns = [mapping.get(c, c) for c in df.columns]
df.to_csv('normalized_kpis.csv', index=False)
要するに、簡単な辞書マッピングと検証ルールを作るだけで、各自治体の「目標」と「実績」を横並びにできます。
実務上の注意点
- 単位のバラつき(%・件数・金額)を厳密に扱うこと。自動変換ルールがいる
- 表のヘッダが複数行にまたがるケースや注釈が混入しているケースに対応するための後処理が必須
- 法令や省庁リリース(デジタル庁、総務省)のスキーマ標準と合わせるのが長期的に楽
施策提案(すぐできる優先度高め)
まとめ
- PDFオンリーの実績報告はまだまだ多いが、技術で解ける問題
- 重要なのは“スキーマ設計”と“継続的な検証”の仕組み
- 小さなパイプライン(PDF抽出→正規化→CI)を自治体に広げれば、政策評価の透明性が一気に上がる!
おかむーから一言
テクノロジーで社会をアップデートするのって、本当にワクワクするんですよ。まずはPDF1つ、自動化してみましょう。そこから社会が動きます!
情報ソース
- https://www.keiba.go.jp/
- https://www.digital.go.jp/policies/local_governments
- https://www.keiba.go.jp/KeibaWeb/TodayRaceInfo/TodayRaceInfoTop
- https://www.soumu.go.jp/menu_seisaku/chiho/jichitaijoho_system/index.html
- https://www.keiba.go.jp/live/
- 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/001682075.csv
- https://www.soumu.go.jp/main_content/000323625.csv
- https://www.chisou.go.jp/sousei/about/kouhukin/pdf/r6_houkokusho-suishin.pdf
- https://www.chisou.go.jp/sousei/pdf/r5_guideline-checkaction.pdf
- https://www.city.moka.lg.jp/material/files/group/47/r6digitaldennennkouhukinnhyouka.pdf
- https://www.pref.yamaguchi.lg.jp/uploaded/attachment/160746.pdf
- https://www.digital.go.jp/policies/digital_garden_city_nation
シェアする
関連レポート

公共予約システムの“ログインからAPI化”ロードマップ:パスワードレスで運用コストを下げる技術提案
公共施設予約の認証とデータを段階的にAPI化して運用コストを下げる技術ロードマップを紹介します。

政府データを“つなげる”発想:省庁バラバラを超えるフェデレーション戦略
フェデレーション層で省庁データをつなぎ、PDF混在を克服する実践的な技術案を示す。

政策ダッシュボードは“作るだけ”じゃダメ!KPIを自動で監査するパイプライン設計
政策ダッシュボードの数値を自動監査するパイプライン設計案。API・スキーマ・差分管理でKPIの信頼性を上げる技術手法を紹介します。