Del ejercicio pasado, tenemos que importar el set de datos y volver a darle coordenadas

datos = read.csv("tricahue.csv") |>
    st_as_sf(coords = c("lon", "lat"), crs = "epsg:4326") |>
    filter(year > 2000) |>
    dplyr::select(scientificName, locality, year) |>
    distinct()

Nicho climático

Vamos a buscar cuáles son las condiciones climáticas en que están estos registros para generar asi, una definición (gruesa) del nicho climático para Tricahue.

Usaremos los datos de Worldclim, que se encuentran documentados aquí. Sólo usaremos las variables bioclimáticas, en este ejemplo, pero debes complementar esto con variables de precipitaciones, temperatura y radiación solar si fuera necesario.

Bioclim <- worldclim_country(c("Chile", "Argentina"), var = c("bio"), res = 0.5,
    path = getwd())  #|>
# terra::crop(st_transform(datos,'EPSG:4326')) # reproyectamos 'al vuelo', pues
# bioclim viene en epsg:4326
names(Bioclim) <- sapply(strsplit(names(Bioclim), split = "30s_", fixed = TRUE),
    function(x) (x[2]))  # renombra columnas
names(Bioclim) <- sapply(gsub("_", "", names(Bioclim)), function(x) (x))
plot(Bioclim)

Si quieres ver una sola capa y un poco mas grande

capa = "bio10"
plot(Bioclim[[capa]], main = capa)

Clima en registros de C. patagonus

Para extraer los datos bioclimáticos en las coordenadas geográficas, debemos consultar los pixeles de los rasters bioclimáticos donde existen ocurrencias en nuestra bas de datos.

Ejemplo de consulta de valores de raster en coordenadas
Ejemplo de consulta de valores de raster en coordenadas

La función a usar está en la librería raster y se llama extract().

Con eso generamos una tabla con las variables climáticas en cada una de las coordenadas en que tenemos registros.

Clima <- terra::extract(Bioclim, st_transform(datos, "EPSG:4326"))
Clima <- Clima[, -1]

Vemos la tabla con los datos bioclimáticos para cada registro. (filas = primero 15 registros)

bio1 bio2 bio3 bio4 bio5 bio6 bio7 bio8 bio9 bio10 bio11 bio12 bio13 bio14 bio15 bio16 bio17 bio18 bio19
10.145833 13.791667 49.96981 515.1587 26.1 -1.5 27.6 4.666667 16.63333 16.63333 3.866667 839 180 12 86.68415 477 42 42 453
12.625000 12.883333 48.98606 490.2202 28.0 1.7 26.3 7.416666 18.88333 18.88333 6.716667 917 196 12 87.47552 523 41 41 487
15.454166 12.941667 49.58493 478.5464 30.3 4.2 26.1 10.300000 20.88333 21.35000 9.666667 717 180 3 101.38228 453 15 20 428
14.825000 9.033334 54.74748 282.3561 23.3 6.8 16.5 11.466667 17.51667 18.41667 11.466667 61 19 0 112.24976 47 0 0 47
17.183332 12.550000 48.26923 492.0474 31.9 5.9 26.0 11.750000 22.73333 23.20000 11.216666 648 172 1 111.24863 445 8 11 397
12.883333 12.983334 49.74457 478.1800 28.2 2.1 26.1 7.800000 19.01667 19.01667 7.150000 927 205 10 90.69820 541 35 35 500
12.883333 12.983334 49.74457 478.1800 28.2 2.1 26.1 7.800000 19.01667 19.01667 7.150000 927 205 10 90.69820 541 35 35 500
12.883333 12.983334 49.74457 478.1800 28.2 2.1 26.1 7.800000 19.01667 19.01667 7.150000 927 205 10 90.69820 541 35 35 500
12.883333 12.983334 49.74457 478.1800 28.2 2.1 26.1 7.800000 19.01667 19.01667 7.150000 927 205 10 90.69820 541 35 35 500
12.883333 12.983334 49.74457 478.1800 28.2 2.1 26.1 7.800000 19.01667 19.01667 7.150000 927 205 10 90.69820 541 35 35 500
12.883333 12.983334 49.74457 478.1800 28.2 2.1 26.1 7.800000 19.01667 19.01667 7.150000 927 205 10 90.69820 541 35 35 500
7.729166 12.025001 50.10417 448.3579 21.5 -2.5 24.0 2.316667 13.40000 13.40000 2.316667 971 213 11 93.93735 569 39 39 569
12.683333 13.533334 51.45754 475.7403 27.5 1.2 26.3 7.600000 18.06667 18.56667 6.883333 747 173 4 97.46371 463 19 23 432
14.708333 11.033334 57.46528 313.9110 24.6 5.4 19.2 10.933333 18.65000 18.65000 10.933333 79 28 0 116.93127 60 0 0 60
13.729167 11.525000 58.50254 310.6917 23.9 4.2 19.7 10.000000 16.88333 17.61667 10.000000 52 16 0 109.42775 38 0 0 38

