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

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

全国の主要都市の人口密度、昼夜人口比率、商品販売額、課税所得のデータの分析1 - CSVファイルをRに読み込む。

今回は東京23区や県庁所在市、政令都市、中核都市のデータを分析してみようと思います。政府統計の総合窓口(e-stat)からデータを取得します。

このように都市を選択します。

データは上の4つのデータをしてみました。人口密度、昼夜人口比率、商品販売額、課税対象所得です。

ダウンロードしたCSVファイルは上の図のような感じです。5行目に変数名を追加しました。

さっそくRで分析します。まずは、tidyverseパッケージの読み込みをします。

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

うまく読み込んだようです。

glimpse()関数で確認します。

大丈夫そうですね。NAがたくさんあるようです。NAを除いたらどうなるか、na.omit()関数で試してみます。

NAの無いデータフレームだと、220行 x 6列のデータフレームになりますね。

このデータフレームで分析することにしましょう。

分析用のデータフレームを作成します。

na.omit()関数でNAの行を除外して、一回目のmutate()関数の中でas.factor()関数を使い、yearをファクター型にしました。そして、separate()関数でcityを都道府県名と都市名に分割した列を作成し、二回目のmutate()関数の中でまたas.factor()関数を使いpref(都道府県名をファクター型にしました。

summary()関数で統計値をみてみます。

summary()関数を使う前に、select(where(is.factor) | where(is.numeric))を実行して、ファクター型の列と数値型の列だけにしています。

このデータフレームには、2015年度と2020年度のデータがありますね。都道府県でいうと、東京都の都市が一番多く、次は大阪府、愛知県、兵庫県と続いています。

数値データは、最大値の値がどれも極端に大きいことがわかります。

最後に変数の定義を確認しておきます。

# year: 調査年    
# city: 地域    
# mitsudo: #A01202_可住地面積1km2当たり人口密度【人】
# daynight: #A01302_昼夜間人口比率【%】    
# hanbai: #C04505_商業年間商品販売額(卸売業+小売業)(従業者1人当たり)【万円】    
# tax: #D02206_課税対象所得(納税義務者1人当たり)【千円】
# pref: 都道府県
# name: 都市名

今回は以上です。

次回は

www.crosshyou.info

です。

 

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

#
# tidyverseパッケージの読み込み
library(tidyverse)
#
# CSVファイルを読み込みます。
df_raw <- read_csv("city_20251004.csv",
                   skip = 4)
#
# glimpse()関数で確認
glimpse(df_raw)
#
# NAを除いた場合
na.omit(df_raw)
#
# 分析用のデータフレームを作成
df <- na.omit(df_raw) |> 
  mutate(year = as.factor(year)) |> 
  separate(city, 
           into = c("pref", "name"), 
           sep = " ", 
           remove = FALSE) |> 
  mutate(pref = as.factor(pref))
df
#
# summary()関数で統計値
df |> 
  select(where(is.factor) | where(is.numeric)) |> 
  summary()
#

(冒頭の画像は、Bing Image Creator で生成しました。プロンプトは Close up of sweet osmanthus flowers, landscape of great forest, under the blue sky, a few white clouds, photo です。)