사고다발지역을 분석하여 위치선정을 진행하였다. 데이터는 TASS 교통사고 정보 개방시스템 에서 가져왔다.
import pandas as pd
import folium
import re
df = pd.read_csv('../data/보행고령자 사고다발/보행고령자 사고다발지역.csv',)
df_1 = df[['시도시군구명','지점명','발생건수','사상자수','경도','위도']]
acc = []
for i in range(len(df_1)):
if '서울' in df_1.loc[i,'시도시군구명']:
acc.append(df_1.loc[i])
df_acc = pd.DataFrame(acc)
df_acc.columns = ['구','지점','발생건수','사상자수','경도','위도']
df_acc['구'] = df_acc['구'].str.replace('서울특별시 ','')
gu = []
for i in df_acc['구']:
tmp = re.sub(r'[0-9]+','',i)
gu.append(tmp)
df_acc['구'] = gu
df_acc['지점'] = df_acc['지점'].str.replace('서울특별시 ','')
df_acc.reset_index(inplace=True)
df_acc.drop('index',axis=1,inplace=True)
df_acc.to_csv('../data/보행고령자 사고다발/서울 고령자사고다발지역.csv')
k = df_acc.groupby('구')['발생건수'].sum()
k = pd.DataFrame(k)
k.sort_values('발생건수',inplace=True, ascending=False)
center = [37.541 , 126.986]
mapdata = folium.Map(location=center, zoom_start = 12)
for temp in df_acc.index:
folium.Circle(
[df_acc['위도'][temp], df_acc['경도'][temp]],
radius = int(df_acc.loc[temp, ['발생건수']].values[0] * 8), color='red', fill_color='red'
).add_to(mapdata)
mapdata
TASS 교통사고 정보 개방시스템(http://taas.koroad.or.kr/web/shp/adi/initOpenApi.do?menuId=WEB_KMP_TAI_TOS)