{territorial}: un paquete de R para trabajar con datos de comunas y regiones de Chile

Herramientas para facilitar el procesamiento de datos de comunas y regiones de Chile con R

27/6/2026

Chile limpieza de datos paquetes

territorial website

Este paquete busca facilitar tareas de limpieza que suelen ser necesarias al trabajar con datos de Chile a nivel comunal y regional, ofreciendo numerosas funciones para tareas como:

  • Revisar si los nombres de comunas y regiones vienen bien escritos (validar_comunas() y validar_regiones())
  • Limpiar automáticamente los nombres de las comunas con limpiar_comunas()
  • Agregar todos los datos territoriales (regiones y provincias con sus códigos únicos) a partir de las comunas (contextualizar())
  • Convertir nombres de comunas a códigos únicos comunales (as_codigo_comuna()) y viceversa (as_nombre_comuna())
  • Ordenar las regiones del país de norte a sur (ordenar_regiones())
  • Redactar los nombres de las regiones (redactar_region())
  • y más!

El objetivo de este paquete es poder ayudar a todas las personas que trabajan datos territoriales de Chile a simplificar sus procesos de trabajo de análisis de datos con R.

La razón de este paquete viene de mi propia experiencia trabajando con datos sociales: los datos territoriales vienen siempre con dudosa calidad en las variables que especifican las comunas: nombres mal escritos, en mayúsculas, sin eñes, etc.

Revisa la viñeta vignette("territorial") para una introducción al paquete!

Instalación

Por ahora puedes instalar la versión de desarrollo de este paquete desde GitHub:

# install.packages("pak")
pak::pak("bastianolea/territorial")

Usando {territorial}

Como su nombre lo dice, {territorial} entrega varias herramientas para trabajar con datos territoriales de Chile, principalmente sus regiones o comunas.

La premisa del paquete es que tenemos una tabla (territorial::territorios) que contiene los nombres oficiales y los códigos únicos territoriales de todas las regiones, provincias y comunas de Chile.

Si tienes datos comunales de Chile, puedes revisar la calidad de sus comunas con validar_comunas(), para detectar posibles problemas:

library(territorial)
library(territorial)

datos |> 
  validar_comunas(nombre_comuna) |> 
  invisible()
! mayúsculas: 2 casos de comunas escritas en mayúsculas

! mayúsculas: 2 casos de comunas escritas en minúsculas

! mayúsculas: 1 caso de comunas con preposiciones ('de', 'del') escritas en mayúsculas

ℹ resumen: 7 casos de comunas que no conciden con comunas correctamente escritas (ver `territorial::comunas()`)

También puedes limpiar automáticamente las comunas con limpiar_comunas(), y obtener una columna con las comunas correctas (que salen de la tabla territorial::territorios), obtenidas por medio de varias técnicas de limpieza de datos:

library(dplyr)

datos |> 
  mutate(nombre_corregido = limpiar_comunas(nombre_comuna))
ℹ Limpiando 8 nombres de comunas (8 son distintas)

── Paso 1: confirmar comunas correctas 

ℹ De las 8 comunas, 1 ya eran correctas: El Monte

── Paso 2: coincidencias por limpieza de texto 

ℹ A partir de la limpieza de texto, se limpiaron 7 de 8 comunas: Pirque, El Monte, Maipú, Santiago, Cerrillos, San José de Maipo y O'Higgins

── Paso 3: coincidencias aproximadas de texto 

ℹ Se limpiaron 1 de 1 comunas por medio de coincidencias aproximadas de texto: Providencia

── Conclusión de limpieza de comunas 

✔ De las 8 comunas, se limpiaron 8 en total (100%)

ℹ Mostrando proceso:

# A tibble: 8 × 5
  original          correctas limpieza          coincidencia resultado        
  <chr>             <chr>     <chr>             <chr>        <chr>            
1 PIRQUE            <NA>      Pirque            <NA>         Pirque           
2 El Monte          El Monte  El Monte          <NA>         El Monte         
3 Maipu             <NA>      Maipú             <NA>         Maipú            
4 santiago          <NA>      Santiago          <NA>         Santiago         
5 prohibidencia     <NA>      <NA>              Providencia  Providencia      
6 CERRILLOS         <NA>      Cerrillos         <NA>         Cerrillos        
7 San José De Maipo <NA>      San José de Maipo <NA>         San José de Maipo
8 OHiggins          <NA>      O'Higgins         <NA>         O'Higgins        

# A tibble: 8 × 2
  nombre_comuna     nombre_corregido 
  <chr>             <chr>            
1 PIRQUE            Pirque           
2 El Monte          El Monte         
3 Maipu             Maipú            
4 santiago          Santiago         
5 prohibidencia     Providencia      
6 CERRILLOS         Cerrillos        
7 San José De Maipo San José de Maipo
8 OHiggins          O'Higgins        

Si necesitamos agregar datos territoriales a una tabla de datos que solamente tiene las comunas o los códigos únicos territoriales de Chile (vignette(codigos_unicos_territoriales)), podemos usar contextualizar() para agregar rápidamente todas las columnas territoriales que falten.

datos <- tribble(
  ~nombre_comuna, ~poblacion,
  "Puente Alto",    1,
  "La Florida",     1,
  "La Granja",      1,
  "San Joaquín",    1)
datos |>
  contextualizar(nombre_comuna)
ℹ columnas agregadas: codigo_region, nombre_region, codigo_provincia, nombre_provincia y codigo_comuna

# A tibble: 4 × 7
  codigo_region nombre_region    codigo_provincia nombre_provincia codigo_comuna
          <dbl> <chr>                       <dbl> <chr>                    <dbl>
1            13 Metropolitana d…              132 Cordillera               13201
2            13 Metropolitana d…              131 Santiago                 13110
3            13 Metropolitana d…              131 Santiago                 13111
4            13 Metropolitana d…              131 Santiago                 13129
# ℹ 2 more variables: nombre_comuna <chr>, poblacion <dbl>

Así, un dataframe que solamente tiene nombres de comuna puede pasar a tener todas las demás variables que descrien territorialmente a esos datos.

Estas son algunas de las variables principales, pero existen muchas más que facilitan el trabajo con datos territoriales de Chile: revisa el índice de funciones!


Paquete desarrollado bajo el programa de Campeones de ROpenSci, con el apoyo de mi mentora Andrea Gómez Vargas

Fecha de publicación:
June 27, 2026
Extensión:
4 minute read, 846 words
Categorías:
Paquetes
Tags:
Chile limpieza de datos paquetes
Ver también:
Recodificando variables ordinales cuando vienen sucias y/o desde respuestas abiertas
`{rutera}`: un paquete de R para limpiar y procesar RUTs chilenos
Limpieza y validación de RUT en R