dynverse is created to support the development, execution, plotting and benchmarking of trajectory inference methods. Check out our preprint on bioRxiv:
Wouter Saelens*, Robrecht Cannoodt*, Helena Todorov, Yvan Saeys. โA comparison of single-cell trajectory inference methods: towards more accurate and robust toolsโ. bioRxiv (Mar. 2018). DOI: 10.1101/276907.
*: Equal contribution
dynverse consists of several subpackages:
Package | Status | Code coverage | Description |
---|---|---|---|
dyno | User-friendly trajectory inference functionality | ||
dynwrap | Common trajectory wrapping functionality | ||
dynmethods | Wrappers for trajectory inference methods | ||
dyneval | Metrics and evaluation pipeline | ||
dyngen | Generator of synthetic datasets | ||
dynfeature | Extracting relevant features (genes) | ||
dynnormaliser | Common normalisation functionality | ||
dynplot | Common visualisation functionality | ||
dynalysis | Scripts to reproduce manuscript | ||
dyntoy | Quick generator of small toy datasets | ||
dynutils | Various common functions |
We include the following datasets. When using any of these datasets, please also cite our preprint:
Single-cell -omics datasets, both real and synthetic, used to evaluated the trajectory inference methods
- Coming soon Main results of the evaluation, used to rank the methods and construct practical guidelines
Supported platforms are Linux and Mac OS X. Windows users could use Windows Subsystem for Linux in order to run these packages on a Windows machine.
First you need to install a few packages:
sudo apt-get install libudunits2-dev libgsl-dev libsdl1.2-dev libreadline-dev imagemagick libfftw3-dev libudunits2-dev librsvg2-dev -y
The installation of dynmethods is sped up by preinstalling several Python libraries:
sudo apt-get install python2.7-dev python3-dev python3-pip
pip3 install --user virtualenv numpy matplotlib pandas six jinja2 python-dateutil pytz pyparsing cycler tqdm python-igraph rpy2 Cython scipy statsmodels sklearn seaborn h5py anndata umap
Some of the dependencies of dyngen and dynmethods might not be able to load unless you add the following variable to your environment:
echo 'R_MAX_NUM_DLLS=500' >> ~/.Renviron
Finally, you can install the dynverse packages with devtools:
install.packages("devtools")
library(devtools)
dyn_packages <- paste0("dynverse/dyn", c("wrap", "methods", "eval", "normaliser", "toy", "gen", "plot"))
install_github(dyn_packages, dependencies = TRUE, build_vignettes = TRUE)
First you need to install a few packages:
sudo dnf install openssl-devel libcurl-devel udunits2-devel libxml2-devel gsl-devel SDL2-devel readline-devel ImageMagick-c++-devel SDL-devel openblas-devel lapack-devel librsvg2-devel
The installation of dynmethods is sped up by preinstalling several Python libraries:
sudo dnf install python2-devel python3-devel python3-pip python3-matplotlib-tk
pip3 install --user virtualenv numpy matplotlib pandas six jinja2 python-dateutil pytz pyparsing cycler tqdm python-igraph rpy2 Cython scipy statsmodels sklearn seaborn h5py anndata umap
Rscript -e 'install.packages("udunits2", configure.args = c(udunits2 = '--with-udunits2-include=/usr/include/udunits2'))'
Some of the dependencies of dyngen and dynmethods might not be able to load unless you add the following variable to your environment:
echo 'R_MAX_NUM_DLLS=500' >> ~/.Renviron
Finally, you can install the dynverse packages with devtools:
install.packages("devtools")
library(devtools)
dyn_packages <- paste0("dynverse/dyn", c("wrap", "methods", "eval", "normaliser", "toy", "gen", "plot"))
install_github(dyn_packages, dependencies = TRUE, build_vignettes = TRUE)
First you will need to install the runtime binary of SDL1.2 and the development binary of SDL2 manually. Also install librsvg
with brew.
The installation of dynmethods is sped up by preinstalling several Python libraries:
pip3 install --user virtualenv numpy matplotlib pandas six jinja2 python-dateutil pytz pyparsing cycler tqdm python-igraph rpy2 Cython scipy statsmodels sklearn seaborn h5py anndata umap
Some of the dependencies of dyngen and dynmethods might not be able to load unless you add the following variable to your environment:
echo 'R_MAX_NUM_DLLS=150' >> ~/.Renviron
Finally, you can install the dynverse packages with devtools:
install.packages("devtools")
library(devtools)
dyn_packages <- paste0("dynverse/dyn", c("wrap", "plot", "methods", "eval", "feature", "guidelines", "normaliser", "toy", "gen", "o"))
install_github(dyn_packages, dependencies = TRUE, build_vignettes = TRUE)
You can install the development branches of these packages by adding a '@devel' at the end:
dyn_packages <- paste0("dynverse/dyn", c("wrap", "plot", "methods", "eval", "feature", "guidelines", "normaliser", "toy", "gen", "o"), "@devel")
devtools::install_github(dyn_packages, dependencies = TRUE, build_vignettes = TRUE)