Skip to content

Latest commit

 

History

History
80 lines (58 loc) · 2.99 KB

File metadata and controls

80 lines (58 loc) · 2.99 KB

📊 데이터 분석 프로젝트

📌 주제

2018~2023년 범죄 데이터 기반 지역별 범죄 발생 분석 및 시각화 대시보드 구축

해당 프로젝트는 Streamlit, Altair, Pydeck, GeoJSON을 활용하여
연도별·지역별·범죄유형별 발생 현황을 직관적으로 탐색할 수 있는 대화형 분석 웹 애플리케이션을 구현하는 것을 목표로 합니다.


🎯 주제 선택 이유

  • 범죄 데이터는 시민들의 안전과 직결되는 중요한 공공 데이터이며,
    실제로 연도별·지역별 패턴 변화를 분석하면 의미 있는 인사이트가 많습니다.
  • 기존 제공 자료는 표 형태로 단순 나열되어 있어 지역별 변화나 공간적 패턴 파악이 어려움
  • 사용자가 지도 기반 시각화 + 필터링 기능을 통해 원하는 지역과 범죄 유형을 쉽게 분석할 수 있는 대시보드를 만들고자 함
  • 실무에서 자주 사용되는 Streamlit 기반 웹 대시보드를 직접 구축하며 데이터 엔지니어링·시각화 역량을 강화하기 위함

📈 데이터 분석 내용

✔ 1) 연도별 데이터 정규화

  • 2018~2023년도 범죄 데이터의 형식이 제각각이라
    2023년 기준 long-format(세로형 포맷) 으로 전부 통일
  • 컬럼 정리:
    • 범죄대분류, 범죄중분류, 시도, 세부지역, 지역원본, 발생건수

✔ 2) 연도별 총 범죄 발생 추이

  • 모든 연도별 CSV 파일을 자동 로드
  • 연도마다 총 발생 건수 계산
  • Altair 라인차트로 2018~2023 전체 범죄 발생 추세 시각화

✔ 3) 지역 기반 분석

🗺 시도별 버블맵

  • 한국의 17개 시도 좌표를 기반으로 Pydeck ScatterplotLayer 활용
  • 발생건수에 따라
    • 버블 크기
    • 버블 색상
      을 동적으로 설정

🗺 시군구(구/시/군) 단위 지도

  • 사용자가 선택한 시도에 대해 GeoJSON 레이어로 상세 지도 표시
  • 지역명 불일치를 해결하기 위해 지역명 정규화(normalize) 알고리즘 직접 구현
    • “천안시 서북구”, “천안시서북구” 등 문제 해결
    • “세종특별자치시”, “제주특별자치도”와 같은 복합명도 처리

✔ 4) 상위 지역 분석

  • 필터링된 데이터에서 발생건수 많은 지역 TOP-N 자동 계산
  • 막대그래프(bar chart)로 제공
  • Tooltip 활용해 값 상세 확인 가능

✔ 5) UI/UX 개선 사항

  • 전체 배경을 밝은 톤으로 설정
  • Metric 카드 디자인 개선
  • 지도/차트 간 레이아웃 균형 조절
  • 사용자 친화적인 Sidebar 구성

🎥 시연 동영상

👉 프로젝트 시연 영상 보러가기
(YouTube 또는 MP4 링크 삽입)


👥 팀원 소개

이름 역할 담당 업무
박찬서 팀장 / 총괄 AI와 소통