Calculate independent responses of each variables.
Source:R/independent_response.R
      independent_response.RdCalculate the independent responses of each variables within the model.
Arguments
- model
- (Any predictive model). It is - isolation_foresthere. It could be the item- modelof- POIsotreemade by function- isotree_po.
- var_occ
- ( - data.frame,- tibble) The- data.framestyle table that include values of environmental variables at occurrence locations.
- variables
- ( - stars) The- starsof environmental variables. It should have multiple- attributesinstead of- dims. If you have- rasterobject instead, you could use- st_as_starsto convert it to- starsor use- read_starsdirectly read source data as a- stars. You also could use item- variablesof- POIsotreemade by function- isotree_po.
- si
- ( - integer) The number of samples to generate response curves. If it is too small, the response curves might be biased. The default value is- 1000.
- visualize
- ( - logical) if- TRUE, plot the response curves. The default is- FALSE.
Value
(IndependentResponse) A list of
- responses_cont ( - list) A list of response values of continuous variables
- responses_cat ( - list) A list of response values of categorical variables
Details
The values show how each environmental variable independently affects the modeling prediction. They show how the predicted result only using this variable changes as it is varied.
References
- Elith, Jane, et al. "The evaluation strip: a new and robust method for plotting predicted responses from species distribution models." Ecological modelling 186.3 (2005): 280-289.doi:10.1016/j.ecolmodel.2004.12.007 
Examples
# Using a pseudo presence-only occurrence dataset of
# virtual species provided in this package
library(dplyr)
library(sf)
library(stars)
library(itsdm)
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, 16))
# 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 = 10,
  sample_size = 0.8, ndim = 2L,
  seed = 123L, nthreads = 1,
  response = FALSE,
  spatial_response = FALSE,
  check_variable = FALSE)
independent_responses <- independent_response(
  model = mod$model,
  var_occ = mod$vars_train,
  variables = mod$variables)
plot(independent_responses)