今回は都道府県別の旅券統計のデータを分析してみます。
政府統計の総合窓口(www.e-stat.go.jp)からデータを取得します。
旅券統計 旅券統計(国内)一般旅券月別・都道府県別発行数 | 統計表・グラフ表示 | 政府統計の総合窓口 (e-stat.go.jp)
データをダウンロードして、下図のようなCSVファイルにしました。
11行目に変数名を加えたのと、年間合計の列とデータの入ってない列を削除しました。
このCSVファイルを今回は、tidyverseパッケージ(正確にはreadrパッケージ)のread_csv関数で読み込みます。
まず、library関数でtidyverseパッケージの読み込みです。
read_csv関数でデータを読み込みます。
11行目からデータが始まっているので、skip = 10としています。
NAのデータは***か-で表示されているので、na = c("***", "-")としています。
このCSVファイルはエンコードがUTF-8なので、locale = locale(encoding = "UTF-8")としています。でも、read_csv関数はデフォルトがUTF-8なので本当は必要ないようです。
str関数でデータがうまく読み込まれているかを見てみます。
47 x 98 となっています。47は47都道府県ということですね。98がデータの年月です。
d201712は2017年12月です。
つまりこのデータは横に長いデータ構造です。
これを縦に長いデータ構造、pref(都道府県)、year(年月), issue(発行数)という3列のデータ構造に変換します。
tidyrパッケージのgather関数です。
keyの列には横長データの列名が入ります。
valueの列には、-pref 以外のデータが入ります。
str関数で縦長になったか確認します。
4559 x 3 と縦長になりました。
prefとyearを文字列型からファクター型に変換しておきます。as.factor関数を使います。
ファクター型に変換できました。
今回は以上です。
続きは、