Variance Stabilizing Transformations for Single Cell UMI Data

A normalization method for single-cell UMI count data using a variance stabilizing transformation. The transformation is based on a negative binomial regression model with regularized parameters. As part of the same regression framework, this package also provides functions for batch correction, and data correction. See Hafemeister and Satija 2019 for more details.

R package for modeling single cell UMI expression data using regularized negative binomial regression

This packaged was developed by Christoph Hafemeister in Rahul Satija's lab at the New York Genome Center. A previous version of this work was used in the paper Developmental diversification of cortical inhibitory interneurons, Nature 555, 2018. We are currently working on integrating the functionality of this package into Seurat, an R package designed for QC, analysis, and exploration of single cell RNA-seq data.

This package is in beta status, please sanity check any results, and kindly notify me of any issues you find.

Quick start

devtools::install_github(repo = 'ChristophH/sctransform')
normalized_data <- sctransform::vst(umi_count_matrix)$y


Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


0.2.0 by Christoph Hafemeister, 9 days ago

Report a bug at

Browse source code at

Authors: Christoph Hafemeister [aut, cre]

Documentation:   PDF Manual  

GPL-3 | file LICENSE license

Imports MASS, Matrix, methods, future, future.apply, ggplot2, reshape2, gridExtra, Rcpp

Suggests irlba, testthat

Linking to Rcpp, RcppEigen

Imported by Seurat.

See at CRAN