How to filter data using shortcut names
Source:vignettes/articles/filter_data_shortcuts.Rmd
filter_data_shortcuts.RmdInstead of using numeric codes, it is possible to use certain
shortcut names when the filter argument is passed. However,
for a better performance is recommended to use numeric codes. The
available shortcuts for variables are shown below.
| Shortcut | Variable ID | Comment |
|---|---|---|
| nac | 349 | National |
| ccaa | 70 | Autonomous Communities |
| prov | 115 | Provinces |
| mun | 19 | Municipalities |
| island | 20 | Islands |
| isla | 20 | Islands |
| group | 762 | CPI groups |
| grupo | 762 | CPI groups |
| subgroup | 763 | CPI subgroups |
| subgrupo | 763 | CPI subgroups |
| class | 764 | CPI class |
| clase | 764 | CPI class |
| subclass | 765 | CPI subclass |
| subclase | 765 | CPI subclass |
| heading | 270 | CPI headings |
| rubrica | 270 | CPI headings |
| specialgroup | 269 | CPI special groups |
| grupoespecial | 269 | CPI special groups |
| datatype | 3 | Type of data |
| tipodato | 3 | Type of data |
| sex | 18 | Sex |
| sexo | 18 | Sex |
| age1 | 355 | Simple age |
| edad1 | 355 | Simple age |
| aget | 356 | Age totals |
| edadt | 356 | Age totals |
| ageg | 360 | Age groups |
| edadg | 360 | Age groups |
| ages | 357 | Age semi-intervals |
| edads | 357 | Age semi-intervals |
| age | 355, 356, 357, 360 | Age wrapper |
| edad | 355, 356, 357, 360 | Age wrapper |
| generation | 612 | Generation/ages |
| generacion | 612 | Generation/ages |
| nationality | 141 | Nationality |
| nacionalidad | 141 | Nationality |
| birthcountry | 431, 432 | Country of birth |
| paisnacimiento | 431, 432 | Country of birth |
| birthplace | 97 | Place of birth |
| lugarnacimiento | 97 | Place of birth |
| effectscorr | 544 | Correction of effects |
| efectoscorr | 544 | Correction of effects |
| values | - | Values wrapper |
Filtering data from tables
To use a filter with shortcuts it is necessary to pass the argument
filter using a shortcut as variable and a name as
value.
Example one
We are going to filter the table Índices nacionales: general y de grupos ECOICOP (Id 50902):
library(ineapir)
# Filter using shortcuts (CPI)
filter <- list(tipodato = "variación anual" , # variable id = 3
grupo = "índice general" # variable id = 762
)
# Request data using the filter
ipc <- get_data_table(idTable = 50902, filter = filter, unnest = TRUE,
tip = "A", nlast = 5, validate = FALSE)
ipc[,c("Nombre", "T3_Periodo", "Anyo", "Valor")]
#> Nombre T3_Periodo Anyo Valor
#> 1 Total Nacional. Índice general. Variación anual. M08 2025 2.7
#> 1.1 Total Nacional. Índice general. Variación anual. M07 2025 2.7
#> 1.2 Total Nacional. Índice general. Variación anual. M06 2025 2.3
#> 1.3 Total Nacional. Índice general. Variación anual. M05 2025 2.0
#> 1.4 Total Nacional. Índice general. Variación anual. M04 2025 2.2Besides, we can also use the values wrapper.
# Filter with the values wrapper
filter <- list(values = c("variación anual" , "índice general"))
# Request data using the filter
ipc <- get_data_table(idTable = 50902, filter = filter, unnest = TRUE,
tip = "A", nlast = 5, validate = FALSE)
ipc[,c("Nombre", "T3_Periodo", "Anyo", "Valor")]
#> Nombre T3_Periodo Anyo Valor
#> 1 Total Nacional. Índice general. Variación anual. M08 2025 2.7
#> 1.1 Total Nacional. Índice general. Variación anual. M07 2025 2.7
#> 1.2 Total Nacional. Índice general. Variación anual. M06 2025 2.3
#> 1.3 Total Nacional. Índice general. Variación anual. M05 2025 2.0
#> 1.4 Total Nacional. Índice general. Variación anual. M04 2025 2.2If we add a minus sign to a value, the value will be excluded from the filter.
# Filter with the values wrapper
filter <- list(values = c("variación anual" , "-índice general"))
# Request data using the filter
ipc <- get_data_table(idTable = 50902, filter = filter, unnest = TRUE,
tip = "A", nlast = 2, validate = FALSE)
ipc[,c("Nombre", "T3_Periodo", "Anyo", "Valor")]
#> Nombre
#> 1 Total Nacional. Alimentos y bebidas no alcohólicas. Variación anual.
#> 1.1 Total Nacional. Alimentos y bebidas no alcohólicas. Variación anual.
#> 2 Total Nacional. Bebidas alcohólicas y tabaco. Variación anual.
#> 2.1 Total Nacional. Bebidas alcohólicas y tabaco. Variación anual.
#> 3 Total Nacional. Vestido y calzado. Variación anual.
#> 3.1 Total Nacional. Vestido y calzado. Variación anual.
#> 4 Total Nacional. Vivienda, agua, electricidad, gas y otros combustibles. Variación anual.
#> 4.1 Total Nacional. Vivienda, agua, electricidad, gas y otros combustibles. Variación anual.
#> 5 Total Nacional. Muebles, artículos del hogar y artículos para el mantenimiento corriente del hogar. Variación anual.
#> 5.1 Total Nacional. Muebles, artículos del hogar y artículos para el mantenimiento corriente del hogar. Variación anual.
#> 6 Total Nacional. Sanidad. Variación anual.
#> 6.1 Total Nacional. Sanidad. Variación anual.
#> 7 Total Nacional. Transporte. Variación anual.
#> 7.1 Total Nacional. Transporte. Variación anual.
#> 8 Total Nacional. Comunicaciones. Variación anual.
#> 8.1 Total Nacional. Comunicaciones. Variación anual.
#> 9 Total Nacional. Ocio y cultura. Variación anual.
#> 9.1 Total Nacional. Ocio y cultura. Variación anual.
#> 10 Total Nacional. Enseñanza. Variación anual.
#> 10.1 Total Nacional. Enseñanza. Variación anual.
#> 11 Total Nacional. Restaurantes y hoteles. Variación anual.
#> 11.1 Total Nacional. Restaurantes y hoteles. Variación anual.
#> 12 Total Nacional. Otros bienes y servicios. Variación anual.
#> 12.1 Total Nacional. Otros bienes y servicios. Variación anual.
#> T3_Periodo Anyo Valor
#> 1 M08 2025 2.3
#> 1.1 M07 2025 2.7
#> 2 M08 2025 4.2
#> 2.1 M07 2025 4.1
#> 3 M08 2025 0.7
#> 3.1 M07 2025 0.8
#> 4 M08 2025 6.0
#> 4.1 M07 2025 6.7
#> 5 M08 2025 0.8
#> 5.1 M07 2025 0.9
#> 6 M08 2025 2.0
#> 6.1 M07 2025 2.0
#> 7 M08 2025 1.2
#> 7.1 M07 2025 0.2
#> 8 M08 2025 0.8
#> 8.1 M07 2025 0.6
#> 9 M08 2025 0.7
#> 9.1 M07 2025 0.6
#> 10 M08 2025 2.6
#> 10.1 M07 2025 2.5
#> 11 M08 2025 4.3
#> 11.1 M07 2025 4.2
#> 12 M08 2025 3.4
#> 12.1 M07 2025 3.4Example two
We are going to filter the table PIB pm Oferta (Indices de volumen encadenado) (Id 30679):
# Filter with the values wrapper (GDP)
filter <- list(values = c("producto interior", "datos ajustados", "variación anual"))
# Request data using the filter and shortcut = TRUE
pib <- get_data_table(idTable = 30679, filter = filter, unnest = TRUE,
tip = "A", nlast = 5, validate = FALSE)
head(pib[,c("Nombre", "T3_Periodo", "Anyo", "Valor")])
#> Nombre
#> 1 Total Nacional. Datos ajustados de estacionalidad y calendario. Producto interior bruto a precios de mercado. Variación anual. Índices de volumen encadenados.
#> T3_Periodo Anyo Valor
#> 1 T2 2024 2.8873Example three
We are going to filter the table Población residente por fecha, sexo y edad (desde 1971) (Id 56934)
# Filter with the values wrapper (population)
filter <- list(values = c("todas las edades", "total"))
# Request data using the filter
pob <- get_data_table(idTable = 56934, filter = filter, unnest = TRUE,
tip = "A", nlast = 5, validate = FALSE)
pob[,c("Nombre", "T3_Periodo", "Anyo", "Valor")]
#> Nombre
#> 1 Total Nacional. Todas las edades. Total. Población. Número.
#> 1.1 Total Nacional. Todas las edades. Total. Población. Número.
#> 1.2 Total Nacional. Todas las edades. Total. Población. Número.
#> 1.3 Total Nacional. Todas las edades. Total. Población. Número.
#> 1.4 Total Nacional. Todas las edades. Total. Población. Número.
#> T3_Periodo Anyo Valor
#> 1 1 de enero de 2024 48619695
#> 1.1 1 de octubre de 2023 48486865
#> 1.2 1 de julio de 2023 48320520
#> 1.3 1 de abril de 2023 48205962
#> 1.4 1 de enero de 2023 48085361Filtering data from series
It is necessary to pass the argument filter of the
get_data_series_filter() function. We use a shortcut as
variable and a name as value.
Example one
# Filter with the values wrapper (CPI)
filter <- list(values = c("variación anual" , "índice general", "total nacional"))
# Request data using the filter
ipc <- get_data_series_filter(operation = "IPC", filter = filter,
periodicity = 1, unnest = TRUE, tip = "A",
validate = FALSE)
ipc[,c("Nombre", "T3_Periodo", "Anyo", "Valor")]
#> Nombre
#> 1 Total Nacional. Índice general. Variación anual.
#> 2 Total Nacional. Índice general. Variación anual. Impuestos constantes.
#> T3_Periodo Anyo Valor
#> 1 ago. 2025 2.7
#> 2 ago. 2025 2.2Example two
# Filter with the values wrapper (GDP)
filter <- list(values = c("producto interior", "datos ajustados",
"volumen encadenado", "variación anual"))
# Request data using the filter
pib <- get_data_series_filter(operation = "CNTR2010", filter = filter,
periodicity = 3, unnest = TRUE, tip = "A",
validate = FALSE)
pib[,c("Nombre", "T3_Periodo", "Anyo", "Valor")]
#> Nombre
#> 1 Total Nacional. Datos ajustados de estacionalidad y calendario. Producto interior bruto a precios de mercado. Variación anual. Índices de volumen encadenados.
#> 2 Total Nacional. Base 2010. Datos ajustados de estacionalidad y calendario. Producto interior bruto a precios de mercado. Variación anual. Índices de volumen encadenados.
#> T3_Periodo Anyo Valor
#> 1 T2 2025 2.8004
#> 2 T2 2019 2.2513Example three
# Filter with the values wrapper combine with individual shortcuts (population)
filter <- list(values = c("todas las edades", "total nacional"), nacionalidad = "total",
sexo = "total", paisnacimiento = "total" )
# Request data using the filter
pob <- get_data_series_filter(operation = "ECP", filter = filter,
periodicity = 3, unnest = TRUE, tip = "A",
validate = FALSE)
pob[,c("Nombre", "T3_Periodo", "Anyo", "Valor")]
#> Nombre
#> 1 Total Nacional. Total. Todas las edades. Total. Total. Población. Número.
#> 2 Total Nacional. Total. Todas las edades. Total. Total. Población. Número.
#> T3_Periodo Anyo Valor
#> 1 T1 2024 48619695
#> 2 T1 2024 48619695