データ結合のためのCSVデータ読み込み | R, GIS

この記事では、シェープファイルに結合するCSVデータの読み込みについて説明します。

記事の概要です。
まず、読み込むCSVファイルをこちらからダウンロードします。

あとは、Rに標準で備わっているread.csvで、CSVファイルを読み込めば完了です。

read.csv("./data/kekkahyo1_ibaraki_2015-2045.csv")

プログラム全体を示します。

d <- read.csv("./data/kekkahyo1_ibaraki_2015-2045.csv")

## 最初の6行を確認
head(d)

## 各カラムの統計量を確認
summary(d)

この記事で使用したRのバージョンは R 3.6.1 です。

CSVデータとファイルのダウンロード

CSVデータに関しては、以下のページで説明しています。

https://note.com/misaki_blog/n/nf72d42ba839e

また、読み込むCSVファイル(kekkahyo1_ibaraki_2015-2045.csv)は前述のリンクからダウンロードしてください。

このデータは、国立社会保障・人口問題研究所の「日本の将来推計人口(平成30年推計)」から、茨城県の部分を切り取って作ったものです。

CSVデータの読み込み

Rに標準で備わっている関数read.csvを使ってCSVファイルを読み込みます。

d <- read.csv("./data/kekkahyo1_ibaraki_2015-2045.csv")

ファイルを読み込んだら、head関数で内容(最初の数行)確認をしましょう。

## 最初の6行を確認
head(d)
  コード 都道府県 市区町村 cy2015 cy2020 cy2025 cy2030 cy2035 cy2040 cy2045
1   8201   茨城県   水戸市    100  100.0   99.0   97.2   94.8   91.8   88.3
2   8202   茨城県   日立市    100   95.2   89.4   83.0   76.4   69.8   63.4
3   8203   茨城県   土浦市    100   97.4   94.1   90.3   86.1   81.7   77.2
4   8204   茨城県   古河市    100   97.7   94.6   90.9   86.8   82.4   77.8
5   8205   茨城県   石岡市    100   95.2   89.9   84.3   78.4   72.2   66.0
6   8207   茨城県   結城市    100   97.3   93.7   89.5   84.7   79.5   74.2

特に問題は無いようです。

さらに、summary関数で各カラムの統計量(平均値、最大値、最小値など)を確認します。

## 各カラムの統計量を確認
summary(d)
     コード       都道府県            市区町村      cy2015        cy2020      
 Min.   :8201   茨城県:44   かすみがうら市: 1   Min.   :100   Min.   : 89.20  
 1st Qu.:8215               つくばみらい市: 1   1st Qu.:100   1st Qu.: 93.50  
 Median :8226               つくば市      : 1   Median :100   Median : 95.55  
 Mean   :8276               ひたちなか市  : 1   Mean   :100   Mean   : 95.97  
 3rd Qu.:8304               阿見町        : 1   3rd Qu.:100   3rd Qu.: 97.85  
 Max.   :8564               稲敷市        : 1   Max.   :100   Max.   :104.30  
                            (Other)       :38                                 
     cy2025           cy2030           cy2035           cy2040      
 Min.   : 79.10   Min.   : 69.70   Min.   : 60.90   Min.   : 52.50  
 1st Qu.: 86.83   1st Qu.: 79.80   1st Qu.: 72.65   1st Qu.: 65.12  
 Median : 90.65   Median : 85.45   Median : 79.75   Median : 73.85  
 Mean   : 91.38   Mean   : 86.38   Mean   : 81.05   Mean   : 75.47  
 3rd Qu.: 94.85   3rd Qu.: 91.22   3rd Qu.: 87.20   3rd Qu.: 82.85  
 Max.   :107.00   Max.   :108.60   Max.   :109.00   Max.   :108.50  

     cy2045      
 Min.   : 44.20  
 1st Qu.: 57.67  
 Median : 68.05  
 Mean   : 69.86  
 3rd Qu.: 78.33  
 Max.   :107.60  

ここで大事なのは、「コード」のカラムと列名が”cy”で始まるカラム(将来推計人口)には、最小値(Min.)から最大値(Max.)までの統計量が表示されている点です。

これは「コード」のカラムと将来推計人口のカラムが、数値として読み込まれていることを意味しています。

つまり、QGISでCSVTファイル(各列のデータタイプ(型)が定義)を読み込んだような、追加の処理が不要ということです。

おわりに

お疲れさまでした。
追加処理が不要な分、QGISに比べ手間が省けましたね。
次回は、今回読み込んだCSVデータをシェープファイルに結合します。

この記事が気に入ったらサポートをしてみませんか?