dev_si’s blog

政府や公財などから公開されている統計データでグラフ描画やデータ分析などして楽しむブログ

犯罪統計 略取誘拐・人身売買 殺人

 

 犯罪統計グラフ

略取誘拐・人身売買

認知件数 年次推移(2006~2016)

2008年を底に増加傾向。2010年が山となっているのは東日本大震災と何か関係があるのか。

f:id:dev_si:20190213153805p:plain

略取誘拐・人身売買 認知件数 年次推移(2006~2016)

殺人

認知件数 年次推移(2006~2016)

右肩下がり、そうか日本は平和になったなぁ

f:id:dev_si:20190213154005p:plain

殺人 認知件数 年次推移(2006~2016)
 検挙人数 年次推移(2006~2016)成人/少年の別

全体として件数は減っているのだけれど、少年の件数はどうかな?

f:id:dev_si:20190213154723p:plain

殺人 検挙人数 年次推移(2006-2016)
2016年 殺人の多かった都道府県 トップ11

当たり前だが人口の多いところが件数が多い。大阪府が東京都より多いのは、文化の違いかな。静岡がトップ10入りしているのに底力を感じる

No. 都道府県名 人数
1 大阪府 110
2 東京都 81
3 埼玉県 66
4 愛知県 60
5 神奈川県 57
6 福岡県 56
7 千葉県 50
8 兵庫県 43
9 静岡県 32
10 北海道 30
殺人の多い都道府県 年次推移(2006~2016)

こんな感じだけど、でもとどめをさすときに東京から大阪へ連れて行ってるのかもしれないし。

f:id:dev_si:20190213160034p:plain

殺人の多い都道府県 年次推移(2006~2016)

レシピ

基本情報

開発環境

jupyter.org

情報取得元

www.e-stat.go.jp

ソースコード

事前準備

ライブラリインポート

%matplotlib inline
import urllib
import urllib.request
import json
import numpy as np
import pandas as pd
import japandas as jpd
import seaborn as sns
import matplotlib
import matplotlib.font_manager as fm
import matplotlib.pyplot as plt
font = {'family':'IPAexGothic'}
matplotlib.rc('font', **font)
print('Complete.')

犯罪統計表取得

dlist = jpd.DataReader("00130001", 'estat', appid=appId)
df = jpd.DataReader('0003191360', 'estat', appid=appId)
df['重要犯罪・重要窃盗犯'].unique()

array(['重要犯罪', '重要犯罪_殺人', '重要犯罪_強盗', '重要犯罪_放火', '重要犯罪_強姦',
'重要犯罪_略取誘拐・人身売買', '重要犯罪_強制わいせつ', '重要窃盗犯', '重要窃盗犯_侵入盗',
'重要窃盗犯_侵入盗_住宅対象', '重要窃盗犯_侵入盗_その他', '重要窃盗犯_自動車盗', '重要窃盗犯_ひったくり',
'重要窃盗犯_すり'], dtype=object)

略取誘拐・人身売買 認知件数
df.loc[(df['重要犯罪・重要窃盗犯']=='重要犯罪_略取誘拐・人身売買') & (df['認知・検挙件数・検挙人員']=='認知件数')].plot()
殺人 認知件数
df.loc[(df['重要犯罪・重要窃盗犯']=='重要犯罪_殺人') & (df['認知・検挙件数・検挙人員']=='認知件数')].plot()
殺人 検挙人数 成人/少年別
df_murder = df.loc[(df['重要犯罪・重要窃盗犯']=='重要犯罪_殺人') & ((df['認知・検挙件数・検挙人員']=='検挙人員_うち成人') | (df['認知・検挙件数・検挙人員']=='検挙人員_うち少年'))]
sns.lineplot(x=df_murder.index, y="value",hue="認知・検挙件数・検挙人員",data=df_murder)
都道府県別 殺人
df.loc[(df['重要犯罪・重要窃盗犯']=='重要犯罪_殺人') & (df['認知・検挙件数・検挙人員']=='認知件数') & (df['管区警察局'] != '全国') & (df.index == '2016-01-01')].groupby(['管区警察局']).value.sum().sort_values(ascending=False)
都道府県別 殺人 推移
df_murder = df.loc[(df['重要犯罪・重要窃盗犯']=='重要犯罪_殺人') & ((df['管区警察局']=='北海道') | (df['管区警察局']=='千葉県') | (df['管区警察局']=='大阪府') | (df['管区警察局']=='東京都') | (df['管区警察局']=='埼玉県') | (df['管区警察局']=='愛知県') | (df['管区警察局']=='神奈川県') | (df['管区警察局']=='福岡県') | (df['管区警察局']=='兵庫県') | (df['管区警察局']=='静岡県') | (df['管区警察局']=='茨城県'))& (df['認知・検挙件数・検挙人員']=='認知件数')].sort_values(by='value', ascending=False)
df_murder.head()
sns.lineplot(x=df_murder.index, y="value",hue="管区警察局",data=df_murder)