View source: R/spatial_response.R
spatial_response | R Documentation |
Calculate spatially marginal, independence, and SHAP-based response figures. They can help to diagnose both how and where the species responses to environmental variables.
spatial_response(
model,
var_occ,
variables,
shap_nsim = 0,
seed = 10L,
visualize = FALSE
)
model |
( |
var_occ |
( |
variables |
( |
shap_nsim |
( |
seed |
( |
visualize |
( |
The values show how each environmental variable affects the modeling prediction in space. These maps could help to answer questions of where in terms of environmental response. Compared to marginal dependence or independent dependence maps, SHAP-based maps are way more informative because SHAP-based dependence explain the contribution of each variable to final result.
(SpatialResponse
) A list of
spatial_marginal_response (list
) A list of stars
object of spatially
marginal response of all variables
spatial_independent_response (list
) A list of stars
object of spatially
independent response of all variables
spatial_shap_dependence (list
) A list of stars
object of spatially
SHAP-based response of all variables
plot.SpatialResponse
# Using a pseudo presence-only occurrence dataset of
# virtual species provided in this package
library(dplyr)
library(sf)
library(stars)
library(itsdm)
# Prepare data
data("occ_virtual_species")
obs_df <- occ_virtual_species %>% filter(usage == "train")
eval_df <- occ_virtual_species %>% filter(usage == "eval")
x_col <- "x"
y_col <- "y"
obs_col <- "observation"
# Format the observations
obs_train_eval <- format_observation(
obs_df = obs_df, eval_df = eval_df,
x_col = x_col, y_col = y_col, obs_col = obs_col,
obs_type = "presence_only")
env_vars <- system.file(
'extdata/bioclim_tanzania_10min.tif',
package = 'itsdm') %>% read_stars() %>%
slice('band', c(1, 5, 12))
# With imperfect_presence mode,
mod <- isotree_po(
obs_mode = "imperfect_presence",
obs = obs_train_eval$obs,
obs_ind_eval = obs_train_eval$eval,
variables = env_vars, ntrees = 20,
sample_size = 0.8, ndim = 1L,
seed = 123L, nthreads = 1,
response = FALSE,
spatial_response = FALSE,
check_variable = FALSE)
spatial_responses <- spatial_response(
model = mod$model,
var_occ = mod$vars_train,
variables = mod$variables,
shap_nsim = 1)
plot(spatial_responses)
#'
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.