A toolkit for quality control, analysis, and exploration of single cell RNA sequencing data. 'Seurat' aims to enable users to identify and interpret sources of heterogeneity from single cell transcriptomic measurements, and to integrate diverse types of single cell data. See Satija R, Farrell J, Gennert D, et al (2015) doi:10.1038/nbt.3192 , Macosko E, Basu A, Satija R, et al (2015) doi:10.1016/j.cell.2015.05.002 , Stuart T, Butler A, et al (2019) doi:10.1016/j.cell.2019.05.031 , and Hao, Hao, et al (2020) doi:10.1101/2020.10.12.335331 for more details.

Package options

Seurat uses the following [options()] to configure behaviour:


global option to call gc() after many operations. This can be helpful in cleaning up the memory status of the R session and prevent use of swap space. However, it does add to the computational overhead and setting to FALSE can speed things up if you're working in an environment where RAM availability is not a concern.


Show warning about the default backend for RunUMAP changing from Python UMAP via reticulate to UWOT


For functions that have ... as a parameter, this controls the behavior when an item isn't used. Can be one of warn, stop, or silent.


Show message about more efficient Wilcoxon Rank Sum test available via the limma package


Show message about more efficient Moran's I function available via the Rfast2 package


Show message about changes to default behavior of split/multi violin plots


Maintainer: Rahul Satija seurat@nygenome.org (ORCID)

Other contributors: