1. 년도별 노인보호구역 갯수와 교통사고 내역을 분석
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib import font_manager, rc
import matplotlib
import platform
if platform.system() == 'Windows':
    matplotlib.rc('font', family='Malgun Gothic')
    #Malgun 
%matplotlib inline

sen_road = pd.read_csv('data/sen_road2.txt')
sen_acc = pd.read_csv('data/sen_acc.txt')

sen_road

sen_road.drop('Unnamed: 0',axis=1, inplace=True)
sen_acc.drop('Unnamed: 0',axis=1, inplace=True)

sen_road

sen_acc

all = sen_acc.merge(sen_road, left_on=['지정일'],right_on=['지정일'])

all

all.rename(columns={'합계_x':'교통사고합계'},inplace=True)
all.rename(columns={'합계_y':'지정합계'},inplace=True)


all

plt.rcParams['figure.figsize'] = (20,10)
fig, ax1 = plt.subplots()
plt.figure(figsize=(30,20))
ax1.plot(all['지정일'],all['교통사고합계'],color='red',label='교통사고 건수')
ax2 = ax1.twinx()
ax2.plot(all['지정일'], all['지정합계'], color='blue',label='노인보호구역 지정')
fig.suptitle('노인보호구역', fontsize=30)
ax1.set_xlabel('일자')
ax1.set_ylabel('교통사고합계')
ax1.set_ylabel('노인보호구역')
ax1.legend(fontsize=12)
ax2.legend(fontsize=15)
plt.show()

보호구역이 늘어나도 계속해서 교통사고 건수가 늘어나는 것을 볼 수 있다.

  1. 년도별 어린이보호구역 갯수와 교통사고 내역을 분석
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib import font_manager, rc
import matplotlib
import platform
if platform.system() == 'Windows':
    matplotlib.rc('font', family='Malgun Gothic')
    #Malgun 
%matplotlib inline

df1 = pd.read_csv('data2/서울시 어린이 교통사고 (2005~2009).csv')
df2 = pd.read_csv('data2/서울시 어린이 교통사고(2010~2014).csv')
df3 = pd.read_csv('data2/서울시 어린이 교통사고(2015~2019).csv')
df4 = pd.read_csv('data2/서울시 어린이 교통사고(2020).csv')

df1

df2

df3

df4

df1 = df1.T
df2 = df2.T
df3 = df3.T
df4 = df4.T

df1[0] = df1[0].str.replace(',','')
df1

df2.columns = [0]
df2

df3

df4

all = pd.concat([df1,df2,df3,df4],axis=0)

all

all.columns=['사고합계']

all['사고합계'] = all['사고합계'].astype(int)

# all.to_csv('data2/어린이 보호구역 사고(2005~2020).csv')

r = pd.read_csv('data2/년도별 어린이 보호구역 합계.csv', index_col=0)

r

r = r.T
r

r.drop('년도별', axis=1,inplace=True)
r

r.drop(['1995'], inplace=True)

r.drop(['1996','1997','1998','1999','2000','2001','2002','2003','2004'],inplace=True)

r.drop(['2021'],inplace=True)

r.index



plt.rcParams['figure.figsize'] = (20,10)
fig, ax1 = plt.subplots()
plt.figure(figsize=(30,20))
ax1.plot(all.index, all['사고합계'], color='red', label='어린이 교통사고 건수')
ax2 = ax1.twinx()
ax2.plot(r.index, r['총합계'], color='blue', label = '어린이보호구역 누적')
ax1.legend()
ax2.legend()

plt.show()

보호구역 갯수가 늘어날수록 교통사고가 줄어들고있다.

profile
smilegate megaport infra

0개의 댓글