{
  "identifier": "gb-air-health-vulnerability-2025",
  "title": "경상북도 읍면동별 대기환경 건강취약지수 (2025)",
  "description": "대기오염 노출도, 민감인구 비율, 공공보건 대응역량을 결합해 경상북도 읍면동 321곳의 건강취약성을 0~100점으로 산출. 국립환경과학원 VESTAP 취약성 평가구조 준용.",
  "keyword": [
    "대기환경",
    "미세먼지",
    "건강취약성",
    "읍면동",
    "경상북도",
    "VESTAP"
  ],
  "publisher": "경상북도",
  "issued": "2026-08-20",
  "language": "ko",
  "license": "공공누리 제1유형 권장 (발주기관 확정 필요)",
  "accrualPeriodicity": "연 1회",
  "accrualNote": "원자료(에어코리아 확정자료, 주민등록 인구, 보건기관 현황)가 연 단위로 갱신되므로 이듬해 상반기에 재산출할 수 있다.",
  "contactPoint": {
    "organization": "경상북도",
    "department": "(발주기관 담당 부서 기입)",
    "email": "(담당자 이메일 기입)"
  },
  "temporalCoverage": "2025-01-01/2025-12-31",
  "spatialCoverage": {
    "name": "경상북도",
    "adminLevel": "행정동",
    "unitCount": 321,
    "crs": "EPSG:4326"
  },
  "primaryKey": "행정구역코드",
  "keyNote": "행정표준코드 10자리 문자열. 정수로 변환하면 조인이 깨진다.",
  "rowUnit": "1행 = 1개 행정동 (중복 없음)",
  "missingValueRule": "빈 문자열은 '해당 없음'. 측정·집계 실패로 인한 결측은 없다.",
  "methodology": {
    "framework": "국립환경과학원 VESTAP (노출 + 민감도 − 적응능력)",
    "formula": "(노출도′ + 민감인구비율′ − 대응역량′) / 3",
    "rescale": "(지수 − 최솟값) / (최댓값 − 최솟값) × 100",
    "normalization": "Min-Max (OECD·JRC 복합지표 지침)",
    "weighting": "동일가중치 1/3 (전문가 AHP 미실시)",
    "spatialInterpolation": "IDW power=2, 측정소 53개소 → 행정동 중심점",
    "airQualityIndex": "통합대기환경지수 구간별 선형보간, 일별 PM10·PM2.5 중 최댓값",
    "interpretation": "높을수록 취약. 경북 내 상대값이며 타 시도와 비교 불가"
  },
  "sources": [
    {
      "name": "에어코리아 최종확정 시간자료",
      "provider": "한국환경공단",
      "period": "2025-01-01/2025-12-31",
      "url": "https://www.airkorea.or.kr/web/last_amb_hour_data?pMENU_NO=123"
    },
    {
      "name": "주민등록 연령별 인구현황",
      "provider": "행정안전부",
      "period": "2025-12",
      "url": "https://jumin.mois.go.kr/ageStatMonth.do"
    },
    {
      "name": "경상북도 보건지소 현황",
      "provider": "경상북도",
      "period": "2025",
      "url": "https://www.data.go.kr/data/15056413/fileData.do"
    },
    {
      "name": "경상북도 보건진료소 현황",
      "provider": "경상북도",
      "period": "2025",
      "url": "https://www.data.go.kr/data/15056412/fileData.do"
    },
    {
      "name": "행정동 경계",
      "provider": "vuski/admdongkor",
      "period": "2025-04",
      "url": "https://github.com/vuski/admdongkor"
    }
  ],
  "knownIssues": [
    "분석 단위 321곳 — 인구자료 334곳에서 출장소 13곳을 모 행정동에 합산. 경계 파일의 경주시 중부동은 인구자료에 없어 제외",
    "고령군 대가야읍 측정소의 API 좌표 오류(남중국해)를 행정동 중심점으로 대체",
    "행정구역 개편으로 어긋난 보건기관 주소 6건 수동 보정",
    "측정소가 없는 행정동의 농도는 실측이 아닌 공간보간 추정값",
    "대응역량은 보건지소·보건진료소만 집계. 보건소 본소·민간의료·응급의료 제외"
  ],
  "fields": [
    {
      "name": "취약순위",
      "type": "integer",
      "unit": "위",
      "description": "건강취약지수 내림차순 순위"
    },
    {
      "name": "행정구역코드",
      "type": "string",
      "unit": null,
      "description": "행정안전부 행정표준코드 10자리. 조인키. 정수로 바꾸면 조인이 깨진다"
    },
    {
      "name": "시군구명",
      "type": "string",
      "unit": null,
      "description": "시·군 이름"
    },
    {
      "name": "구명",
      "type": "string",
      "unit": null,
      "description": "포항시 남구·북구에만 값이 있다. 빈칸은 해당 없음"
    },
    {
      "name": "읍면동명",
      "type": "string",
      "unit": null,
      "description": "행정동 이름"
    },
    {
      "name": "건강취약지수",
      "type": "number",
      "unit": "점",
      "description": "최종 지수. 0~100. 높을수록 취약"
    },
    {
      "name": "건강취약지수_1차",
      "type": "number",
      "unit": null,
      "description": "재표준화 전 값. (노출도′+민감비율′−대응역량′)/3. 음수 가능"
    },
    {
      "name": "대기오염노출도",
      "type": "number",
      "unit": "점",
      "description": "2025년 일별 대기오염점수의 평균"
    },
    {
      "name": "대기오염노출도_표준화",
      "type": "number",
      "unit": "0~1",
      "description": "Min-Max 표준화"
    },
    {
      "name": "민감인구비율",
      "type": "number",
      "unit": "%",
      "description": "(0~14세 + 65세 이상) / 총인구 × 100"
    },
    {
      "name": "민감인구비율_표준화",
      "type": "number",
      "unit": "0~1",
      "description": "Min-Max 표준화"
    },
    {
      "name": "인구1만명당_공공보건기관수",
      "type": "number",
      "unit": "개소",
      "description": "(보건지소+보건진료소) / 총인구 × 10,000"
    },
    {
      "name": "공공보건대응역량_표준화",
      "type": "number",
      "unit": "0~1",
      "description": "Min-Max 표준화. 클수록 인구 대비 기관이 충분"
    },
    {
      "name": "PM10_연평균농도",
      "type": "number",
      "unit": "㎍/㎥",
      "description": "공간보간된 읍면동 일평균의 연평균"
    },
    {
      "name": "PM25_연평균농도",
      "type": "number",
      "unit": "㎍/㎥",
      "description": "공간보간된 읍면동 일평균의 연평균"
    },
    {
      "name": "대기_유효일수",
      "type": "integer",
      "unit": "일",
      "description": "대기오염점수가 산출된 일수. 최대 365"
    },
    {
      "name": "총인구",
      "type": "integer",
      "unit": "명",
      "description": "2025년 12월 말 주민등록 인구"
    },
    {
      "name": "유소년인구",
      "type": "integer",
      "unit": "명",
      "description": "0~14세"
    },
    {
      "name": "고령인구",
      "type": "integer",
      "unit": "명",
      "description": "65세 이상"
    },
    {
      "name": "민감인구",
      "type": "integer",
      "unit": "명",
      "description": "유소년인구 + 고령인구"
    },
    {
      "name": "유소년비율",
      "type": "number",
      "unit": "%",
      "description": "유소년인구 / 총인구 × 100"
    },
    {
      "name": "고령비율",
      "type": "number",
      "unit": "%",
      "description": "고령인구 / 총인구 × 100"
    },
    {
      "name": "보건지소수",
      "type": "integer",
      "unit": "개소",
      "description": "주소 기준 해당 행정동 소재"
    },
    {
      "name": "보건진료소수",
      "type": "integer",
      "unit": "개소",
      "description": "주소 기준 해당 행정동 소재"
    },
    {
      "name": "공공보건기관수",
      "type": "integer",
      "unit": "개소",
      "description": "보건지소수 + 보건진료소수"
    },
    {
      "name": "중심위도",
      "type": "number",
      "unit": "도",
      "description": "행정동 경계의 면적가중 중심점. EPSG:4326"
    },
    {
      "name": "중심경도",
      "type": "number",
      "unit": "도",
      "description": "행정동 경계의 면적가중 중심점. EPSG:4326"
    }
  ],
  "distributions": [
    {
      "fileName": "경북_대기환경_건강취약지수_2025.csv",
      "mediaType": "text/csv",
      "note": "결과표. UTF-8"
    },
    {
      "fileName": "경북_대기환경_건강취약지수_2025.json",
      "mediaType": "application/json",
      "note": "결과표 레코드 배열"
    },
    {
      "fileName": "경북_대기환경_건강취약지수_2025.xlsx",
      "mediaType": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
      "note": "사람용. 건강취약지수·컬럼설명·산출방법 3시트"
    }
  ],
  "openDataStars": {
    "level": 3,
    "basis": "CSV·JSON 개방 포맷 제공. URI 미도입으로 4단계 미달"
  }
}