R: extrae datos climaticos de Worldclim usando puntos gps

Este tutorial te permitirá extraer datos climáticos como tablas que puedes exportar a excel. estos datos suelen ser empleados en análisis estadísticos donde se suele relacionar variables ambientales con la presencia o abundancia de especies.

usaremos las siguientes librerías:

library(raster)
library(sp)

Para obtener acceso a la base de datos emplearemos el siguiente código. El argumento var = nos permitirá definir si queremos extraer los datos de la lista de variables ‘bio’, ‘tmin’, ‘tmax’ o ‘prec’. Por otro lado, el argumento res = indica la resolución de trabajo. los valores aceptados son ‘0.5’, ‘2.5’, ‘5’, and ’10’ minutos de grado.

wc_data <- getData('worldclim',var='bio',res=2.5)

Hay que tener en consideración que valores más fino requieren un tiempo de procesamiento mayor y son más pesados. además, la resolución de 0.5 demanda el uso obligatorio de los argumentos lon= and lat=, por ejemplo:

wc_data <- getData('worldclim', var='tmin', res=0.5, lon=5, lat=45)

Una vez que el proceso de descarga de datos termina, lo siguiente que necesitamos es definir dos cosas. Primero, necesitamos establecer las variables de worldclim que vamos a emplear. En nuestro ejemplo, solo extraeremos los valores de bio1 y bio12.

variables <- wc_data[[c(1,12)]]

Definimos los nombres de las variables.

names(variables) <- c('Temp','Prec')

segundo, debemos crear objeto o importar una tabla que contenga las coordenadas de donde se desea extraer la información climática. si deseas crear puntos aleatorios dentro de una extensión usa el siguiente código.

# crear una tabla con puntos
site_id <- c('site1', 'site2', 'site3', 'site4')
lon <- c(-2.24, -2.98, -1.25, -0.11)
lat <- c(53.47, 53.4, 51.74, 51.49)
points<- data.frame(site_id, lon, lat, row.names='site_id')

# crear puntos aleatorios en la extensión 'wc_data@extent'
points <- spsample(as(wc_data@extent, 'SpatialPolygons'),n=100, type="random")

# o importar desde xlsx desde una ubicación
points <- read_excel("C:/.../misdatos.xlsx")

para exportar los datos usaremos la función extract. recuerden que si tienen una tabla con columnas adicionales a los valores de las coordenadas x y, deben especificar cuales son las columnas con coordenadas x e y usando algo similar a points[,2:3] , donde 2 es el número de la columna x y 3 el de la columna y.

values <- extract(variables,points)

para exportar la tabla usaremos este código y la librería xlsx.

library(xlsx)
write.xlsx(df, "C:/.../dataclima.xlsx")

Deja un comentario

Un sitio web WordPress.com.

Subir ↑

Diseña un sitio como este con WordPress.com
Comenzar