- Free software: MIT License
- Documentation: https://connor-french.github.io/spaceprime
spaceprime is a Python package that facilitates the creation and analysis of spatially gridded coalescent models in the msprime library. The package is designed to make it easier for practitioners to convert spatial maps of habitat suitability into extensible two-dimensional stepping-stone models of gene flow, where each pixel of the map represents a deme and demes are able to migrate with their neighbors. Demes and migration rates are able to change over time according to habitat suitability model projections. These demographic parameters are then used to simulate genetic data under a coalescent model with msprime as the simulator, which can be used to infer the demographic history of the population. The package is designed to be user-friendly and intuitive, allowing users to easily simulate and analyze spatially explicit genetic data.
This page provides an overview of the package and its main features. For more detailed information, please refer to the documentation.
Note for R users: spaceprime is coded in Python, yet many interested users may come from an R background. I have a spaceprime for R users vignette that provides a brief introduction to the Python concepts necessary to use spaceprime in a practical walk-through of an example analysis. Additionally, it is possible to use Python code in R using the reticulate package. For more information on how to use Python code in R, see the reticulate documentation.
spaceprime includes a number of features:
- Convert habitat suitability values into demographic parameters, including deme sizes, migration rates, and their change through time using very little code. Code complexity does not increase with model complexity, allowing users to focus on the biological questions they are interested in.
- Simulate spatially explicit genetic data under a coalescent model with msprime. The modeling approach is fully coalescent with no forward-time component, allowing for computationally efficient simulations of large spatially explicit models.
- Visualize demographic models to facilitate model interpretation and model checking.
- Compute genetic summary statistics for simulated and empirical data to facilitate comparison with empirical data.
- Extensibility: spaceprime is designed to be interoperable with msprime, where users can setup a model with spaceprime, then customize it using the full range of msprime functionality.
spaceprime can be installed using pip
or conda
. Due to the package's reliance on msprime
, the pip
installation is only available on unix-based systems (MacOS, Linux). Windows users should install spaceprime using conda
.
To install spaceprime using pip
, run the following command in your terminal:
pip install spaceprime
To install spaceprime using conda
, run the following command in your terminal:
conda install -c conda-forge spaceprime
The mamba
package manager can also be used to install spaceprime using conda
. mamba
tends to be much faster than conda. To install spaceprime using mamba
, install mamba
, then run the following command in your terminal:
mamba install -c conda-forge spaceprime
To install spaceprime from source, run this command in your terminal:
pip install git+https://github.com/connor-french/spaceprime