url https://anarchydeve.github.io/daegu_proj/report.html url https://daegu-crime-dashboard.streamlit.app/
대구광역시 공공데이터를 활용하여 범죄 취약지역을 식별하고 안전도 향상 방안을 도출하는 데이터 분석 프로젝트입니다.
- 13개 공공데이터 소스 통합 (CCTV, 안전비상벨, 경찰서, 유흥업소, 학교, 인구통계 등)
- 141개 행정동별 29개 변수로 구성된 종합 데이터셋 구축
- 카카오 API와 VWorld API를 활용한 좌표-행정동 매핑
- KNN 모델을 이용한 결측 행정동 정보 예측
- 행정동별 안전 인프라 및 위험 요소 집계
- 순위험도 = Σ(위험요소 × 가중치) - Σ(안전요소 × 가중치) 공식 적용
- 위험요소 11개, 안전요소 6개 변수 기반 종합 점수 산출
- 실제 범죄 발생률과의 상관관계 검증
- 대구시 행정동별 위험도 지도
- 안전 인프라 분포 현황
- 범죄 발생 패턴 분석 차트
- 실시간 인터랙티브 웹 대시보드: daegu-crime-dashboard.streamlit.app
- Python 3.8+
- Pandas - 데이터 전처리 및 조작
- NumPy - 수치 연산
- Scikit-learn - KNN 모델링
- Requests - API 호출
- 카카오 지도 API - 주소-좌표 변환
- VWorld API - 행정구역 정보
- Folium - 지도 시각화
- Matplotlib / Seaborn - 통계 차트
- Plotly - 인터랙티브 시각화
- Folium - 지도 시각화
- Streamlit - 웹 애플리케이션 배포
daegu-safety-analysis/
├── README.md # 프로젝트 개요 (현재 파일)
├── analysis.qmd # 세부 분석 과정 및 코드
├── app2.py # Streamlit 대시보드 메인 앱
├── data/ # 데이터 파일
│ ├── daegu_crime_data.csv # 대구 범죄 통합 데이터
│ ├── daegu_map.geojson # 대구시 행정동 지도 데이터
│ ├── 범죄율 증감.xlsx # 범죄율 동향 데이터
│ └── 인구수범죄수상관관계.csv # 전국 상관관계 데이터
├── src/ # 분석 소스 코드
│ ├── hitmap.py # 상관관계 히트맵 분석
│ ├── 시각화.py # 다양한 차트 시각화
│ └── data_preprocessing.py # 데이터 전처리
└── presentation.pptx # 발표 자료
** 대구 범죄 분석 대시보드**
- 인터넷 브라우저에서 바로 접속
- 실시간 위험도 분석 및 시각화
- 6개 탭으로 구성된 종합 분석 도구
# 대시보드 로컬 실행
streamlit run app2.py
# 분석 코드 실행
python src/hitmap.py # 상관관계 분석
python src/시각화.py # 차트 시각화# Quarto 설치 후
quarto render analysis.qmd- 총 141개 행정동 분석 대상
- 29개 변수 (인구통계 11개, 안전인프라 6개, 지역특성 5개, 범죄발생 1개)
- 13개 공공데이터 소스 통합
위험도 산출 모델
- 공식: 순위험도 = Σ(위험요소 × 가중치) - Σ(안전요소 × 가중치)
- 위험요소: 인구밀도, 유흥업소밀도, 외국인비율, 고령자비율 등
- 안전요소: CCTV밀도, 경찰시설밀도, 조명밀도, 안전비상벨 등
- 실시간 조절: 대시보드에서 가중치를 슬라이더로 실시간 변경 가능
- 범죄 취약지역 순위 도출
- 안전 인프라 부족 지역 식별
- 지역별 맞춤형 안전도 향상 방안 제시
- 데이터 수집: 13개 공공데이터 포털에서 대구시 관련 데이터 수집
- 좌표 변환: 주소 정보를 위도/경도 좌표로 변환
- 행정동 매핑: 좌표를 행정동 정보로 변환 및 결측값 처리
- 데이터 통합: 행정동별로 모든 변수 집계하여 통합 데이터셋 구성
- 위험도 모델링: 문헌 조사 기반 가중치 설정 및 순위험도 계산
- 검증: 실제 범죄 발생률과의 상관관계 분석
- 시각화: 지도 및 차트를 통한 결과 시각화
대구광역시의 안전한 도시 만들기를 위한 데이터 기반 솔루션