Ahora, a qué corresponde bio1, bio2, etc…??

Veamos, por una parte, qué son estas variables:

Por otra parte, la inspección de la tabla muestra que sólo tiene los valores bioclimáticos. Necesitamos, ciertamente, asociar los registros y probablemente otros datos climáticos como temperatura, precipitaciones, radiación, por ejemplo.

Pero miremos primero cómo se relacionan los valores bioclimáticos recuperados para GBIF tiene registros de C. patagonus en Chile.

Selección de vaiables (bioclimáticas)

Sabemos que las variables bioclimáticas son variables derivadas de la variables de clima. Por lo tanto, han de tener fuertes correlaciones entre ellas. La pregunta es cuales elegir y minimizar asi, esta correlación espuria que sólo incrementará el ajuste del modelo de forma artificial.

  • Ver aqui la descripción de las variable bioclimáticas de worldclim.

A continuación se describen las 19 variables bioclimáticas:

  • bio1 = Temperatura media anual
  • bio2 = amplitud diurna media (media de la temperatura máxima y mínima)
  • bio3 = Isotermia (bio2/bio7) (* 100)
  • bio4 = Estacionalidad de la temperatura (desviación típica *100)
  • bio5 = Temperatura máxima del mes más cálido
  • bio6 = Temperatura mínima del mes más frío
  • bio7 = Rango anual de temperaturas (bio5-bio6)
  • bio8 = Temperatura media del trimestre más húmedo
  • bio9 = Temperatura media del trimestre más seco
  • bio10 = Temperatura media del trimestre más cálido
  • bio11 = Temperatura media del trimestre más frío
  • bio12 = Precipitación total (anual)
  • bio13 = Precipitación del mes más húmedo
  • bio14 = Precipitación del mes más seco
  • bio15 = Estacionalidad de las precipitaciones (coeficiente de variación)
  • bio16 = Precipitación del trimestre más húmedo
  • bio17 = Precipitaciones del trimestre más seco
  • bio18 = Precipitaciones del trimestre más cálido
  • bio19 = Precipitaciones del trimestre más frío

Buscamos comprender cuáles variables bioclimáticas son significativamente relevantes para describir, y predecir, la distribución de la especies. Esto significa que debemos poder tener una variables que representan, en realidad, un mismo aspecto del clima a la hora de generar una predicción.

Veamos la correlación entre la variables bioclimáticas donde hay C. patagonus. Fíjense que se han agrupados las filas y columnas con correlaciones similares para facilitar la interpretación. Eso puede hacerse con la librería ggcorrplot y su parámetro hc.order.

# install.packages('ggcorrplot') library(ggcorrplot)
p_load(ggcorrplot)
corr <- cor(Clima, use = "pairwise")  # ojo que removemos la primera columna que es el 'ID'
ggcorrplot::ggcorrplot(corr, method = "square", pch = 2, show.diag = FALSE, type = "upper",
    ggtheme = theme_minimal(), hc.order = TRUE)

Seleccionamos entonces algunas variables de Bioclim que muestren baja correlación (no negativa!).

yo veo las variables :

  • BIO1
  • BIO5
  • BIO9
  • BIO10

(son todas de temperatura?…. mmmh sus. Creo que será importante considerar directamente las variables climáticas.)

## ejemplo con algunas variables... que no son las correctas, pero muestra el
## procedimiento
Var_ambientales <- Clima |>
    dplyr::select(bio1, bio5, bio9, bio10)
rm(Clima)  # borramos para aliviar la memoria del compu!

Guardamos los datos

Necesitamos guardar algunos de los objetos creados para usarlos en otra sesion.

# escribir un raster al disco como .tif
writeRaster(Bioclim, "Bioclim_raster.tif", overwrite = TRUE)
# ocurrencias
write_sf(datos, "tricahue.gpkg")
# Var ambientales
write.csv(Var_ambientales, "Var_ambientales.csv")

Resumen

En esta sesion perparamos los datos para el análisis de nicho climático