초등학교 교통안전지수

초등학교 교통안전지수

시각화
초등학교 교통안전지수
Author

양성모

Published

August 12, 2024

초등학교 교통안전지수

1. 목표 설정하기

문제 정의

초등학교 근처는 교통사고를 예방하기 위한 준비 잘 되어 있을까?

필요한 데이터 분석

  • 초기 Item
    • 초등학교 위치 정보
    • 초등학생 교통사고 유형 정보
      • 교통사고 발생 시간특징
      • 발생 위치
    • 초등학교 근처 교통 특징 정보
      • 위험 요소 :
        • 신호등 없는 횡단보도
        • ETC : 공사장, 인도가 없는 도로(보차 혼용도로), 도로폭 좁음
      • 안전 요소 :
        • Yellow 카펫
        • ETC : 단속카메라, 과속 방지턱, 어린이보호구역 도색, 등하교시간 차량 통행금지, 어린이보호구역 내 주정차 단속
    • 교통사고 예방방법 종류
  • 분석 후 결과
    • 어린이 보호구역 위치
    • CCTV

가설 설정

  • 교통사고 예방방법이 많이 적용된 초등학교는 안전하다.
  • 초등학생에게 자주 발생하는 교통사고를 분석하면 초등학교에 필요한 예방방법을 예측할 수 있다.
  • 초등학교 근처의 교통 특징을 보면 교통사고 위험도를 알 수 있다.

2. 데이터 분석

저학년의 교통사고 비율이 높을까요?

초등학생들에게 발생하는 교통사고의 통계정보를 이용해서 특징을 확인합니다. 주로 발생하는 학년 정보와 교통사고 위치 등의 정보를 이해한다면 예방을 위한 방법을 고민할 수 있을 것 같습니다.

위의 그래프는 2023년 발생한 12세 이하 교통사고 발생 건 수를 학년별로 표시한 막대 그래프 입니다. 예상과는 다르게 1학년의 교통사고 보다 2~3학년의 교통사고 발생 비율이 높은 것을 알 수 있습니다.

2~3학년의 교통사고 건수는 249건으로 전체의 약 40%를 차지하는 것을 알 수 있습니다. 2학년 부터 스스로 통학하는 경우가 많아지면서 교통사고 발생 건 수도 높아지는 것이 아닐까 생각됩니다.

새로운 환경에 적응하는 초등학교 1학년 때 학교 주변 위험요소를 확인하고 교통안전에 대해서 교육 받는 과정이 꼭 필요해 보입니다.

2~3학년의 교통사고 건수는 249건으로 전체의 약 40%를 차지합니다. 초등학교 1학년 학생들에게 교통 안전에 대한 교육을 꼭 진행하여 예방이 필요합니다.

어디에서 주로 발생할까요?

스쿨존 내 교통사고가 주로 발생하는 위치를 확인하고 아이들에게 어떤 교육이 필요한 지 고민합니다. 그리고 안전을 주로 점검해야하는 장소가 어디인지 확인합니다.

위의 그래프는 2023년 발생한 12세 이하 교통사고 발생 건 수를 행동유형별로 표시한 막대 그래프 입니다.

그래프로 바로 확인할 수 있는 것처럼 횡단중 횡단보도내 교통사고 유형이 전체의 55%를 차지합니다. 그 다음은 횡단중 횡단보도외18%를 차지했습니다. 이는 초등학생의 횡단보도 없는 지역에서 도로를 건너는 행동을 뜻하는 것으로 보입니다.

즉 초등학생들에게 횡단보도로 건너는 것의 중요함과 횡단보도를 건너기 전 차량의 흐름을 확인하도록 교육하는 것이 매우 중요함을 알 수 있습니다.

횡단보도 내에서 발생한 교통사고 건수는 608건으로 전체의 약 55%를 차지합니다. 초등학생들이 횡단보로를 건너기 전 차량의 흐름을 꼭 확인하도록 교육이 필요합니다.

초등학교 위치 데이터 분석

위치 표시하기

우선 가장 기본이 되는 초등학교 위치 정보를 확인하고 위치정보를 지도에 표시해서 데이터가 정확하게 지도에 표시되는 지 확인하겠습니다.

초등학교의 수가 많기 때문에 서울특별시로 위치를 한정하고 데이터의 컬럼 정보를 확인해서 데이터의 구조를 이해합니다.

Index(['시도교육청', '교육지원청', '지역', '정보공시 학교코드', '학교명', '학교급코드', '설립구분', '학교특성',
       '분교여부', '설립유형', '주야구분', '개교기념일', '설립일', '법정동코드', '주소내역', '상세주소내역',
       '우편번호', '학교도로명 우편번호', '학교도로명 주소', '학교도로명 상세주소', '위도', '경도', '전화번호',
       '팩스번호', '홈페이지 주소', '남녀공학 구분', '폐교여부', '폐교일자', '휴교여부'],
      dtype='object')


초등학교의 위치를 표시하기 위해서 데이터의 column정보 중 학교명과 학교의 위치를 알려주는 위도, 경도정보를 이용할 수 있습니다. 필요한 데이터 column만 추출하여 아래와 같이 df_school dataframe을 생성했습니다.

df_school = df_school_raw[['학교명', '위도', '경도']]
df_school
학교명 위도 경도
0 서울교육대학교부설초등학교 37.490739 127.015424
1 서울대학교사범대학부설초등학교 37.577017 127.003091
2 서울개원초등학교 37.481618 127.058738
3 서울개일초등학교 37.486214 127.057742
4 서울개포초등학교 37.486805 127.069977
... ... ... ...
609 서울항동초등학교 37.476731 126.823929
610 서울해누리초등학교 37.498364 127.101956
611 서울양원숲초등학교 37.608890 127.105540
612 서울개현초등학교 37.481026 127.062043
613 서울강빛초등학교 37.574172 127.170940

