
今回からしばらくは、全国の主要な市の刑法犯認知件数のデータを分析してみたいと思います。政府統計の総合窓口(e-stat)からデータをダウンロードします。

このように、東京の23区と県庁所在市、政令指定都市、中核市を選択します。109の区と市を23区を選択しました。

刑法犯認知件数の他は、総人口、人口密度、第1次産業、第2次産業、第3次産業の就業者比率を選んでみました。
ダウンロードしたCSVファイルは下のようになりました。

7行目に変数名を追加しています。これをRに読み込ませます。
はじめにtidyverseパッケージのをしておきます。

read_csv()関数でCSVファイルのデータを読み込みます。

glimpse()関数でデータの様子を確認しましょう。
文字化けせずに読み込めました。
全てのデータが揃っている年度があるか、na.omit()関数でチェックしてみます。

残念ながら、そのような行はありませんでした。
では、crimeのある年のデータはどのようなものか調べてみましょう。

う~ん、第1次産業などは、crimeとは調査年が被ってないのですね。
mitsudo:人口密度もデータが無い年がありますね。
とりあえず、crimeのある調査年はいつか、第1次産業などのある調査年はいつかを確認します。

1980年度から5年ごとの調査で、2005年度まであることがわかります。2005年度は109の自治体がすべてそろっています。
mitsudoのある調査年を調べてみます。

人口密度は1985年から5年ごとの調査ですね。1985年から2005年がcrimeと被っています。
第1次産業などはどうでしょうか?

第1次産業などは、2015年度と2020年度の2つの年だけですね。crimeの一番新しい調査年は、2005年度ですから、第1次産業などの一番近い調査年は2015年度と10年も開きがありますね。
これはもう、しかたがないので、2005年度のcrime, pop, mitsudoと2015年度のone, two, threeで分析することにしましょう。
方針としては、まず、crimeの経年変化を確認して、crimeとmitsudoの関係を見て、最後に2005年度のcrime, pop, mitsudoデータと2015年度のone, two, threeを合わせてクロスセクションで分析することにします。
ここで、各変数が何を意味しているか確認しておきます。
year: 調査年
code: 都市コード
city: 都市名
pop: 総人口【人】
mitsudo: 可住地面積1平方km当たりの人口密度【人】
one: 第1次産業就業者比率【%】
two: 第2次産業就業者比率【%】
three: 第3次産業就業者比率【%】
crime: 人口千人当たりの刑法犯認知件数【件】
今回は以上です。
次回は
です。
今回のコードは以下になります。
#
# tidyverse パッケージの読み込み
library(tidyverse)
#
# CSVファイルの読み込み
df_raw <- read_csv("keiho_ninchi.csv",
skip = 6)
#
# データの様子の確認
glimpse(df_raw)
#
# NAの無い行はあるか?
na.omit(df_raw)
#
# crimeのあるデータは?
df_raw |>
filter(!is.na(crime)) |>
summary()
#
# crimeのある調査年
df_raw |>
filter(!is.na(crime)) |>
count(year)
#
# mitsudoのある調査年
df_raw |>
filter(!is.na(mitsudo)) |>
count(year)
#
# oneのある調査年
df_raw |>
filter(!is.na(one)) |>
count(year)
#
(冒頭の画像は、Bing Image Creator で生成しました。プロンプトは Landscape of natural Mimosa tree yellow flowers, blue sky, Photo です。)