GithubHelp home page GithubHelp logo

asmagen / hierarchicalsinglecell Goto Github PK

View Code? Open in Web Editor NEW
4.0 8.0 1.0 109.74 MB

An R package to robustly identify subpopulations in single-cell RNASeq data.

License: MIT License

R 11.99% Dockerfile 0.01% Jupyter Notebook 87.85% MATLAB 0.15%
scrnaseq rna-seq r clustering dendrogram single-cell subpopulation

hierarchicalsinglecell's Introduction

Discovery of cell subpopulations using single cell sequencing data and ReSET

What is ReSET (Robust Subpopulation dEcision Trees)?

ReSET is A tool that leverages the knowledge of cell subpopulation hierarchy to discover robust populations defined from single-cell RNA-Seq experiments. ReSET creates a hierarchical model that fits two independent single cell RNA-Seq datasets.

Overview

Single-cell RNA sequencing enables unbiased analysis of expression patterns. However, researchers don’t have the tools for appropriate decision making during the analysis. Our general aim is to introduce a data-driven strategy to identify the appropriate number of robust subpopulations, their discriminatory defining markers and the relationships between populations.

Workflow diagram

pipeline-diagram

Getting started

To run ReSET on your experimental data, describe your samples in a CSV file sample_sheet.csv, provide a settings.yaml to override the defaults defaults, and select the pipeline.

To generate a settings file template for any pipeline:

ReSET [pipeline] --init=settings

To generate a sample sheet template for any pipeline:

ReSET [pipeline] --init=sample-sheet

Here's a simple example to run the RNAseq pipeline:\

ReSET rnaseq my-sample-sheet.csv --settings my-settings.yaml

To see all available options run ReSET --help.

Install

A pre-built package is available in this repository.

First, you need to install the devtools package which is available from CRAN. Invoke R and then type

install.packages("devtools")

Load the devtools package.

library(devtools)

Install ReSET

install_github("NCBI-Hackathons/robustSingleCell")

Example Data Sources

10X Genomics, 4k Pan T Cells from a Healthy Donor

10X Genomics, 3k Pan T Cells from a Healthy Donor

Dependencies

python = 2.7

R >= 3.5

Project Team (Alphabetical Order)

Main team

Contributors

Presentations

License

NCBI-Hackathons/robustSingleCell is licensed under the MIT License. See LICENSE for further details.

hierarchicalsinglecell's People

Contributors

allissadillman avatar asmagen avatar bkim62 avatar cemalley avatar dcgenomics avatar jhbadger avatar mamie avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

bkim62

hierarchicalsinglecell's Issues

Interface between hclust and binary_tree

Implement as_binary_tree.hclust that takes a hclust object, assign each node a unique label and output a binary tree object along with summary statistics of each node.

  • convert hclust to newick string and assign labels
  • summarize each node by recursion

Find the most parsimonious configuration for hierarchy construction and alignment

  • Test effect of cluster summarizing method on hierarchy construction (mean, median)
  • Test effect of distance metrics on hierarchy construction (Euclidean, Pearson, Spearman)
  • Test effect of cluster summarizing method on alignment
  • Test effect of distance metrics on alignment
  • Find a way to decide lambda
  • Find a way to benchmark objectively

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.