Cargar un shp y acceder a los SpatialPointsDataFrame con R

Este es el primero de una serie de entradas en el blog para explicar como cargar y acceder a objetos espaciales con R. En esta entrada nos vamos a centrar en el objeto espacial tipo punto y accederemos a los elementos que lo forman.

Como ejemplo de datos puntuales vamos a utilizar los datos proporcionados por www.naturalearthdata.com en este caso usaremos un shp de puntos que contiene las principales ciudades del mundo. Vamos manos a la obra y por pasos.

  1. instalamos y cargamos la librería rgda

Para aquellos que tiene Linux es posible que necesiten instalar alguna librerías de Linux para que funcione rgdal esto se hace de la siguiente forma desde el terminal de Linux;

sudo apt-get update
sudo apt-get install libgdal-dev libproj-dev

ya en R instalamos y cargamos rgdal;

#instalar rgdal, solo se hace una vez
install.packages("rgdal")

#cargar librería rgdal una vez instalada.
#Se debe hacer cada vez que necesitamos ejecutar la librería rgdal,
#es decir al principio de nuestro código
library(rgdal)
  1. Cargamos el shp en R
  2. #directorio donde se encuentra la capabilities
    #sutituye la ruta de ejemplo por la tuya
    wd<-"/home/user/Downloads/ne_110m_populated_places_simple"
    
    #nombre del archivo shape sin la extensión
    shpname<-"ne_110m_populated_places_simple"
    
    #cargamos la capa
    cities<-readOGR(dsn=wd, layer=shpname)
    
    
  3. Accedemos a los elementos del SpatialPointsDataFrame
  4. # como esta formado este objeto
    str(cities)
    
    # coordenadas de la extensión de la capa
    cities@bbox
    
    #coordenadas de los puntos
    cities@coords
    
    #sitema de coordenadas de la capa
    cities@proj4string
    
    
  5. Accedemos a la información que contiene los puntos
  6. #accedemos a los datos que contiene la capa
    cities@data
    
    #nombres de las columna
    names(cities@data)
    
  7. Dibujamos los puntos
  8. #visualización de la capa con R
    plot(cities, axes=TRUE)
    
  9. Guardamos la cpa como un fichero shp
#escribir cities como un shp de salida
writeOGR(obj=cities, dsn=wd ,layer="cities", driver="ESRI Shapefile")

Ahora ya sabéis como manejar un SpatialPointsDataFrame. Si os a parecido poco aquí os dejo como consultar todos los formatos espaciales que podemos cargar dentro de R a parte de los muy utilizados shapefiles.

#Listado de todos los drivers y sus nombres
ogrDrivers()

Podéis acceder al código completo en este enlace.

Anuncis

One thought on “Cargar un shp y acceder a los SpatialPointsDataFrame con R

  1. Retroenllaç: Crear un SpatialPointsDataFrame con R |

Deixa un comentari

Fill in your details below or click an icon to log in:

WordPress.com Logo

Esteu comentant fent servir el compte WordPress.com. Log Out / Canvia )

Twitter picture

Esteu comentant fent servir el compte Twitter. Log Out / Canvia )

Facebook photo

Esteu comentant fent servir el compte Facebook. Log Out / Canvia )

Google+ photo

Esteu comentant fent servir el compte Google+. Log Out / Canvia )

Connecting to %s