Rで何かをしたり、読書をするブログ

政府統計の総合窓口のデータや、OECDやUCIやのデータを使って、Rの練習をしています。ときどき、読書記録も載せています。

都道府県別の人口密度、総所得増加率、自殺者数のデータの分析1 - R にデータを読み込ませる。各変数の年度別平均値のグラフ。

(Bing Image Creator で生成: Close up of Daphne odora flowers, background is local area town, photo)

これからしばらくは、都道府県別の人口集中地区の人口密度、県民総所得対前年増加率(実質)、自殺者数のデータの分析をしようと思います。

データは、政府統計の総合窓口(e-stat)から取得します。

47都道府県を選択して、

3つのデータを選択しました。

ダウンロードした CSV ファイルはこんな感じです。

2行目に変数名を挿入しました。

year: 調査年

pref: 地域

mitsudo: 人口集中地区密度(人口集中地区面積1km2当り)【人】

growth: 県民総所得対前年増加率(実質)(平成17年基準)【%】

jisatsu: 自殺者数(人口10万人当たり)【人】

です。

このデータを R で分析します。

まず、tidyverse パッケージを読み込みます。

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

summary() 関数で各変数の統計値を確認します。

mitsudo, 人口密度は、最小が3179人、最大が12680人、平均は5447人です。

growth, 所得の前年増加率は、最小が-10.2%、最大が9.3% 平均が0.9214%です。

jisatsu, 自殺者数は最小が12人、最大が44.7人、平均が20.67人です。

mitsudo と growth は NA の観測があります。

mitsudo, growth, jisatsu の3つとも揃っている年度があるかどうかみてみましょう。

2005年度と2010年度は3つの変数が揃っています。

mitsudo の最新の年度を確認します。

mitsudo は2000年度から5年ごとにデータがあって、最新は2020年度でした。

growth の最新の年度も確認します。

growth は2002年度から2014年度まで毎年データがあります。

jisatsu も同じようにみてみます。

jisatsu は1975年度から2021年度までのデータが揃っています。

mitsudo の年別の平均値を計算して、グラフにしてみます。

mitsudo は年度でそれほど大きな違いはありませんね。2020年度が他の年度よりも少し低いです。

growth も同じように年別の平均値をグラフにします。

2008年度は大きく落ち込んでます。リーマンショックの影響でしょうかね。

jisatsu も年別の平均値のグラフを描いてみます。

いつごろかはわからないですが、自殺者が多かった時期が2つあります。

今回は以上です。

次回は

www.crosshyou.info

です。

 

今回のコードは以下になります。

#
# tidyverse パッケージを読み込む
library(tidyverse)
#
# CSV ファイルの読み込み
df_raw <- read_csv("mitsudo_growth_jisatsu.csv",
                   skip = 1)
#
# summary() 関数
summary(df_raw)
#
# mitsudo, growth, jisatsu の3つが揃っている年度は
df_raw |> 
  na.omit() |> 
  count(year)
#
# mitsudo の最新年度
df_raw |> 
  filter(!is.na(mitsudo)) |> 
  count(year)
#
# growth の最新年度
df_raw |> 
  filter(!is.na(growth)) |> 
  count(year)
#
# jisatsu の最新年度
df_raw |> 
  filter(!is.na(jisatsu)) |> 
  count(year)
#
df_raw |> 
  filter(!is.na(jisatsu)) |> 
  count(year) |> 
  tail()
#
# mitsudo の年別の平均値のグラフ
df_raw |> 
  filter(!is.na(mitsudo)) |> 
  group_by(year) |> 
  summarize(average_mitsudo = mean(mitsudo)) |> 
  ggplot(aes(x = year, y = average_mitsudo)) +
  geom_col()
#
# growth の年別の平均値のグラフ
df_raw |> 
  filter(!is.na(growth)) |> 
  group_by(year) |> 
  summarize(average_growth = mean(growth)) |> 
  ggplot(aes(x = year, y = average_growth)) +
  geom_col()
#
# jisatsu の年別の平均値のグラフ
df_raw |> 
  filter(!is.na(jisatsu)) |> 
  group_by(year) |> 
  summarize(average_jisatsu = mean(jisatsu)) |> 
  ggplot(aes(x = year, y = average_jisatsu)) +
  geom_col()
#