Cómo manejar datos espaciales en R (Debian GNU/Linux)

Buscando “otras cosas” me encontré este interesante artículo que considera la forma de extraer valores ráster a puntos en R y GRASS. Mi interés se incrementó cuando leí expresiones como “Situations may arise where ArcGIS is not the most efficient way of extracting these values” y “My work usually requires more statistical sophistication than is available in ArcGIS”. Sin embargo, como siempre, las cosas no son tan fáciles como se resumen en esos artículos y me tocó lidiar un poco con mi sistema.

El paquete estadístico R se encuentra en los repositorios de Debian pero para ejecutar lo que dice el artículo hay que instalar adicionalmente r-cran-maptools y r-cran-sp (vía synaptic o cónsola con apt-get o aptitude). Después de instalados, la ejecución de library(maptools) produce la siguiente advertencia:

> library(maptools)
Loading required package: foreign
Loading required package: sp
Loading required package: lattice

	Note: polygon geometry computations in maptools
 	depend on the package gpclib, which has a
 	restricted licence. It is disabled by default;
 	to enable gpclib, type gpclibPermit()

Checking rgeos availability as gpclib substitute:
FALSE 
> 

Ejecutando gpclibPermit() produce esta otra advertencia:

> gpclibPermit()
[1] FALSE
Mensajes de aviso perdidos
In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE,  :
  there is no package called 'gpclib'
> 

que señala que hay que instalar también libgpcl-dev. Después de ello, la ejecución de library(maptools) fue exitosa y me permitió probar la función readShapePoints con un shapefile de puntos que tenía en ~/Desktop/PRUEBAS_QGIS/. La sintaxis del comando fue:

pt <- readShapePoints("~/Desktop/PRUEBAS_QGIS/intercepto.shp")

donde la visualización del objeto pt produjo la siguiente salida:

         coordinates ID_1 id_2
0  (618129, 1024580)    1    1
1  (620724, 1026950)    2    2
2  (623094, 1029100)    3    3
3  (629639, 1029550)    4    4
4  (635732, 1031470)    5    5
5  (640471, 1033830)    6    6
6  (645210, 1035640)    7    7
7  (650062, 1036990)    8    8
8  (654462, 1037560)    9    9
9  (656606, 1039480)   10   10
10 (657735, 1042520)   11   11
11 (660781, 1045460)   12   12
12 (664843, 1048950)   13   13
13 (666987, 1054030)   14   14
14 (673306, 1057640)   15   15
15 (683010, 1056850)   16   16
16 (692939, 1055390)   17   17
17 (699709, 1057420)   18   18
18 (703433, 1062830)   19   19
19 (709300, 1066220)   20   20
20 (714491, 1068140)   21   21

Si no se carga library(maptools) entonces la respuesta del sistema es:

Error: no se pudo encontrar la función "readShapePoints"

lo que permite corroborar que la salida anterior del objeto pt requiere necesariamente library(maptools). Por otra parte, aún salvando nuestra sesión de trabajo, cada vez que se requiera library(maptools) es necesario cargarla previamente y ejecutar gpclibPermit().

Para más información sobre el manejo de la librería:

maptools.pdf

Esta entrada fue publicada en Debian testing, Lenguaje R, SIG, Software Libre. Guarda el enlace permanente.

Una respuesta a Cómo manejar datos espaciales en R (Debian GNU/Linux)

  1. Pingback: Obtención de información de un shapefile tipo punto mediante maptools en lenguaje R | El Blog de José Guerrero

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s