Skip to content


Folders and files

Last commit message
Last commit date

Latest commit


Repository files navigation

SCnorm: robust normalization of single-cell RNA-seq data

SCnorm is an R package which can be used to normalize single-cell RNA-seq data. SCnorm is on Bioconductor and instructions for download may be found at

Can you use SCnorm on your 10X (or very sparse) dataset?

SCnorm is not intended for datasets with more than ~80% zero counts, often K will not converge in these situations. Setting the FilterExpression parameter to 1 or 2 may help, but is not a guarantee. It may also be helpful to use the ditherCounts = TRUE parameter for sparse UMI based data which may contain numerous tied counts (counts of 1 and 2 for example).

Additional details and a FAQ for SCnorm are described in the vignette: SCnorm Vignette


Make sure to use the latest version of SCnorm by installing it from BioConductor or GitHub.

if (!requireNamespace("BiocManager", quietly=TRUE))



To access a version of SCnorm that does not require R version >= 3.4 you can download SCnorm from the development branch here:


Rhonda Bacher


Please cite SCnorm if you use it in your research:

Bacher R, Chu LF, Leng N, Gasch AP, Thomson JA, Stewart RM, Newton M, Kendziorski C. SCnorm: robust normalization of single-cell RNA-seq data. Nature Methods. 2017 Jun 1;14(6):584-6.

Latest Update: v1.5.7

Added additional warnings when using the useSpikes option and SCnorm now supports input data in the sparse matrix format.

Previous updates: v1.5.4

Allow separate normalizations for different Conditions for very large dataset. See vignette for example.