edroaldo / cellrouter

Reconstruction of complex single-cell trajectories using CellRouter
45 stars 21 forks source link
cell-fate-transitions scrna-seq stem-cell-differentiation trajectory-analysis

Updates (May 21, 2018)

New version available! Please, check our updated tutorial. Updates include:

  1. Raw count/UMI data can be provided as input.
  2. Perform quality control on genes and cells
  3. Normalize the data
  4. Clustering and identification of gene signatures. Annotated heatmaps
  5. Improved visualization
  6. Enhanced flexibility for trajectory reconstruction (User-defined clusters or other metadata can be used, such as sorted populations)

We are working on to create an R package for CellRouter. Stay tuned!

CellRouter

Please, join our google groups to provide suggestions, report issues, discuss about CellRouter or request new features: https://groups.google.com/forum/#!forum/cellrouter/. CellRouter was tested in Unix-based systems. Therefore, we strongly recommend to use CellRouter in Unix-based systems or Mac. CellRouter was not tested in Windows.

Introduction

CellRouter is a multifaceted single-cell analysis platform that identifies complex cell-state transition trajectories by using flow networks to explore the subpopulation structure of multi-dimensional, single-cell omics data. CellRouter integrates subpopulation identification, multi-state trajectories, and gene regulatory networks (GRNs) to provide new insights into cell-state transitions during lineage diversification, convergence, or cell reprogramming. For current tutorials illustrating how to use CellRouter, please take a look at the section Examples. CellRouter is an ongoing research project and we will keep providing more tutorials and applications. Please, do not hesitate to contact us!

Overview of CellRouter. Step (1) Starting from single cells representing multiple cell states, including stable and in transition, a gene regulatory network is reconstructed to identify putative gene regulatory relationships. Step (2) Subpopulations are then identified by a combination of learning the structure of the data and community detection algorithms. Step (3) High-resolution multi-state trajectories are identified from any subpopulation to any other, including intermediate and mature cell types. Step (4) Multi-state trajectories illustrate the divergence of single-cell transcriptomes along each trajectory progression. Identification of genes implicated in the dynamic biological process under study, such as differentiation, and identification of regulators driving or mediating cell-fate transitions at the gene and network level.

Installation

To use CellRouter, clone/download this repository. You also need to install several packages:

list.of.packages <- c('reshape','reshape2','pheatmap','tsne','igraph','ggplot2','mclust','grid','Rtsne','cccd')
new.packages <- list.of.packages[!(list.of.packages %in% installed.packages()[,"Package"])]

if(length(new.packages)) install.packages(new.packages, repos=c("http://cran.rstudio.com/", "https://bioconductor.org/biocLite.R"))

In case of a missing package after running the steps above, please install them by typing:

source('http://bioconductor.org/biocLite.R')
biocLite('package_name')

The package Vennerable also needs to be installed:

install.packages("Vennerable", repos="http://R-Forge.R-project.org")

Then, source the CellRouter class and make sure you provide the correct directory for the Java libraries inside the folder "CellRouter", as specified by the variable 'libdir'.

source('path/to/CellRouter_Class.R')
libdir <- 'path/to/CellRouter/'

Example(s)

  1. Analysis of mouse myeloid progenitor single-cell RNA-seq data generated by Paul et al.(Cell 2015)

Citation

If you use CellRouter, please cite:

Edroaldo Lummertz da Rocha, R. Grant Rowe, Vanessa Lundin, Mohan Malleshaiah, Deepak Kumar Jha, Carlos R. Rambo, Hu Li , Trista E. North, James J. Collins & George Q. Daley. Reconstruction of complex single-cell trajectories using CellRouter. Nature Communications. 2018 Mar 1;9(1):892. doi: 10.1038/s41467-018-03214-y.