614 rows × 3 columns


데이터 결측치 확인

데이터에 결측치가 있는 지 확인합니다.

df_school.isnull().sum()
학교명    0
위도     1
경도     1
dtype: int64


각 컬럼의 데이터 중 null인 정보의 갯수를 합한 결과가 1으로 나옵니다. 어떤 학교의 위치 정보가 없는 지 확인해봅니다.

df_school[df_school.isnull()['위도']]
학교명 위도 경도
226 서울흥일초등학교 NaN NaN


isnull()함수를 이용해서 위도 컬럼의 null boolean indexing 결과를 이용하여 서울흥일초등학교의 정보가 없음을 확인했습니다.

df_school = df_school.dropna(subset=['위도'])
df_school.isnull().sum()
학교명    0
위도     0
경도     0
dtype: int64


이 정보는 제거하여 사용하기로 합니다. 위도컬럼이 null인 열을 제거하기 위해서 dropna() 함수를 사용합니다. 이제 데이터가 없는 열이 제거되었습니다.

지도에 표시하기

초등학교의 위치를 지도에 표시하기 위해서 folium라이브러리를 사용합니다. 지도 객체를 생성하고 중심위치는 초등학교 데이터의 위도경도의 평균값을 사용합니다.

초등학교의 위치정보를 저장한 dataframe의 위치 정보를 Marker로 표시하고 각 Marker의 팝업 정보는 학교명이 출력되도록 합니다.

마커는 다시 folium 지도 객체에 추가하고 마지막으로 지도 객체를 출력합니다. 이제 초등학교 위치 정보를 확인하여 지도에 표시까지 완료 했습니다.

Make this Notebook Trusted to load map: File -> Trust Notebook


위험요소 지도에 표시하기

초등학교 교통사고가 많이 발생하는 횡단보도 중 신호등이 없는 횡단보도는 안전에 주의가 필요한 지역입니다. 초등학교가 표시된 지도에 신호등이 없는 횡단보도 정보를 표시합니다.

Make this Notebook Trusted to load map: File -> Trust Notebook


지도에 적색 원으로 표시된 영역이 생성되었습니다. 다른 지역과 달리 성동구에서는어린이 보호구역 내의 횡단보도의 위치와 다양한 세부 정보를 공공데이터로 제공합니다. 성동구의 정보 제공에 감사드립니다.

처음 녹색원으로 학교위치를 표시하고 적색원으로 신호등이 없는 횡단보도를 표시했습니다. 이 정보를 사용하면 학교 주변에 신호등이 없는 횡단보도의 위치를 찾을 수 있습니다.

성동구에서는 어린이 보호구역에 대한 다양한 정보를 제공하고 있습니다. 이런 정보가 더 많이 제공될수록 공공데이터 활용방법이 늘어나고 사회 문제를 해결할 수 있을 것이라고 생각합니다.

안전요소 지도에 표시하기

어린이 보호구역 내 설치된 CCTV는 운전자의 과속을 방지하는 안전요소로 생각됩니다. 어린이 보호구역 내 CCTV 설치 현황을 확인하기 위해서 서초구의 어린이 보호구역 내 CCTV 설치 현황 정보를 지도에 표시합니다.

Make this Notebook Trusted to load map: File -> Trust Notebook


지도에 파란색 원으로 표시된 영역이 추가되었습니다. 파란색 원은 어린이 보호구역 내에 위치한 안전 요소로 중 하나인 CCTV의 위치정보를 의미합니다.

어린이 보호구역내 CCTV 설치 여부 정보가 있는 구가 많지 않아 정보가 서초구만 우선 표시했습니다. 어린이 보호구역 내 안전정보와 위험정보가 하나의 데이터에 정리되면 효율적일 것 같습니다.

결론

초등학교 주변 위험요소인 신호등이 없는 횡단보도 정보가 일부 지역에서만 존재하여 서울시 전체에 대한 분석을 할 수 없어 아쉬웠습니다.

그리고 사고를 예방해주는 다양한 교통안전 시설물의 종류와 위치도 정보가 분산되어 찾기가 어려운 문제가 있어 아쉬웠습니다.

부족하지만 지도에 분석한 신호등이 없는 횡단보도를 이용해서 자녀의 등하교 길을 고민하거나 초등학교 주변에 필요한 안전 시설 설치를 분석하기 위해 이 정보가 잘 사용되면 좋겠습니다.

또한 안전요소로 간주될 수 있는 어린이 보호구역 내 CCTV역시 정보가 많지 않아 서초구에 대해서만 우선 표시 했습니다. 어린이 보호구역 내 안전정보와 위험정보가 하나의 데이터에 정리되면 효율적일 것 같습니다.

서울시에서는 다양한 어린이 교통안전시설을 설치하고 있습니다. 예를들어 스마트 횡단보도, LED바닥신호등, 횡단보도 조명등, CCTV등이 대표적입니다.

앞으로 다양한 교통안전 시설물이 초등학교 주변에 설치되고 학생들에서 학교 주변 위험 요소를 예방할 수 있는 교통 안전 교육이 진행되어 사고를 예방할 수 있으면 좋겠습니다.

References

  • https://www.beusable.net/blog/?p=2185
  • https://datarian.io/blog/how-to-define-problem-for-data-analysis-project