본문 바로가기
서비스 기획/☁️ 데이터 분석 공부

데이터 분석 - 대검찰청의 범죄자 전과 데이터 (2019)

by 림뽀 2022. 6. 13.
반응형

전체 161개 범죄 중 범죄자수 합계 Top-15 범죄 대상으로 데이터 분석

 

흥미로운 사실

- 전과 9범 이상이 생각보다 굉장히 많음

- 전과 9범 이상 범죄자가 초범보다 많은 범죄는 "근로기준법"과 "신용업무경매"

- 다만, 전과 9범 이상은 10범, 11범 등 다량의 범죄 이력이 있는 사람을 모두 합친 숫자라는 점을 고려해야 함

- 초범 비율이 가장 높은 범죄는 "성폭력", "전자금융거래법", "교통사고처리특례법"

- 해당 범죄는 재범률이 낮지만, 범죄를 저지를만해 보이지 않는 일반인 같은(?) 사람도 저지를 수 있는 범죄라고도 해석할 수 있음

 

원본 데이터

1. 각 범죄 분류 별 범죄자수 합계 (barplot)

합계 열 'total'을 추가한 후에 해당 열의 값으로 그래프 그림

 

2. 히트맵 (seaborn heatmap)

데이터를 범죄자 수가 아닌 각 범죄 별 발생 비율로 치환함

 

crime2=crime2.div(crime2[:].sum(axis = 1),axis = 0)

 

그 다음 seaborn의 heatmap에 데이터를 넣어서 그래프를 그려줌

 

ax = sns.heatmap(crime2,annot=True)
plt.show()

 

 

참고한 사이트

- 데이터 소스:

 

대검찰청_범죄자 전과_20171231

대검찰청에서 발간하는 범죄분석은 3종의 범죄통계원표를 기반으로 작성하는 자료이며 이 중 본 데이터는 범죄자의 전과유무에 따른 형법/특별법범 통계임. (단위: 명)

www.data.go.kr

- 판다스 한글 깨짐 문제: encoding='cp949' 추가함

 

[Pandas] csv 한글 깨짐 문제해결

공공데이터 같은 api를 통해 데이터를 가져온 후 csv 를 저장했을 때 한글이 깨지는 상황이 발생합니다. 이건 컴퓨터 환경에 따라 약간씩 달라질 수도 있어서 윈도우 기준으로 설명하겠습니다. 아

seong6496.tistory.com

- 각 행의 합계에 대한 비율로 숫자 바꾸기:

 

판다스 각각의 로우(row) 백분율 구하는 방법(The method Compute row percentages in pandas DataFrame)

판다스로 작업을 하다보면 각각의 데이터(행, row) 마다 백분율을 구하게 되는 경우가 있다. 이해를 돕기 위해 아래의 예시를 먼저 보자."서울시의 시군구와 연령별 인구 수" 에 대한 테이블이 있

velog.io

- 히트맵 그리기:

 

[Python] 히트맵 그리기 (Heatmap by python matplotlib, seaborn, pandas)

이번 포스팅에서는 X축과 Y축에 2개의 범주형 자료의 계급(class)별로 연속형 자료를 집계한 자료를 사용하여, 집계한 값에 비례하여 색깔을 다르게 해서 2차원으로 자료를 시각화하는 히트맵(Heatm

rfriend.tistory.com

 

반응형

댓글