cellity package contains functions to help to identify low quality cells in scRNA-seq data.
It extracts biological and technical features from gene expression data that help to detect low quality cells.
cellity requires 1xgene expression matrix (Genes x Cells) and 1x Read statistics matrix (Cells x Metrics) that can be obtained by processing your data first with [
celloline]. This will map your data and generate a counts-table + statistics about reads. For further details about [
celloline] please check (https://github.com/ti243/celloline).
The package features:
Future versions of
cellity may also incorporate:
See below for information about installation, getting started and highlights of the package.
cellity package has been accepted by
Bioconductor. If you have bionconductor installed ('https://www.bioconductor.org/install/'), use the following command below. That will install the appropriate
cellity version on your installed R version.
## try http:// if https:// URLs are not supported source("https://bioconductor.org/biocLite.R") biocLite("cellity")
Please bear in mind, that there is no release version of
cellity yet and you will therefore need to use the R development verison 3.3 ('http://r.research.att.com/mavericks/R-devel/R-devel-mavericks-signed.pkg').
From the 16th of April
cellity will be available for both the release and development versions of R.
cellity package has recently been submitted to Bioconductor,
development of the package is proceeding with the development version of R
(version 3.3). As such, using
cellity with the current release version of R is
If you are using the development version of R, 3.3: Installation is possible directly from Github, but it requires manual installation of all dependepent pacakges. Similarily, to the bioconductor installation, you need to have the R 3.3 development version installed.
Once you have installed the R development version, copy and paste following commands to install all required pacakges:
install.packages(c("devtools", ggplot2", "knitr","testthat","e1071", "graphics", "grDevices", "grid", "mvoutlier", "robustbase", "stats", "utils", "caret", "rmarkdown"))
source("https://bioconductor.org/biocLite.R") biocLite(c("AnnotationDbi", "org.Hs.eg.db", "org.Mm.eg.db", "topGO", "BiocStyle"))
Some packages might need other dependencies to be intalled in addition. If this is the case (displayed by an error message within R) use the same command to install the dependent packages.
After successful installation of the packages listed above, we recommend using Hadley Wickham's
devtools package to
cellity directly from GitHub by executing following command:
devtools::install_github("ti243/cellity", build_vignettes = TRUE)
The best place to start is the vignette. From inside an R session, load
and then browse the vignettes:
There is a detailed HTML document available that introduces the main features
and functionality of
The diagram below provides an overview of the functionallity of
cellity and its partner tool
cellity package allows you:
For details of how to use these functions, please consult the vignette and package documentation. The plots shown use the example data included with the package and as shown require only one or two lines of code to generate.
extract_features to extract both, technical and biological features from your data. To use the function you need pre-processed data. You need to provide a matrix containing gene expression levels (Genes x Cells) that either raw reads normalised by total counts or TPM values (e.g. converted from FPKM cufflinks). Also, you will need a matrix with read statistics of your data (Cells x Metrics).
To get both pieces of data, use
celloline(https://github.com/ti243/celloline) which is a python package that can pre-process your data and outputs both, a gene expression and read statistics matrix.
assess_cell_quality_PCA function provides the ability to visualise low quality cells by performing a PCA on features. It than uses an outlier detection algorithm to determine what are high and low quality cells. Moreover, it outputs the most informative features that can indicate what is going on in these cells in terms of quality.
assess_cell_quality_SVM one predict low quality cells in their data by using either our original mES data (960 cells, available within the package) that contain all, and common (applicable to most cell types) features. Or, alternatively one can use part of their own data (if prior quality annotation is available) to train the SVM and predict on the remainder of data.
The package is currently in an Beta state. The major functionality of the package is settled, but it is still under development so may change from time to time. Please do try it and contact me with bug reports, feedback, feature requests, questions and suggestions to improve the package.
Tomislav Ilicic & Davis McCarthy, February 2016
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.