MERLot is a tool that can reconstruct the lineage tree topology that explains the emergence of different cell types from a progenitor population. MERLot is an R package than can reconstruct complex lineage tree topologies using coordinates for cells in a given manifold(like diffusion maps) as input.
MERLoT consists of 1 part written in Python, which is distributed with the R package for which the following packages need to be installed. Take into account that MERLoT uses python 3.
- scipy
- pandas
- python3-tk
- numpy
- cython
In case you install packages via pip you can simply do:
sudo pip3 install scipy pandas python3-tk numpy cython
- csgraph_mod (modified version of csgraph) which you can install from here: https://github.com/soedinglab/csgraph_mod
NOTE: In case you don’t have a standard python3 installation, e.g you installed it using anaconda, when using the package you will need to set the location of your working python3 binary in the python_url variable in the ScaffoldTree() function. By default it is set to “/usr/bin/python3” (See the Vignette Section, ScaffoldTree() function, for more information).
MERLoT depends on certain R packages in order to work properly. Most of the packages can be installed either via CRAN (with the install.packages() function) or via Bioconductor.
- car
- rgl
- rpgraph
- igraph
- fields
with cran:
install.packages(c("car", "rgl", "igraph", "fields"))
The Destiny package for creating diffusion maps was one of the dinmensionality reduction techniques we used in order to reconstruct lineage tree topologies in a low dimensional manifold.
The destiny package as well as how to install it and use it can be found here
Optional packages:
- energy (needed for finding differentially expressed genes)
- VGAM
Rpgraph can be installed following the instructions from the developer's site.
The steps can be summarized in:
install.packages(pkgs = "rJava", repos="http://rforge.net", type = 'source')
For rJava you have to have Java installed in your system. You can install default-jre, open jdk
install.packages("devtools")
library(devtools)
install.packages(c("bigpca", "irlba", "nsprcomp", "plotly","fields", "igraph", "rgl", "tictoc"))
Download an archive from github (for example the zip file) and unpack it, or pull the repository directly.
Install from source:
install.packages("/path/to/merlot/directory/", types="source", repos = NULL)
Install from github:
library(devtools)
install_github("soedinglab/merlot")