The goal of openlpgc is to provide an R interface for extracting data from Las Palmas de Gran Canaria City Council open data site. This package uses the CKAN API and is powered by the ckanr package.
This package is fully inspirated by the
opendataes package.
You can install the latest released version of openlpgc from Github
with:
# install.packages("remotes")
remotes::install_github("openlpgc")openlpgc has three main functions:
lpgc_categories: Search for available datasets for each categorylpgc_search: Search datasets by keywordlpgc_load: Load the dataset (specified by its id)
Let’s show two examples in order to illustrate what it’s been stated above.
Let’s search all datasets that are related to environment (“medio
ambiente”, in Spanish). We are supposed to use the lpgc_search
function for this:
library(openlpgc)
lpgc_search("medio ambiente")
#> # A tibble: 4 x 6
#> author maintainer id name notes created
#> <chr> <chr> <chr> <chr> <chr> <date>
#> 1 Ayuntamien… Unidad Técni… 05a6f959… huertos-ur… La red de hue… 2014-09-24
#> 2 Sociedad d… <NA> 7b750e55… playas Descripción d… 2016-02-26
#> 3 Ayuntamien… Unidad Técni… a0a2c658… prestamo-b… "El sistema d… 2014-09-18
#> 4 <NA> <NA> 704bc902… localizaci… Localización … 2018-01-11Once we have the result, we just need to select the ID we want to load
and pass it into lpgc_load:
our_id <- lpgc_search("medio ambiente")$id[[1]]
lpgc_load(id = our_id)
#> $metadata
#> # A tibble: 1 x 6
#> author maintainer id name notes created
#> <chr> <chr> <chr> <chr> <chr> <date>
#> 1 Ayuntamient… Unidad Técnic… 05a6f959-… huert… La red de huert… 2014-09-24
#>
#> $data
#> # A tibble: 9 x 11
#> HUERTO Latitud Longitud `DIMENSION TOTA… `Nº PARCELAS` `DIMENSION PARC…
#> <chr> <dbl> <dbl> <int> <int> <int>
#> 1 El La… 28.1 -15.4 5220 58 28
#> 2 Siete… 28.1 -15.4 6788 31 21
#> 3 El Po… 28.1 -15.4 1249 18 21
#> 4 La Ma… 28.1 -15.5 3728 35 27
#> 5 Pino … 28.1 -15.4 536 12 25
#> 6 Lucha… 28.1 -15.4 721 16 23
#> 7 El Pa… 28.1 -15.4 2000 40 25
#> 8 Jinám… 28.0 -15.4 2256 46 30
#> 9 El Am… 28.1 -15.4 1874 41 3
#> # … with 5 more variables: `OCUP. COLEC` <int>, `OCUP. PART` <int>, `Nº
#> # HORTELANOS` <int>, `Nº PARCELAS LIBRES` <int>, IMAGEN <chr>lpgc_load always returns a list with two slots: the first one
contains metadata tibble with information extracted from the site and
the second slot is filled with the data, if it was possible to read
them.
lpgc_show_categories displays a character vector with all the current
available categories. Once you find the category you want to explore,
lpgc_categories() shows the datasets related to it. A simple example
to better illustrate it:
lpgc_show_categories
#> [1] "ciencia-tecnologia" "comercio"
#> [3] "cultura-ocio" "demografia"
#> [5] "deporte" "economia"
#> [7] "educacion" "empleo"
#> [9] "energia" "hacienda"
#> [11] "industria" "legislacion-justicia"
#> [13] "medio-ambiente" "medio-rural-pesca"
#> [15] "salud" "sector-publico"
#> [17] "seguridad" "sociedad-bienestar"
#> [19] "transporte" "turismo"
#> [21] "urbanismo-infraestructuras" "vivienda"
lpgc_categories("educacion")
#> # A tibble: 12 x 6
#> author maintainer id name notes created
#> <chr> <chr> <chr> <chr> <chr> <date>
#> 1 Ayuntamien… Sección de … c5888937-… escuela-mu… Escuela Muni… 2014-08-05
#> 2 <NA> <NA> a0aca961-… escuelas-m… Número de us… 2018-01-12
#> 3 Ayuntamien… Sección de … 48270b9f-… escuelas-m… Número de us… 2014-08-05
#> 4 <NA> <NA> 354f9cab-… talleres-e… Talleres dir… 2018-01-10
#> 5 <NA> <NA> 7d97a59b-… talleres-e… Talleres dir… 2018-01-10
#> 6 <NA> <NA> 975cf9b2-… servicio-a… Servicio dir… 2018-01-10
#> 7 <NA> <NA> 568c0ddc-… servicio-a… Servicio dir… 2018-01-10
#> 8 <NA> <NA> 8424463a-… actividade… Actividades … 2018-01-09
#> 9 <NA> <NA> 147f6a19-… talleres-a… Talleres del… 2018-01-09
#> 10 <NA> <NA> e21904d3-… actividade… Actividades … 2018-01-08
#> 11 <NA> <NA> 1bf264fb-… talleres-a… Talleres de … 2018-01-08
#> 12 Ayuntamien… Sección de … 83a3320c-… centros-es… Nivel, nombr… 2014-08-05Then we can pass an ID into lpgc_load as explained before