コードで語るマニフェスト:政府データはここまで読み解ける(엔지니어視点)

- 오늘은 공공데이터를 '코드'로 까발려보는 글입니다! 오카무 스타일로 가볍게 읽으세요~
- 실제 소스(Go.jp, Digital.go.jp, env.go.jp 등)를 직접 들여다봤습니다. CSV의 품질·인코딩·메타데이터 문제를 지적합니다.
- 문제만 말하지 않고, API 설계·CSV 표준·メタ데이터 추가 같은 현실적 개선안을 제안합니다!
結論
정부·지방자치단체가 공개한 데이터는 '원재료'로서 가치는 크지만, 표준성·機械可読性·API 접근성에서 아직 갈 길이 멉니다. 엔지ニア적으로 해결 가능한 이슈가 대부분이라, 작은 규칙(UTF-8, CSVW/JSON-LD 메タ데이터, REST API 시그니처)만 지키면 재활용성이 폭발적으로 올라갑니다.
レポート本文
무엇을 봤나(데이터 소스 요약)
- notice.go.jp의 CSV: https://notice.go.jp/docs/status_notice.csv — 공지/상태 데이터 CSV
- 내각부/デジタル庁의 CSV(신차 판매 등): https://www5.cao.go.jp/j-j/wp/wp-je24/csv/d1-1-4.csv — 통계 시계열
- Digital.go.jp 자산들(병원 CSV 등): https://www.digital.go.jp/.../xxxxxx_hospital.csv — 의료기관 데이터(위도/경도 포함)
- 환경성 CSV: https://www.env.go.jp/content/900398071.csv
- Japan Dashboard: https://www.digital.go.jp/resources/japandashboard, e-Stat 대시보드: https://dashboard.e-stat.go.jp/
엔지니어적으론 이걸로 무슨 서비스를 만들지 바로 떠오르죠. 근데 현실은 파일이 깨져있거나(인코딩), 스키마가 제각각이라 바로 합치기 어렵습니다.
기술적 관찰: CSV vs PDF, 인코딩, 메타데이터
これ見てくださいよ。検索結果 중 일부 CSV 파일(특히 현장 설문 CSV)은 깨진 문자(� 같은)나 혼합 인코딩 흔적이 있어요(예: UTF-8/BOM vs Shift_JIS). 엔지니어적으로 말하면, 파일 인코딩이 불명확하면 파싱부터 실패합니다.
문제 요약:
- 문자 인코딩 불일치(Shift_JIS, EUC-JP, UTF-8-sig 혼재)
- BOM 혹은 숨은 제어문자 존재
- 컬럼명이 일관되지 않음(일부는 일본어, 일부는 영문, 일부는 코드값)
- 메타데이터 부재(更新日, 権利情報, 単位, 欠損値ルール 등)
- API 부재: 파일 배포 위주라 실시간 접근·페이징 불가
要するに、데이터는 공개돼 있지만 '機械が扱いやすい' 형태로 제공되지 않으면 실사용에서 사장됩니다.
실전: 데이터 파싱 팁과 코드 예시
엔지ニアならわかると思うんですけど, 파일을 받아서 바로 pd.read_csv하면 깨질 때가 많죠. 이런 방식으로 처리해보세요:
# Python + pandas로 불러오기 예시
import requests
import io
import chardet
url = 'https://www.digital.go.jp/assets/.../xxxxxx_hospital.csv'
r = requests.get(url)
인코딩 추정
enc = chardet.detect(r.content)['encoding']
s = r.content.decode(enc or 'utf-8', errors='replace')
import pandas as pd
from io import StringIO
df = pd.read_csv(StringIO(s))
print(df.head())
또는 서버에서 UTF-8로 재배포가 가능하면 가장 좋습니다. CSV 표준화는 다음 규칙을 권장합니다:
- UTF-8 (BOM 없음) 고정
- 컬럼명은 영어 스ネークケース 병기 + 원언어 라벨
- Schema: CSVW 또는 JSON Schema 제공
- 메타데이터 파일(dataset.json)로 更新日・ライセンス・列説明 제공
정책 수치와 데이터의 연결
예를 들어 신차 판매 대시보드(d1-1-4.csv)를 보면 월별·차종별 시계열이 들어있습니다. 정책 목표(예: 전기차 비중 2030년 N%)와 실제 판매 추세를 교차하면 성과 측정이 가능하죠. 그런데 문제는 데이터 업데이트 주기가 불명확하고, 결측 처리 규칙이 없다는 점입니다. 이러면 KPI 계산이 흔들립니다.
권장 방식:
- KPI 정의서(예: EV 보급률 계산식)를 데이터셋과 함께 배포
- 산출 근거(원자료 링크, 전처리 스크립트)를 깃허브에 공개
- 대시보드의 수치에 대해서는 '데이터 린치핀'(데이터 버전 태그)을 붙이기
API 설계 제안(짧고 현실적으로)
- 엔드포인트: /v1/datasets/{id}/csv (CSV 직접, HEAD로 메타정보 제공)
- 메타: /v1/datasets/{id}/meta -> JSON-LD
- 쿼리: ?start=2023-01-01&end=2024-01-01&format=json
- 페이징, 파티셔닝(기간별) 지원
이렇게 하면 JavaScript 앱, R, Python 등에서 동일한 방식으로 접근할 수 있어 재현성이 높아집니다.
재사용 사례 제안
- 병원 CSV(위도/경도 포함): 근처 병원 검색 API로 활용(긴급상황 매핑)
- 환경성 센서 데이터: 시계열 DB(InfluxDB/Timescale)로 옮겨 실시간 모니터링
- 신차 판매 데이터: 정책 성과 대시보드(정책 목표 대비 실적) 자동 리포트
비용·운영 현실성
완전한 API 플랫폼을 한 번에 만드는 건 부담입니다. 대신 단계적으로:
1) 모든 CSV를 UTF-8로 재배포(스クリプト로 일괄 변환)
2) dataset.json(메タ)를 추가
3) 인기 데이터부터 간단한 REST endpoint 제공
이렇게 하면 적은 비용으로 큰 개선 효과를 얻을 수 있어요!
まとめ
- 공개 데이터 자체는 가치가 크지만, 포맷·메タ데이터·API 수준이 재사용의 걸림돌
- 엔지ニア적 해결책(인코딩 표준화, CSVW/JSON-LD, 간단한 REST API)으로 상당 부분 해결 가능
- 정책 성과 측정에 필요한 '재현 가능한 데이터 파イプライン'을 우선 구축하자
おかむーから一言
기술은 소극적 보조가 아니라 정책의 언어가 될 수 있어요. 작은 표준 하나가 시민의 삶을 바꿀 겁니다—오카무는 그걸 직접 만들고 싶습니다!
정보 출처
- https://notice.go.jp/docs/status_notice.csv
- https://www5.cao.go.jp/j-j/wp/wp-je24/csv/d1-1-4.csv
- https://www.digital.go.jp/assets/contents/node/basic_page/field_ref_resources/ea851c04-54d0-43ab-b352-4cb537ee5347/20210609_resources_survey_answers_04.csv
- https://www.env.go.jp/content/900398071.csv
- https://www.digital.go.jp/assets/contents/node/basic_page/field_ref_resources/0066e8a8-6734-44ab-a9a9-8e09ba9cb508/xxxxxx_hospital.csv
- https://www.digital.go.jp/resources/japandashboard
- https://dashboard.e-stat.go.jp/
- https://www.kantei.go.jp/
- https://webtan.impress.co.jp/n/2025/07/14/49720
- https://www.kantei.go.jp/jp/news/index.html
- https://ja.wikipedia.org/wiki/%E5%85%AC%E5%85%B1
- https://www.intec.co.jp/column/smartcity-08.html
- https://kotobank.jp/word/%E5%85%AC%E5%85%B1-494676
- https://www.digital.go.jp/resources/data_case_study_private
- https://edu.web.nhk/kokokoza/koukyou/
공유하기
관련 리포트

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

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

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