rasyidstat / nusantr

R package contains things related to my beloved country, Indonesia :indonesia:

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

nusantr: Indonesia R package

We R Nusantara!

nusantr is an R package which contains:

  • Indonesia map in spatial data frame format (Indonesia map should be downloaded first on GADM)
  • Datasets related to Indonesia such as: Transjakarta data, KRL data, Indonesia name data, etc.
  • A simple function to convert NIK to location, gender and birthdate.

Installation

You need to use sf package to enable the class of sf data frame.

# install.packages("devtools")
install.packages("sf")
install.packages("tidyverse")
devtools::install_github("rasyidstat/nusantr")

Example

Indonesia Map

You can get Indonesia map by using id_map function that will return sf spatial data frame. It contains two parameters: region and level and currently only contains two regions: "indonesia" and "jakarta".

  • "indonesia" consists of two geographical levels such as "provinsi" and "kota".
  • "jakarta" consists of three geographical levels such as "kecamatan", "kelurahan" and "rw".

The data for Indonesia map will be dowloaded from GADM and the data for Jakarta map is get from from Jakarta Smart City.

library(sf)
library(nusantr)
# get jakarta map for 'kelurahan' level
jakarta_kelurahan <- id_map("jakarta", "kelurahan")
jakarta_kelurahan
#> Simple feature collection with 377 features and 8 fields
#> geometry type:  POLYGON
#> dimension:      XY
#> bbox:           xmin: 106.4 ymin: -6.373 xmax: 107 ymax: -5.184
#> epsg (SRID):    4326
#> proj4string:    +proj=longlat +datum=WGS84 +no_defs
#> # A tibble: 377 x 9
#>   provinsi_id provinsi kota_id kota  kecamatan_id kecamatan kelurahan_id
#>   <chr>       <chr>    <chr>   <chr> <chr>        <chr>     <chr>       
#> 1 31          DKI Jak… 3171    Jaka… 3171010      Jagakarsa 3171010001  
#> 2 31          DKI Jak… 3172    Jaka… 3172020      Ciracas   3172020001  
#> 3 31          DKI Jak… 3172    Jaka… 3172030      Cipayung  3172030001  
#> 4 31          DKI Jak… 3172    Jaka… 3172030      Cipayung  3172030003  
#> 5 31          DKI Jak… 3172    Jaka… 3172010      Pasar Re… 3172010001  
#> # … with 372 more rows, and 2 more variables: kelurahan <chr>,
#> #   geometry <POLYGON [°]>

Datasets

There are various datasets included on this package such as: Transjakarta data, KRL data, Indonesia name data, etc.

# transjakarta halte data
transjakarta
#> # A tibble: 1,555 x 6
#>   halte_id          halte_name  latitude longitude corridor_cnt schedule_id
#>   <chr>             <chr>          <dbl>     <dbl>        <int> <list>     
#> 1 idjkb_1-10 Sarin… Sarinah        -6.19      107.           10 <chr [10]> 
#> 2 idjkb_1-11 Bank … Bank Indon…    -6.18      107.            9 <chr [9]>  
#> 3 idjkb_1-12 Monas  Monumen Na…    -6.18      107.           16 <chr [16]> 
#> 4 idjkb_1-13 Harmo… Harmoni        -6.17      107.           18 <chr [18]> 
#> 5 idjkb_1-14 Sawah… Sawah Besar    -6.16      107.            5 <chr [5]>  
#> # … with 1,550 more rows

# transjakarta route data
transjakarta_route
#> Simple feature collection with 482 features and 11 fields
#> geometry type:  LINESTRING
#> dimension:      XY
#> bbox:           xmin: 106.6 ymin: -6.396 xmax: 107 ymax: -6.091
#> epsg (SRID):    4326
#> proj4string:    +proj=longlat +datum=WGS84 +no_defs
#> # A tibble: 482 x 12
#>   transport_id schedule_id corridor_id corridor_name corridor_color
#>   <chr>        <chr>       <chr>       <chr>         <chr>         
#> 1 idjkb_brt    idjkb_1     1           Blok M - Kota D02027        
#> 2 idjkb_brt    idjkb_1     1           Blok M - Kota D02027        
#> 3 idjkb_brt    idjkb_1     1           Blok M - Kota D02027        
#> 4 idjkb_brt    idjkb_1     1           Blok M - Kota D02027        
#> 5 idjkb_brt    idjkb_1     1           Blok M - Kota D02027        
#> # … with 477 more rows, and 7 more variables: route_id <chr>,
#> #   route_name <chr>, direction <int>, validity <chr>, is_main <lgl>,
#> #   is_main_reverse <lgl>, geometry <LINESTRING [°]>

NIK

You also can convert NIK (Nomor Induk Kependudukan) or KTP ID to location (city and province), gender and birthdate using nik_to_all, nik_to_gender, nik_to_bd, nik_to_city or nik_to_prov.

nik_to_all("3173060101000010")
#> $gender
#> [1] Laki-laki
#> Levels: Laki-laki Perempuan
#> 
#> $bd
#> [1] "2000-01-01"
#> 
#> $city
#> [1] "KOTA JAKARTA PUSAT"
#> 
#> $prov
#> [1] "DKI JAKARTA"

About

R package contains things related to my beloved country, Indonesia :indonesia:

License:Other


Languages

Language:R 100.0%