東大門区高齢者事故多発地分析


東大門区は高齢者の事故が最も多く、東大門区内に高齢者保護区を画定した.
  • に必要なパッケージ負荷
  • import pandas as pd
    import folium
  • インポートデータ
  • df_acc = pd.read_csv('../data/보행고령자 사고다발/서울 고령자사고다발지역.csv')
  • 東大門区のデータのみをインポートし、
  • を保存する.
    df_d = df_acc[df_acc['구']=='동대문구']
    
    df_d.to_csv('../data/보행고령자 사고다발/동대문구 사고다발지역.csv')
  • データ前処理
  • df_d.drop('Unnamed: 0',axis=1,inplace=True)
    
    df_d.sort_values('발생건수',inplace=True,ascending=False)
    df_d.reset_index(inplace=True)
    
    df_d.drop('index',axis=1,inplace=True)
  • 東大門区事故多発地地図に表示されている
  • center = [37.579 , 127.045]
    mapdata = folium.Map(location=center, zoom_start = 14)
    
    for temp in df_d.index:
        folium.Circle(
        [df_d['위도'][temp], df_d['경도'][temp]],
        radius = int(df_d.loc[temp, ['발생건수']].values[0] * 8), color='red', fill_color='red'
        
        ).add_to(mapdata)
    mapdata
    
    center = [37.579 , 127.045]
    mapdata = folium.Map(location=center, zoom_start = 15)
    
    for temp in df_d.index:
        folium.Circle(
        [df_d['위도'][temp], df_d['경도'][temp]],
        radius = 8, color='red', fill='crimson'
        
        ).add_to(mapdata)
    mapdata
  • 事故位置半径150 m内に4箇所以上ある箇所を候補地に追加し、4箇所を候補地
  • に選定する.
    all_a = pd.read_csv('../data/보행고령자 사고다발/동대문구 4개 비교.csv')
    all_a = all_a.set_index('구역')
  • 一区
  • center = [37.57841294, 127.0377316]
    mapdata = folium.Map(location=center, zoom_start = 16.3)
    
    
    folium.Circle(
    [37.57841294, 127.0377316],
    radius = 150,color='red', fill_color='red'
    
    ).add_to(mapdata)
    for temp in df_d.index:
        folium.Circle(
        [df_d['위도'][temp], df_d['경도'][temp]],
        radius = int(df_d.loc[temp, ['발생건수']].values[0] /2), color='red', fill_color='red'
        
        ).add_to(mapdata)
    mapdata
  • 二区
  • center = [37.57949654, 127.0416463]
    mapdata = folium.Map(location=center, zoom_start = 16.3)
    
    
    folium.Circle(
    [37.57949654, 127.0416463],
    radius = 150,color='red', fill_color='red'
    
    ).add_to(mapdata)
    for temp in df_d.index:
        folium.Circle(
        [df_d['위도'][temp], df_d['경도'][temp]],
        radius = int(df_d.loc[temp, ['발생건수']].values[0] /2), color='red', fill_color='red'
        
        ).add_to(mapdata)
    mapdata
  • 三区
  • center = [37.58089546, 127.0455197]
    mapdata = folium.Map(location=center, zoom_start = 16.3)
    
    
    folium.Circle(
    [37.58089546, 127.0455197],
    radius = 150,color='red', fill_color='red'
    
    ).add_to(mapdata)
    for temp in df_d.index:
        folium.Circle(
        [df_d['위도'][temp], df_d['경도'][temp]],
        radius = int(df_d.loc[temp, ['발생건수']].values[0] /2), color='red', fill_color='red'
        
        ).add_to(mapdata)
    mapdata
  • 四区
  • center = [37.58993298, 127.0553216]
    mapdata = folium.Map(location=center, zoom_start = 16.3)
    
    
    folium.Circle(
    [37.58993298, 127.0553216],
    radius = 150,color='red', fill_color='red'
    
    ).add_to(mapdata)
    for temp in df_d.index:
        folium.Circle(
        [df_d['위도'][temp], df_d['경도'][temp]],
        radius = int(df_d.loc[temp, ['발생건수']].values[0] /2), color='red', fill_color='red'
        
        ).add_to(mapdata)
    mapdata
  • 分析結果
    このうち2、3番はすでに選択されており、残りの2つの場所から選択されています.
    1番エリアは市場付近ですが、指定されておらず、4番エリアは道路のみで、周辺には福祉施設もありません.
    発生回数を見ると既に指定されている2 3以外は1番が4番エリアよりはるかに高いので1番エリアを選択しました.