Skip to content

A set of tools supporting the development, execution, and benchmarking of trajectory inference methods. ๐ŸŒ

License

Notifications You must be signed in to change notification settings

noob000007/dynverse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

dynverse

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

Subpackages

dynverse consists of several subpackages:

Package Status Code coverage Description
dyno Build status codecov User-friendly trajectory inference functionality
dynwrap Build status codecov Common trajectory wrapping functionality
dynmethods Build status codecov Wrappers for trajectory inference methods
dyneval Build status codecov Metrics and evaluation pipeline
dyngen Build status codecov Generator of synthetic datasets
dynfeature Build status codecov Extracting relevant features (genes)
dynnormaliser Build status codecov Common normalisation functionality
dynplot Build status codecov Common visualisation functionality
dynalysis Build status codecov Scripts to reproduce manuscript
dyntoy Build status codecov Quick generator of small toy datasets
dynutils Build status codecov Various common functions

Datasets

We include the following datasets. When using any of these datasets, please also cite our preprint: DOI

  • DOI 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

Installation

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.

Debian / Ubuntu / Linux Mint

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)

Fedora / CentOS

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)

Mac OS X

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)

Development version

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)

About

A set of tools supporting the development, execution, and benchmarking of trajectory inference methods. ๐ŸŒ

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • R 90.7%
  • Shell 9.3%