コードで語るマニフェスト:自治体データの“読みやすさ”を検証する

- 이거 보세요: 도쿄 메트로 데이터 카탈로그 같은 포털은 풍부하지만 기계판독성은 제각각이다!
- 엔지니어적으로 말하면: PDF에 묻힌 수치들은 자동화 파이프라인에서 빼기 힘든 블랙박스다!
- 해결책은 간단: 표준화된 메타데이터, CSV/JSON 우선 공개, 그리고 가볍고 일관된 API 설계다!
結論
현행 지방자치단체의 오픈데이터 풍경은 'データはあるけど使いにくい' 상태다. PDF 문서가 많고, 포털마다 메타데이터 표준 적용이 엇박자라 재현가능한 파이프라인을 짜기 어렵다. 기술적으로는 CSV/JSON 우선, DCAT 기반 메타데이터, 그리고 간단한 RESTful API로 해결 가능하다.
レポート本文
현황 스냅샷
- 도쿄 오픈데이터 카탈로그(https://catalog.data.metro.tokyo.lg.jp/dataset)에는 많은 데이터셋이 올라와 있다. 이건 굉장히 좋은 출발점!
- GovTech東京의 데이터利活用 소개(https://www.govtechtokyo.or.jp/services/data-utilization/)는 대시보드 체계화와 공동화 같은 실무 노하우를 공유하고 있다.
- 반면 니가타시 같은 지자체는 오픈데이터 CSV 매뉴얼(pdf)(https://www.city.niigata.lg.jp/shisei/seisaku/it/open-data/index.files/csv_manual_v1.1.pdf)로 가이드하고 있지만, 실제 공개 데이터는 여전히 PDF 또는 엑셀에 묶여 있는 경우가 많다.
이거 보세요, 이 조합은 실무에서 바로 쓰기엔 불편하죠! PDF에 표가 박혀있으면 자동 파싱으로는 정확도가 떨어지고, 엑셀 파일은 스키마가 바뀌면 파이프라인이 깨진다.
기계판독성 문제 (기술적 관점)
- 포맷 일관성 없음: CSV/JSON/XML/Excel/PDF가 혼재. 자동화 파이프라인은 가장 약한 고리에 민감하다.
- 메타데이터 부재: 컬럼 설명, 업데이트 주기, 라이センス 정보가 불충분하면 재사용이 막힌다.
- API 부재 또는 단편적 제공: 중앙화된 REST API가 없으면 각 포털을 스크래핑해야 해서 유지보수가 어려움.
요컨대, 데이터가 'ある' 것과 '使える' 것은 완전히 다른 문제다!
코드 예시: 실무에서 바로 쓸 수 있는 간단한 접근
- CSV 다운로드 + 판다스 기본 파이프라인
import requests
import pandas as pd
url = "https://catalog.data.metro.tokyo.lg.jp/dataset/{dataset_id}/resource/{resource_id}/download"
r = requests.get(url)
open('data.csv','wb').write(r.content)
df = pd.read_csv('data.csv')
print(df.head())
- PDF 표 추출(어쩔 수 없이 PDF라면)
# tabula-py 사용 예(자바 필요)
import tabula
dfs = tabula.read_pdf('report.pdf', pages='all', multiple_tables=True)
후처리해서 스키마 맞추기
- 데이터 검증: pandera 같은 툴로 스키마를 코드로 관리
import pandera as pa
schema = pa.DataFrameSchema({
"date": pa.Column(pa.DateTime),
"value": pa.Column(pa.Float, nullable=False)
})
schema.validate(df)
이런 식으로 파이프라인을 코드로 정의하면 '데이터가 하나 바뀌었을 때' 알람 받고 대응하기 쉬워진다.
정책目標 vs 実績のギャップの見方
많은 정책 문서에 목표치(예: オープンデータ掲載率○○%)가 적혀있지만, 실제로는「掲載はしているがCSVでない」「ライセンスが不明」などのケースがある。数値 목표 자체は達成しても、機械可読性や再現可能性の観点ではギャップが残るんです。
분석 방법 제안:
- 메타데이터 스캐너를 만들어 포털을 정기 크롤링(도메인별로 go.jp/lg.jp 등)
- 파일 포맷 분포(HTML/PDF/CSV/JSON) 집계
- 라이センス 명시 여부 체크
- API 유무 및 응답시간·レスポンスフォーマット 표준 준수 여부 평가
이 결과로 '정책達成度'를 재정의할 수 있다: 단순掲載率ではなく『機械可読データ率』をKPIにする、みたいな。
개선提案(具体的)
活用可能性の提示
- 재난対策: センサーや避難所データをリアルタイムAPI化すればダッシュボードと連携して意思決定が速くなる。
- 市民サービス改善: 住民手続きの利用状況を機械可読にしてUX改善のPDCAを回す。
- 민간イノベーション: スタートアップが自治体データを使ってサービス作るコストが下がる。
要するに、技術的対応はコストではなく「公共サービスの拡張」を加速する投資なんです!
まとめ
- 現状: データはあるがフォーマットとメタデータがバラバラで使いにくい
- 技術解: CSV/JSON優先、DCATベースのメタデータ、軽量API、CIでのスキーマ検証
- 施策効果: 災害対応や市民サービス、民間連携の質が上がる
おかむーから一言
どうも〜オカムーです!テクノロジーは待ってくれないんですよ〜。小さな改善(CSV一枚、API一本)が社会を大きく変えるので、まずは手を動かしましょう!
정보 출처
- https://support.yahoo-net.jp/voc/s/ytop-sp
- https://www.govtechtokyo.or.jp/services/data-utilization/
- https://support.yahoo-net.jp/PccTop/s/topic/0TO2r000000GnthGAC/yahoo-japan%E3%83%88%E3%83%83%E3%83%97%E3%83%9A%E3%83%BC%E3%82%B8%E5%85%A8%E8%88%AC
- https://note.govtechtokyo.jp/n/n77785a8254d6
- https://support.yahoo-net.jp/PccHelpcenter/s/
- https://zenn.dev/govtechtokyo/articles/b65dc687e50918
- https://www.trans-plus.jp/blog/column/202210_municipality-dx
- https://picks-design.com/blog/5751/
- https://lg.reserva.be/ux-design/
- https://www.nttdata-kansai.co.jp/media/098/
- https://catalog.data.metro.tokyo.lg.jp/dataset
- https://www.city.niigata.lg.jp/shisei/seisaku/it/open-data/index.files/csv_manual_v1.1.pdf
- https://www.city.niigata.lg.jp/shisei/seisaku/it/open-data/index.html
- https://opendata.pref.saitama.lg.jp/datasets
- https://www.harp.lg.jp/opendata/dataset/79.html
공유하기
관련 리포트

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

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

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