The goal of tidysdm
is to implement Species Distribution Models using the tidymodels
framework. The advantage of tidymodels
is that the model syntax and the results returned to the user are standardised, thus providing a coherent interface to modelling. Given the variety of models required for SDM, tidymodels
is an ideal framework. tidysdm
provides a number of wrappers and specialised functions to facilitate the fitting of SDM with tidymodels
.
Besides modelling contemporary species, tidysdm
has a number of functions specifically designed to work with palaeontological data.
Whilst users are free to use their own environmental data, the articles showcase the potential integration with pastclim
, which helps downloading and manipulating present day data, future predictions, and palaeoclimate reconstructions.
An overview of the capabilities of tidysdm
is given in Leonardi et al. (2023).
Installation
tidysdm
is on CRAN, and the easiest way to install it is with:
install.packages("tidysdm")
The version on CRAN is recommended for every day use. New features and bug fixes appear first on the dev
branch on GitHub, before they make their way to CRAN. If you need to have early access to these new features, you can install tidysdm
directly from GitHub. To install from GitHub, you will need to use devtools
; if you haven’t done so already, get it from CRAN with install.packages("devtools")
.
You can install the latest dev
version of tidysdm from GitHub with:
# install.packages("devtools")
devtools::install_github("EvolEcolGroup/tidysdm", ref = "dev")
Overview of functionality
On its dedicated website, you can find Articles giving you a step-by-step overview of the fitting SDMs to contemporary species, as well as an equivalent tutorial for using palaeontological data. Furthermore, there is an Article with examples of how to leverage various features of tidymodels that are not commonly adopted in SDM pipelines
There is also a dev version of the site updated for the dev
branch of tidysdm
(on the top left of the dev website, the version number is in red and in the format x.x.x.9xxx, indicating it is a development version). If you want to contribute, make sure to read our contributing guide.
Getting help
If some of your models are failing, first look at our Article on how to diagnose failing models. It is not a fully comprehensive list of everything that could go wrong, but it will hopefully give you ideas on how to dig deeper in what is wrong.
If after reading the article you are still unsure what is going wrong, there are two places to get help with tidysdm
:
If you are unsure how to do something, go to StackOverflow and, after checking that a similar question has not been asked yet, tag your question with
tidymodels
andr
(there is notidysdm
tag yet, as there aren’t enough questions), and make suretidysdm
is in the title. This will ensure that the developers see your question and can help you. If you have not received an answer after a couple of days, feel free to drop us an email in case we missed your post.If you think you have found a bug, or have a feature request, open an issue on our [GitHub repository]((https://github.com/EvolEcolGroup/tidysdm/issues). Before doing so, please make sure that you have installed the latest development version of
tidysdm
(as the bug might have already been fixed), as well as updating all other packages on your system. If the problem persists, and there is no issue already opened that deals with your bug, file a new issue providing a reproducible example for the developers to investigate the problem. A small reproducible example is crucial in allowing us to understand the problem and fix it, so please do your best to come up with the shortest bit of code needed to show the bug.