Rで解析:国土数値情報のデータの読み込みに便利!!「kokudosuuchi」パッケージ


投稿日: Rの解析に役に立つ記事

国土数値情報のデータの読み込みやデータの列名、コードリストを簡単に変換できるパッケージの紹介です。大変便利です。

国土数値情報「鉄道時系列データ」のN05-20_GML.zipを読み込んだ例で紹介します。

国土数値情報「鉄道時系列データ」:https://nlftp.mlit.go.jp/ksj/gml/datalist/KsjTmplt-N05-v1_3.html

パッケージバージョンは1.0.0。実行コマンドはwindows 11のR version 4.1.2で確認しています。

パッケージのインストール

下記、コマンドを実行してください。

#パッケージのインストール
install.packages("kokudosuuchi")

実行コマンド

詳細はコメント、パッケージのヘルプを確認してください。

#パッケージの読み込み
library("kokudosuuchi")

#ダウンロードしたzipファイルを選択
library("tcltk")
TestData <- paste0(as.character(tkgetOpenFile(title = "zipファイルを選択",
                                              filetypes = '{"zipファイル" {".zip"}}',
                                              initialfile = c("*.zip"))))

#zipファイル内のshpファイルを読み込む:readKSJDataコマンド
#list形式で各shpファイルのデータが格納されます
GetKokudoData <- readKSJData(TestData)

#内容表示
GetKokudoData

#$`N05-20_RailroadSection2`
#Simple feature collection with 2594 features and 11 fields
#Geometry type: LINESTRING
#Dimension:     XY
#Bounding box:  xmin: 127.6523 ymin: 26.19315 xmax: 145.7539 ymax: 45.41634
#Geodetic CRS:  JGD2011
# A tibble: 2,594 x 12
#N05_001 N05_002 N05_003       N05_004 N05_005b N05_005e N05_006 N05_007 N05_008 N05_009
#<chr>   <chr>   <chr>         <chr>   <chr>    <chr>    <chr>   <chr>   <chr>   <chr>  
#1 2       函館線  北海道旅客鉄~ 1880    1950     1968     EB02_1~ NA      NA      NA     
#2 2       函館線  北海道旅客鉄~ 1880    1950     1968     EB02_1~ NA      NA      NA     
#3 2       函館線  北海道旅客鉄~ 1880    1969     9999     EB02_1~ NA      NA      NA     
#4 2       函館線  北海道旅客鉄~ 1880    1969     9999     EB02_1~ NA      NA      NA     
#5 2       江差線  北海道旅客鉄~ 1913    1950     2013     EB02_1~ NA      NA      NA     
#6 2       海峡線  北海道旅客鉄~ 1988    1988     9999     EB02_1~ NA      NA      NA     
#7 2       室蘭線  北海道旅客鉄~ 1892    1950     1967     EB02_1~ NA      NA      NA     
#8 2       室蘭線  北海道旅客鉄~ 1892    1997     9999     EB02_1~ NA      NA      NA     
#9 2       室蘭線  北海道旅客鉄~ 1892    1968     1996     EB02_1~ NA      NA      NA     
#10 2       室蘭線  北海道旅客鉄~ 1892    1950     1967     EB02_1~ NA      NA      NA     
# ... with 2,584 more rows, and 2 more variables: N05_010 <chr>,
#   geometry <LINESTRING [arc_degree]>
###以降データは省略###

#読み込んだファイルに列名付与やコードリストを変換:translateKSJDataコマンド
ChangeGetKokudoData <- translateKSJData(GetKokudoData)

#内容表示
ChangeGetKokudoData

#$`N05-20_RailroadSection2`
#Simple feature collection with 2594 features and 13 fields
#Geometry type: LINESTRING
#Dimension:     XY
#Bounding box:  xmin: 127.6523 ymin: 26.19315 xmax: 145.7539 ymax: 45.41634
#Geodetic CRS:  JGD2011
# A tibble: 2,594 x 14
#事業者種別             事業者種別_code 路線名 運営会社    供用開始年 `設置期間(設置開~
# <chr>                  <chr>           <chr>  <chr>       <chr>      <chr>             
#1 JR在来線(旧国鉄含む) 2               函館線 北海道旅客~ 1880       1950              
#2 JR在来線(旧国鉄含む) 2               函館線 北海道旅客~ 1880       1950              
#3 JR在来線(旧国鉄含む) 2               函館線 北海道旅客~ 1880       1969              
#4 JR在来線(旧国鉄含む) 2               函館線 北海道旅客~ 1880       1969              
#5 JR在来線(旧国鉄含む) 2               江差線 北海道旅客~ 1913       1950              
#6 JR在来線(旧国鉄含む) 2               海峡線 北海道旅客~ 1988       1988              
#7 JR在来線(旧国鉄含む) 2               室蘭線 北海道旅客~ 1892       1950              
#8 JR在来線(旧国鉄含む) 2               室蘭線 北海道旅客~ 1892       1997              
#9 JR在来線(旧国鉄含む) 2               室蘭線 北海道旅客~ 1892       1968              
#10 JR在来線(旧国鉄含む) 2               室蘭線 北海道旅客~ 1892       1950              
# ... with 2,584 more rows, and 8 more variables: 設置期間(設置終了) <chr>,
#   関係ID <chr>, 変遷ID <chr>, 変遷ID_code <chr>, 変遷備考 <chr>, 備考 <chr>,
#   関係備考 <chr>, geometry <LINESTRING [arc_degree]>
###以降データは省略###

「tmmap」パッケージのプロット例

「translateKSJData」コマンドで処理した「ChangeGetKokudoData」でプロットしています。

#プロット
tmap_mode("plot")
tm_shape(ChangeGetKokudoData$`N05-20_RailroadSection2`) +
  tm_lines(col = "事業者種別", lwd = 2, legend.show = TRUE,
           legend.col.show = TRUE)

・出力例

参考記事


少しでも、あなたの解析が楽になりますように!!

スポンサードリンク

スポンサードリンク