flotilla — An open-source toolkit for single-cell RNA-seq data analysis

2015 Plant and Animal Genomes Conference

Michael T Lovci Ph.D.


@YeoLab


In [1]:
import css_styling


Outline


  • Why single cells?

  • Goals of flotilla

  • Test-drive

Single-cell Transcriptomes

Why you should care.


  • Single cell transcriptomics stand to change the way biologists look at heterogeneity in gene expression and the types of questions they will want to ask.

    • How is gene expression varied and how does gene expression co-vary?

    • Are there cell sub-populations?

    • What genes create the largest diffence between two groups of cells?

  • As computation and large-scale biology becomes more demanded, more than ever bioinformaticians will be called on to interpret and describe to the data that biologists create.

  • With this increased demand for bioinformaticians' time, there must be reliable and scalable solutions for processing and sharing data, analysis and methods.

Goals of `flotilla`

Data-driven conversations about _biology_

  • Interactive data exploration.

  • Reduce the time from idea to answers.

  • "Let biologists do biology."

  • Reproducibility.

  • Transparency.

  • Fight data senescence (genomics data have long-term value).

  • Community-driven standard

Applications of `flotilla`


Why is `flotilla` useful for bioinformatics experts?

  • Live-coding in meetings and presentations.

  • Data sharing.

  • Replication in multiple computation environments.

Data Model

Object-oriented design makes adding new featues across mulitple datatypes easy.

How to get `flotilla`


There are several routes to obtaining flotilla.

Depending on your interests pursue the following:

Docker Hub





The docker Virtual Machine is re-built on Docker Hub with every change to flotilla. Start a container with flotilla installed and an iPython notebook running with:
sudo docker run -v ${HOME}/flotilla_projects:/root/flotilla_projects \ -v ${HOME}/flotilla_notebooks:/root/home/ipython \ -it -P -p 8888 \ mlovci/flotilla:dev # ( or mlovci/flotilla:latest )
Where -v mounts host directories in the VM for read/write.

There is also a web-start tool for Mac OS X users that have already installed docker:

curl https://raw.githubusercontent.com/\ YeoLab/flotilla/dev/docker/start_docker.py |python

PyPI





PyPI is updated with every versioned release of flotilla

pip install flotilla </font>

GitHub












New features are available here, community interaction (request new features, watch our progress), report bugs (of course there are none), contribute new features, browse code.

git clone https://github.com/YeoLab/flotilla.git cd flotilla pip install .

Now, proceed to the examples for demonstrations.

github.com/mlovci/tmpnb_pag2015

hub.docker.com/u/mlovci/tmpnb-pag2015

  1. Demo