This is an R Markdown Notebook. When you execute code within the notebook, the results appear beneath the code.
Try executing this chunk by clicking the Run button within the chunk or by placing your cursor inside it and pressing Cmd+Shift+Enter.
R es un lenguaje de programación y un entorno de software libre utilizado principalmente para análisis estadístico y gráficos. Nació como una implementación del lenguaje S, desarrollado en los laboratorios Bell. A lo largo del tiempo, R ha evolucionado para convertirse en una herramienta indispensable para la ciencia de datos, la bioinformática, la investigación académica y más.
RStudio es un entorno de desarrollo integrado (IDE) para R. Proporciona una consola, un editor de scripts que soporta la ejecución directa de código, así como herramientas para la visualización de datos y la gestión del espacio de trabajo. RStudio ha facilitado el uso de R al ofrecer una interfaz más amigable y herramientas útiles para el análisis.
En la
consola se ejecuta el código R en tiempo real. Los
usuarios pueden ingresar comandos directamente y ver los resultados al
instante.
Editor de scripts: El editor de código permite escribir y editar scripts en R. Resalta la sintaxis del código. Proporciona sugerencias de código y autocompletado. Tiene botones para ejecutar líneas o bloques de código específicos. Es justo donde estoy escribiendo este script.
Environment: El Entorno o Environment muestra los objetos (vectores, matrices, data frames, etc.) que están en el entorno global. Ofrece la opción de importar conjuntos de datos. El “entorno global” se refiere al espacio de trabajo de nivel superior donde las variables, funciones y otros objetos que creas se almacenan de manera predeterminada durante una sesión interactiva. Es el lugar donde se guardan y se pueden acceder a las variables que defines y a los datos que cargas, a menos que se especifique o utilic un entorno diferente.
Historial: Muestra un registro de los comandos previamente ejecutados en la consola.
Archivos: Proporciona una vista del sistema de archivos, lo que permite navegar, abrir, y gestionar archivos y directorios.
Plots: Muestra gráficos generados por el código R. Permite navegar entre varios gráficos y exportarlos en diversos formatos.
Paquetes: Enumera todos los paquetes R instalados. Permite instalar, actualizar o cargar/descargar paquetes con facilidad.
Ayuda: Proporciona acceso a la documentación de funciones y paquetes de R. Permite buscar y consultar la documentación de funciones específicas.
Visor: Se utiliza para visualizar contenidos web, como mapas interactivos o documentos R Markdown renderizados.
En RStudio se pueden crear archivos o proyectos. La diferencia entre un archivo y un proyecto es importante y tiene que ver con la organización, gestión y reproducibilidad de tu trabajo.
-Un archivo en R suele tener una extensión .R o .Rmd (para R Markdown). Contiene código R, comentarios y, en el caso de R Markdown, también puede contener texto enriquecido, ecuaciones, etc. -Se utiliza para escribir, guardar y ejecutar código R.
-Un archivo es una entidad independiente. Puede moverse, compartirse o ejecutarse sin necesidad de otros archivos, a menos que explícitamente dependa de otros (por ejemplo, si carga datos de otro archivo).
Con RStudio se pueden crear diferentes tipos de archivos. Vamos a mencionar 3 que son muy comunes.
Archivos de código que contienen secuencias de comandos y funciones en R.
Documentos que integran código R con texto narrativo, permitiendo la creación de informes, presentaciones y otros documentos que pueden ser renderizados en diversos formatos como HTML, PDF y Word.Si bien los notebooks generalmente se visualizan mejor como documentos HTML, con R Markdown puedes fácilmente renderizar a múltiples formatos, incluidos PDF, Word o presentaciones. Flujo de Trabajo Lineal: En un documento R Markdown tradicional, normalmente trabaja en el código y el contenido, y luego renderiza todo el documento de una vez para ver los resultados. Esto es útil cuando ya tiene un análisis establecido que desea ejecutar de principio a fin. Se usan si se requiere generar informes que documenten el código.
Una variante de R Markdown donde puede ejecutar y ver resultados en línea. Permiten ejecutar bloques de código individualmente e inmediatamente ver los resultados debajo de ese bloque, similar a cómo funcionan los Jupyter Notebooks en Python. Es útil para un análisis exploratorio donde desea iterar rápidamente y ver los resultados al instante. Es decir que puede ver el código, los resultados y el texto en un formato casi final mientras trabaja, por lo que resulta útil para construir y refinar análisis y documentarlos simultáneamente ¡Esto es un notebook!
Ambas opciones, Notebook y R Markdown, tienen sus fortalezas y son adecuadas para diferentes escenarios. Si está en una fase exploratoria, iterativa y deseas ver resultados al instante, un notebook puede ser la mejor opción. Si está trabajando en un informe, artículo o análisis más estructurado y formal que requiere un flujo deAmbas opciones, Notebook y R Markdown, tienen sus fortalezas y son adecuadas para diferentes escenarios. Si está en una fase exploratoria, iterativa y desea ver resultados al instante, un notebook puede ser la mejor opción. Si está trabajando en un informe, artículo o análisis más estructurado y formal que requiere un flujo de trabajo más lineal y opcidcones de salida diversificadas, un documento R Markdown podría ser más adecuado. En cualquier caso, recuerde que puedes cambiar entre las experiencias de Notebook y Documento en RStudio con facilidad, por lo que no está estrictamente limitado a una elección u otra.
-Un proyecto en RStudio no es solo un archivo, sino un entorno de trabajo completo. Cuando crea un proyecto, RStudio genera un archivo con extensión .Rproj que guarda las configuraciones y el estado del proyecto.
-Los proyectos se utilizan para organizar conjuntos relacionados de archivos y datos. Facilitan la gestión de directorios de trabajo, rutas relativas y otras configuraciones específicas del proyecto.
-Entorno de trabajo: Cuando abre un proyecto, RStudio automáticamente configura el directorio de trabajo en la ubicación del proyecto. Esto es útil para garantizar que el código sea reproducible, ya que puede usar rutas relativas en lugar de rutas absolutas.
-Los proyectos de RStudio se integran bien con sistemas de control de versiones como Git, facilitando la gestión de versiones y colaboración.
-Al trabajar en un proyecto más grande, es posible que tengas múltiples scripts, conjuntos de datos y otros archivos relacionados. Los proyectos te ayudan a mantener todo organizado en un solo lugar.
-Un proyecto puede tener configuraciones específicas, como opciones de codificación, que no afectan a otros proyectos o scripts fuera del proyecto.
En resumen, mientras que un archivo en R es simplemente un documento que contiene código R, un proyecto en RStudio es un entorno de trabajo organizativo que facilita la gestión y reproducibilidad de trabajos más complejos y multifacéticos. Es especialmente útil cuando está trabajando en análisis más grandes o colaborativos.
EEn R, las funcionalidades se amplían mediante paquetes o librerías. Algunos paquetes actuales para el manejo de datos espaciales incluyen:
Históricamente se utilizaron paquetes como sp, raster y rgdal, pero gran parte de su funcionalidad ha sido reemplazada por sf y terra, que son los paquetes recomendados para proyectos nuevos.
Observará que cuando trabajamos en un notebook, el código que se
puede ejecutar se escribe así ** {r} código**. Puede
ejecutarlo haciendo click sobre el símbolo de play. - Si la versión de R
con la que trabaja es antigua, puede que se generen errores y requiera
descargar un paquete de herramientas para la versión de R con la que
trabajan. Puede descargar esta última versión en https://cran.rstudio.com/bin/windows/Rtools/.
# Ejecute este chunk una sola vez
pkgs <- c("sf", "terra", "dplyr", "ggplot2", "readr")
to_install <- setdiff(pkgs, rownames(installed.packages()))
if (length(to_install)) install.packages(to_install, dependencies = TRUE)
Ojo, solo puede ejecutar los códigos desde el editor de código de RStudio, no desde la visualización (renderización) en html.
¿A propósito, ya sabe cómo agregar una imagen a
su notebook?. ¿Ya identificó cómo agregar
color al texto que use para documentar su código?.
Ahora cargaremos las librerías. No es suficiente instalarlas, tenemos
que decir explícitamente que vamos a traerlas a nuestro código.
El paquete sf (simple features) ofrece una amplia variedad de funcionalidades para trabajar con datos espaciales tipo vector como representación de datos espaciales, leere y escribir en variedad de formatos (ej. shp, GeoJSON, KML, entre otros), integración con librerías como GDAL que permite gestionar datos geoespaciale; manipular geometrías para calcular área, longitudes, etc; realizar operaciones topológicas, manipulación de sistemas de coordenadas; integración con otros paquetes de R; realizar operaciones de geoprocesamiento como buffer, clip, entre otras; así como manipulación de atributos (agregar, eliminar, modificar.
Representación de Datos Espaciales:
library(sf)
Linking to GEOS 3.13.0, GDAL 3.8.5, PROJ 9.5.1; sf_use_s2() is TRUE
library(dplyr)
Attaching package: ‘dplyr’
The following objects are masked from ‘package:stats’:
filter, lag
The following objects are masked from ‘package:base’:
intersect, setdiff, setequal, union
Primero revise cuál es la ubicación de s directorio de trabajo actual usando getwd.
getwd()
[1] "/Users/macbook/Library/CloudStorage/OneDrive-UniversidadNacionaldeColombia/1_Periodos_Asignaturas/Cursos_2025_2/Geomatica_Basica_20252/Practical/Interpolacion/R_Introduction_20252"
En programación, a menudo se requiere almacenar información para
usarla más adelante. Aquí es donde entran las variables. Una variable
puede ser imaginada como una caja en la que se guarda alguna
información. Esta “caja” tiene un nombre, y siempre que quiera acceder a
la información, simplemente usa el nombre de la variable. En R, se usa
el símbolo <- para asignar un valor a una variable. Lo primero que
vamos a hacer es instalar las librerías o paquetes con los que podremos
realizar las operaciones y análisis.
La variable shp_ruta almacenará la ruta al archivo shp. Reemplace la
ruta de ejemplo por la ruta correspondiente en su propio computador,
donde haya guardado la carpeta del curso.
# Usa la ruta relativa al shapefile con los datos
shp_ruta <- "./datos/SHP_MGN2018_INTGRD_MPIO/MGN_ANM_MPIOS.shp"
vector_municipios <- st_read(shp_ruta)
Reading layer `MGN_ANM_MPIOS' from data source
`/Users/macbook/Library/CloudStorage/OneDrive-UniversidadNacionaldeColombia/1_Periodos_Asignaturas/Cursos_2025_2/Geomatica_Basica_20252/Practical/Interpolacion/R_Introduction_20252/datos/SHP_MGN2018_INTGRD_MPIO/MGN_ANM_MPIOS.shp'
using driver `ESRI Shapefile'
Simple feature collection with 1122 features and 90 fields
Geometry type: MULTIPOLYGON
Dimension: XY
Bounding box: xmin: -81.73562 ymin: -4.229406 xmax: -66.84722 ymax: 13.39473
Geodetic CRS: MAGNA-SIRGAS
Notará que en la medida en que se crean variables, estás empiezan a aparecer en el panel Global Environment.
La siguiente línea usa funcionalidades de la librería sf para leer el shapefile disponible en la ruta shp_ruta como un archivo espacial y lo almacena en la variable vector_municipios.
vector_municipios <- st_read(shp_ruta)
Reading layer `MGN_ANM_MPIOS' from data source
`/Users/macbook/Library/CloudStorage/OneDrive-UniversidadNacionaldeColombia/1_Periodos_Asignaturas/Cursos_2025_2/Geomatica_Basica_20252/Practical/Interpolacion/R_Introduction_20252/datos/SHP_MGN2018_INTGRD_MPIO/MGN_ANM_MPIOS.shp'
using driver `ESRI Shapefile'
Simple feature collection with 1122 features and 90 fields
Geometry type: MULTIPOLYGON
Dimension: XY
Bounding box: xmin: -81.73562 ymin: -4.229406 xmax: -66.84722 ymax: 13.39473
Geodetic CRS: MAGNA-SIRGAS
La línea siguiente simplemente imprime la información de la variable vector_municipios en la consola. Como es un objeto espacial mostrará un resumen de ese objeto, así como todos los atributos y registros. ¿Qué información puede identificar ?.
vector_municipios
Simple feature collection with 1122 features and 90 fields
Geometry type: MULTIPOLYGON
Dimension: XY
Bounding box: xmin: -81.73562 ymin: -4.229406 xmax: -66.84722 ymax: 13.39473
Geodetic CRS: MAGNA-SIRGAS
First 10 features:
DPTO_CCDGO MPIO_CCDGO MPIO_CNMBR MPIO_CDPMP VERSION AREA LATITUD LONGITUD STCTNENCUE STP3_1_SI
1 18 001 FLORENCIA 18001 2018 2547637532 1.749139 -75.55824 71877 32
2 18 029 ALBANIA 18029 2018 414122070 1.227865 -75.88233 2825 24
3 18 094 BELÉN DE LOS ANDAQUÍES 18094 2018 1191618572 1.500923 -75.87565 4243 54
4 18 247 EL DONCELLO 18247 2018 1106076151 1.791386 -75.19394 8809 0
5 18 256 EL PAUJÍL 18256 2018 1234734145 1.617746 -75.23404 5795 0
6 18 410 LA MONTAÑITA 18410 2018 1701061430 1.302860 -75.23573 5113 15
7 18 460 MILÁN 18460 2018 1220575999 1.146693 -75.38665 3462 363
8 18 479 MORELIA 18479 2018 462479591 1.382996 -75.67381 1907 0
9 18 610 SAN JOSÉ DEL FRAGUA 18610 2018 1304769006 1.304702 -76.11001 5756 83
10 18 860 VALPARAÍSO 18860 2018 1330210015 1.061292 -75.62705 3958 0
STP3_2_NO STP3A_RI STP3B_TCN STP4_1_SI STP4_2_NO STP9_1_USO STP9_2_USO STP9_3_USO STP9_4_USO STP9_2_1_M STP9_2_2_M
1 71845 32 0 0 71877 61176 2178 8436 87 39 1550
2 2801 24 0 0 2825 1826 49 948 2 3 34
3 4189 54 0 1 4242 3223 109 900 11 4 99
4 8809 0 0 0 8809 6598 357 1850 4 11 259
5 5795 0 0 0 5795 4891 204 695 5 4 161
6 5098 15 0 0 5113 4077 241 786 9 2 205
7 3099 363 0 0 3462 2594 118 745 5 1 104
8 1907 0 0 0 1907 1221 36 650 0 0 36
9 5673 83 0 27 5729 4493 302 955 6 1 273
10 3958 0 0 0 3958 2308 40 1602 8 0 29
STP9_2_3_M STP9_2_4_M STP9_2_9_M STP9_3_1_N STP9_3_2_N STP9_3_3_N STP9_3_4_N STP9_3_5_N STP9_3_6_N STP9_3_7_N
1 566 18 5 54 2591 1061 535 368 3172 233
2 12 0 0 3 21 32 728 53 92 5
3 6 0 0 8 88 6 2 61 626 8
4 87 0 0 21 334 124 807 89 361 42
5 38 1 0 5 239 104 4 70 211 16
6 32 2 0 3 103 123 17 84 362 30
7 12 1 0 0 75 41 39 24 514 8
8 0 0 0 1 27 16 442 31 114 8
9 28 0 0 4 242 82 0 101 307 55
10 11 0 0 4 35 42 441 56 982 19
STP9_3_8_N STP9_3_9_N STP9_3_10 STP9_3_99 STVIVIENDA STP14_1_TI STP14_2_TI STP14_3_TI STP14_4_TI STP14_5_TI STP14_6_TI
1 7 19 371 25 63354 47817 13764 1624 21 8 120
2 0 0 14 0 1875 1793 40 22 17 0 3
3 0 8 93 0 3332 3189 113 24 2 2 2
4 0 27 39 6 6955 6006 775 160 1 1 12
5 0 0 45 1 5095 4700 145 188 4 1 57
6 0 0 58 6 4318 3890 224 161 6 2 35
7 0 8 35 1 2712 2204 85 33 386 0 4
8 0 2 9 0 1257 1160 81 15 0 0 1
9 0 1 159 4 4795 4372 262 135 9 0 17
10 0 3 15 5 2348 2197 52 82 1 2 14
STP15_1_OC STP15_2_OC STP15_3_OC STP15_4_OC TSP16_HOG STP19_EC_1 STP19_ES_2 STP19_EE_1 STP19_EE_2 STP19_EE_3
1 49809 2681 2150 8714 51430 48638 1171 34851 10343 2169
2 1409 13 55 398 1559 1300 109 1184 106 1
3 2883 2 107 340 3161 2595 288 2118 366 17
4 5767 304 388 496 6129 5375 392 3548 962 793
5 4568 5 323 199 5848 4195 373 3330 770 84
6 3553 151 308 306 3748 2159 1394 1964 144 9
7 1985 4 399 324 2182 1152 833 1098 31 0
8 1013 0 70 174 1233 923 90 719 187 9
9 3444 1 875 475 3873 2794 650 2486 283 7
10 1813 3 199 333 1881 1697 116 1624 68 2
STP19_EE_4 STP19_EE_5 STP19_EE_6 STP19_EE_9 STP19_ACU1 STP19_ACU2 STP19_ALC1 STP19_ALC2 STP19_GAS1 STP19_GAS2
1 509 13 3 750 45179 4630 41138 8671 37028 12074
2 0 0 0 9 808 601 703 706 26 1371
3 2 1 0 91 2017 866 1806 1077 52 2796
4 1 1 1 69 4175 1592 4323 1444 57 5549
5 0 1 1 9 2505 2063 2359 2209 1463 3041
6 1 0 0 41 1441 2112 1329 2224 67 3454
7 1 0 1 21 359 1626 595 1390 20 1950
8 0 0 0 8 588 425 573 440 15 982
9 0 1 0 17 2576 868 2121 1323 1329 2078
10 0 0 0 3 775 1038 842 971 22 1772
STP19_GAS9 STP19_REC1 STP19_REC2 STP19_INT1 STP19_INT2 STP19_INT9 STP27_PERS STPERSON_L STPERSON_S STP32_1_SE
1 707 45491 4318 13362 35727 720 156789 4315 152474 77620
2 12 727 682 27 1370 12 4514 151 4363 2323
3 35 1905 978 73 2775 35 9075 346 8729 4551
4 161 4348 1419 211 5395 161 17775 203 17572 8790
5 64 2414 2154 125 4379 64 13014 192 12822 6601
6 32 1273 2280 64 3457 32 12128 604 11524 6437
7 15 661 1324 39 1931 15 7507 527 6980 3953
8 16 588 425 6 991 16 3350 0 3350 1709
9 37 2559 885 131 3276 37 11364 399 10965 5812
10 19 816 997 48 1739 26 6082 404 5678 3204
STP32_2_SE STP34_1_ED STP34_2_ED STP34_3_ED STP34_4_ED STP34_5_ED STP34_6_ED STP34_7_ED STP34_8_ED STP34_9_ED
1 79169 25503 30249 29951 23602 17235 14349 8969 4687 2244
2 2191 725 1016 717 568 536 445 253 162 92
3 4524 1592 2254 1388 1121 986 816 487 286 145
4 8985 3047 3811 2601 2302 2032 1792 1135 707 348
5 6413 2346 2882 2170 1587 1460 1188 703 430 248
6 5691 2229 3022 1836 1563 1441 1010 578 323 126
7 3554 1550 2018 1125 912 736 562 356 172 76
8 1641 562 678 570 428 431 304 212 114 51
9 5552 2129 2822 1757 1494 1267 933 542 275 145
10 2878 1013 1592 836 696 742 608 308 187 100
STP51_PRIM STP51_SECU STP51_SUPE STP51_POST STP51_13_E STP51_99_E Shape_Leng Shape_Area geometry
1 48848 59610 21898 4592 5892 3799 2.942508 0.20692777 MULTIPOLYGON (((-75.42074 2...
2 1940 1712 231 41 215 46 1.112829 0.03361758 MULTIPOLYGON (((-75.89506 1...
3 3541 3340 490 119 720 123 2.234657 0.09674460 MULTIPOLYGON (((-75.78705 1...
4 7571 6287 1029 228 1095 171 3.154370 0.08986744 MULTIPOLYGON (((-75.36167 2...
5 6072 4066 639 108 916 99 3.529316 0.10030928 MULTIPOLYGON (((-75.36638 2...
6 5932 3870 407 94 724 182 3.402939 0.13817351 MULTIPOLYGON (((-75.40346 1...
7 3344 2669 239 38 465 86 1.863197 0.09912782 MULTIPOLYGON (((-75.39362 1...
8 1433 1194 215 16 181 32 1.518688 0.03755356 MULTIPOLYGON (((-75.77185 1...
9 4952 4155 516 87 579 94 2.040837 0.10589313 MULTIPOLYGON (((-76.16722 1...
10 2601 2292 241 31 368 108 2.313848 0.10800551 MULTIPOLYGON (((-75.73128 1...
A veces solo requerimos ver los primeros registros para conocer la estructura general de la tabla de atributos. Podemos limitar el número de registros que se muestran al llamar la variable vector_municipios incluyendo una línea de texto en la que especificamos cuántos registros queremos que se presenten.
# Establecer el número máximo de filas a imprimir
options(sf_max_print = 5)
vector_municipios
Simple feature collection with 1122 features and 90 fields
Geometry type: MULTIPOLYGON
Dimension: XY
Bounding box: xmin: -81.73562 ymin: -4.229406 xmax: -66.84722 ymax: 13.39473
Geodetic CRS: MAGNA-SIRGAS
First 5 features:
DPTO_CCDGO MPIO_CCDGO MPIO_CNMBR MPIO_CDPMP VERSION AREA LATITUD LONGITUD STCTNENCUE STP3_1_SI
1 18 001 FLORENCIA 18001 2018 2547637532 1.749139 -75.55824 71877 32
2 18 029 ALBANIA 18029 2018 414122070 1.227865 -75.88233 2825 24
3 18 094 BELÉN DE LOS ANDAQUÍES 18094 2018 1191618572 1.500923 -75.87565 4243 54
4 18 247 EL DONCELLO 18247 2018 1106076151 1.791386 -75.19394 8809 0
5 18 256 EL PAUJÍL 18256 2018 1234734145 1.617746 -75.23404 5795 0
STP3_2_NO STP3A_RI STP3B_TCN STP4_1_SI STP4_2_NO STP9_1_USO STP9_2_USO STP9_3_USO STP9_4_USO STP9_2_1_M STP9_2_2_M
1 71845 32 0 0 71877 61176 2178 8436 87 39 1550
2 2801 24 0 0 2825 1826 49 948 2 3 34
3 4189 54 0 1 4242 3223 109 900 11 4 99
4 8809 0 0 0 8809 6598 357 1850 4 11 259
5 5795 0 0 0 5795 4891 204 695 5 4 161
STP9_2_3_M STP9_2_4_M STP9_2_9_M STP9_3_1_N STP9_3_2_N STP9_3_3_N STP9_3_4_N STP9_3_5_N STP9_3_6_N STP9_3_7_N
1 566 18 5 54 2591 1061 535 368 3172 233
2 12 0 0 3 21 32 728 53 92 5
3 6 0 0 8 88 6 2 61 626 8
4 87 0 0 21 334 124 807 89 361 42
5 38 1 0 5 239 104 4 70 211 16
STP9_3_8_N STP9_3_9_N STP9_3_10 STP9_3_99 STVIVIENDA STP14_1_TI STP14_2_TI STP14_3_TI STP14_4_TI STP14_5_TI STP14_6_TI
1 7 19 371 25 63354 47817 13764 1624 21 8 120
2 0 0 14 0 1875 1793 40 22 17 0 3
3 0 8 93 0 3332 3189 113 24 2 2 2
4 0 27 39 6 6955 6006 775 160 1 1 12
5 0 0 45 1 5095 4700 145 188 4 1 57
STP15_1_OC STP15_2_OC STP15_3_OC STP15_4_OC TSP16_HOG STP19_EC_1 STP19_ES_2 STP19_EE_1 STP19_EE_2 STP19_EE_3 STP19_EE_4
1 49809 2681 2150 8714 51430 48638 1171 34851 10343 2169 509
2 1409 13 55 398 1559 1300 109 1184 106 1 0
3 2883 2 107 340 3161 2595 288 2118 366 17 2
4 5767 304 388 496 6129 5375 392 3548 962 793 1
5 4568 5 323 199 5848 4195 373 3330 770 84 0
STP19_EE_5 STP19_EE_6 STP19_EE_9 STP19_ACU1 STP19_ACU2 STP19_ALC1 STP19_ALC2 STP19_GAS1 STP19_GAS2 STP19_GAS9
1 13 3 750 45179 4630 41138 8671 37028 12074 707
2 0 0 9 808 601 703 706 26 1371 12
3 1 0 91 2017 866 1806 1077 52 2796 35
4 1 1 69 4175 1592 4323 1444 57 5549 161
5 1 1 9 2505 2063 2359 2209 1463 3041 64
STP19_REC1 STP19_REC2 STP19_INT1 STP19_INT2 STP19_INT9 STP27_PERS STPERSON_L STPERSON_S STP32_1_SE STP32_2_SE
1 45491 4318 13362 35727 720 156789 4315 152474 77620 79169
2 727 682 27 1370 12 4514 151 4363 2323 2191
3 1905 978 73 2775 35 9075 346 8729 4551 4524
4 4348 1419 211 5395 161 17775 203 17572 8790 8985
5 2414 2154 125 4379 64 13014 192 12822 6601 6413
STP34_1_ED STP34_2_ED STP34_3_ED STP34_4_ED STP34_5_ED STP34_6_ED STP34_7_ED STP34_8_ED STP34_9_ED STP51_PRIM
1 25503 30249 29951 23602 17235 14349 8969 4687 2244 48848
2 725 1016 717 568 536 445 253 162 92 1940
3 1592 2254 1388 1121 986 816 487 286 145 3541
4 3047 3811 2601 2302 2032 1792 1135 707 348 7571
5 2346 2882 2170 1587 1460 1188 703 430 248 6072
STP51_SECU STP51_SUPE STP51_POST STP51_13_E STP51_99_E Shape_Leng Shape_Area geometry
1 59610 21898 4592 5892 3799 2.942508 0.20692777 MULTIPOLYGON (((-75.42074 2...
2 1712 231 41 215 46 1.112829 0.03361758 MULTIPOLYGON (((-75.89506 1...
3 3340 490 119 720 123 2.234657 0.09674460 MULTIPOLYGON (((-75.78705 1...
4 6287 1029 228 1095 171 3.154370 0.08986744 MULTIPOLYGON (((-75.36167 2...
5 4066 639 108 916 99 3.529316 0.10030928 MULTIPOLYGON (((-75.36638 2...
También podemos visualizar el listado de campos (atributos o columnas) a través de:
names(vector_municipios)
[1] "DPTO_CCDGO" "MPIO_CCDGO" "MPIO_CNMBR" "MPIO_CDPMP" "VERSION" "AREA" "LATITUD" "LONGITUD" "STCTNENCUE"
[10] "STP3_1_SI" "STP3_2_NO" "STP3A_RI" "STP3B_TCN" "STP4_1_SI" "STP4_2_NO" "STP9_1_USO" "STP9_2_USO" "STP9_3_USO"
[19] "STP9_4_USO" "STP9_2_1_M" "STP9_2_2_M" "STP9_2_3_M" "STP9_2_4_M" "STP9_2_9_M" "STP9_3_1_N" "STP9_3_2_N" "STP9_3_3_N"
[28] "STP9_3_4_N" "STP9_3_5_N" "STP9_3_6_N" "STP9_3_7_N" "STP9_3_8_N" "STP9_3_9_N" "STP9_3_10" "STP9_3_99" "STVIVIENDA"
[37] "STP14_1_TI" "STP14_2_TI" "STP14_3_TI" "STP14_4_TI" "STP14_5_TI" "STP14_6_TI" "STP15_1_OC" "STP15_2_OC" "STP15_3_OC"
[46] "STP15_4_OC" "TSP16_HOG" "STP19_EC_1" "STP19_ES_2" "STP19_EE_1" "STP19_EE_2" "STP19_EE_3" "STP19_EE_4" "STP19_EE_5"
[55] "STP19_EE_6" "STP19_EE_9" "STP19_ACU1" "STP19_ACU2" "STP19_ALC1" "STP19_ALC2" "STP19_GAS1" "STP19_GAS2" "STP19_GAS9"
[64] "STP19_REC1" "STP19_REC2" "STP19_INT1" "STP19_INT2" "STP19_INT9" "STP27_PERS" "STPERSON_L" "STPERSON_S" "STP32_1_SE"
[73] "STP32_2_SE" "STP34_1_ED" "STP34_2_ED" "STP34_3_ED" "STP34_4_ED" "STP34_5_ED" "STP34_6_ED" "STP34_7_ED" "STP34_8_ED"
[82] "STP34_9_ED" "STP51_PRIM" "STP51_SECU" "STP51_SUPE" "STP51_POST" "STP51_13_E" "STP51_99_E" "Shape_Leng" "Shape_Area"
[91] "geometry"
La siguiente línea utiliza la función plot() para visualizar el objeto espacial almacenado en la variable vector_municipios.
El primer argumento es el objeto espacial que desea trazar, en este caso vector_municipios. El segundo argumento contiene el atributo (columna) “DPTO_CCDGO”.La función plot() utilizará los valores de esa columna para determinar cómo colorear las entidades en el mapa. Como “DPTO_CCDGO” es una columna que representa diferentes departamentos, cada departamento se coloreará de forma diferente según los valores de esta columna.
plot(vector_municipios)
Warning: plotting the first 10 out of 90 attributes; use max.plot = 90 to plot all
Si le resulta muy pesado cargar todo el mapa completo, pruebe con el archivo mun_santander_boyaca.shp
¿Qué diferencia evidencia en la siguiente salida con respecto a la anterior? ¿Qué cambió en el código?
plot(vector_municipios["DPTO_CCDGO"])
Ahora usted cree su propia visualización por municipios. Es decir use otra variable para representar.
#Escriba su código acá
Verifique el sistema coordenado de la capa vector_municipios
st_crs(vector_municipios)
La salida se interpreta así:
PROJCRS[“MAGNA-SIRGAS 2018 / Origen-Nacional”]: Indica que está utilizando el sistema de referencia proyectado “MAGNA-SIRGAS 2018 / Origen-Nacional”.
BASEGEOGCRS[“MAGNA-SIRGAS 2018”]: Define el sistema de coordenadas geográficas subyacente llamado “MAGNA-SIRGAS 2018”.
DATUM[…]: Proporciona detalles sobre el datum que está siendo utilizado.
ELLIPOSOID[“GRS 1980”,…]: Detalles sobre el elipsoide utilizado.
CONVERSION[“Colombia Transverse Mercator”]: Detalles sobre cómo se convierten las coordenadas geográficas a coordenadas planas. Aquí se utiliza la proyección “Transverse Mercator”.
PARAMETER[…]: Estos son parámetros específicos de la proyección. Por ejemplo, “Latitude of natural origin” y “Longitude of natural origin” son las coordenadas en las que la proyección tiene cero distorsión. “False easting” y “False northing” son desplazamientos añadidos para evitar coordenadas negativas.
CS[Cartesian,2], AXIS[…], AXIS[…]: Indica que se trata de un sistema de coordenadas cartesianas bidimensional, con un eje norte y un eje este.
USAGE[…], AREA[…]: Proporciona detalles sobre el uso y la área de aplicabilidad del sistema de referencia.
ID[“EPSG”..]: Es un identificador único para este sistema de coordenadas. En este caso, el EPSG 9377 corresponde al sistema “MAGNA-SIRGAS 2018 / Origen-Nacional” que se utiliza en Colombia.
Sistemas de Coordenadas y reproyecciones los datos #### La función st_transform hace parte del paquete sf y reproyecta las coordenadas de un conjunto de datos espaciales,
vector_municipios_reproject <- st_transform(vector_municipios, 9377)
Escriba la línea para revisar el sistema de coordenadas de su capa reproyectada
#Esto es importante para documentar el código
st_crs(vector_municipios_reproject)
Felicitaciones, usted ya ha reproyectado su conjunto de datos. Sin embargo, solo se encuentran almacenados en la memoria de R bajo el nombre de la variable vector_municipios_reproject. Si usted quiere guardar sus capa reproyectada en el almacenamiento de su computador requiere exportarlo aun archivo ( por ejemplo shapefile). Modifique el código ejemplo presentado y escriba una ruta válida para almacenar sus archivo shapfile. ¿A propósito, ya sabe en qué casos coloca ./ al inicio de su ruta?.
st_write(vector_municipios_reproject, "./mi_capa_reproyectada.shp")
Realice una selección del departamento con el codigo 18 unicamente (Pista DPTO_CCDGO == 18)
%>% es un operador del paquete dplyr. Toma el objeto o resultado de la izquierda y lo “pasa” como el primer argumento a la función de la derecha. Es una manera concisa y legible de encadenar operaciones en R.
La función filter() del paquete dplyr se utiliza para filtrar filas en un dataframe (tabla con encabezados) o, en este caso, en un objeto sf basado en una condición.
DPTO_CCDGO == 18 es la condición que se usa para filtrar. Esta condición seleccionará todas las filas donde el valor de la columna DPTO_CCDGO es igual a 18.
depto_18 <- vector_municipios_reproject %>%
filter( DPTO_CCDGO == 18)
Visualice el mapa de municipios de depto_18
#Escriba acá su código
plot(depto_18["MPIO_CNMBR"])
Ahora guarde en un archivo shapefile en su computador el contenido de depto_18
#Escriba acá su código
Abra en QGIS su capa original de municipios y su capa reproyectada. Haga lo mismo con la capa del municipio 18. Verifique los sistemas de referencia de cada capa. Son diferentes los sistemas de referencia? Cuál procedimiento le resulta más interesante para reproyectar datos espaciales QGIS o líneas de código en R?