Learn R Programming

⚠️There's a newer version (5.2.1) of this package.Take me there.

Seurat v2.3

Seurat is an R toolkit for single cell genomics, developed and maintained by the Satija Lab at NYGC.

Instructions, documentation, and tutorials can be found at:

Seurat is also hosted on GitHub, you can view and clone the repository at

Seurat has been successfully installed on Mac OS X, Linux, and Windows, using the devtools package to install directly from GitHub

Improvements and new features will be added on a regular basis, please contact seuratpackage@gmail.com with any questions or if you would like to contribute

Version History

March 22, 2018

  • Version 2.3
  • Changes:
    • New utility functions
    • Speed and efficiency improvments

January 10, 2018

  • Version 2.2
  • Changes:
    • Support for multiple-dataset alignment with RunMultiCCA and AlignSubspace
    • New methods for evaluating alignment performance

October 12, 2017

  • Version 2.1
  • Changes:
    • Support for using MAST and DESeq2 packages for differential expression testing in FindMarkers
    • Support for multi-modal single-cell data via @assay slot

July 26, 2017

  • Version 2.0
  • Changes:
    • Preprint released for integrated analysis of scRNA-seq across conditions, technologies and species
    • Significant restructuring of code to support clarity and dataset exploration
    • Methods for scoring gene expression and cell-cycle phase

October 4, 2016

  • Version 1.4 released
  • Changes:
    • Improved tools for cluster evaluation/visualizations
    • Methods for combining and adding to datasets

August 22, 2016:

  • Version 1.3 released
  • Changes :
    • Improved clustering approach - see FAQ for details
    • All functions support sparse matrices
    • Methods for removing unwanted sources of variation
    • Consistent function names
    • Updated visualizations

May 21, 2015:

  • Drop-Seq manuscript published. Version 1.2 released
  • Changes :
    • Added support for spectral t-SNE and density clustering
    • New visualizations - including pcHeatmap, dot.plot, and feature.plot
    • Expanded package documentation, reduced import package burden
    • Seurat code is now hosted on GitHub, enables easy install through devtools
    • Small bug fixes

April 13, 2015:

  • Spatial mapping manuscript published. Version 1.1 released (initial release)

Copy Link

Version

Install

install.packages('Seurat')

Monthly Downloads

60,896

Version

2.3.0

License

GPL-3 | file LICENSE

Issues

Pull Requests

Stars

Forks

Maintainer

Satija Lab

Last Published

January 24th, 2025

Functions in Seurat (2.3.0)

AddImputedScore

Calculate imputed expression values
AddSamples

Add samples into existing Seurat object.
AddSmoothedScore

Calculate smoothed expression values
AugmentPlot

Augments ggplot2 scatterplot with a PNG image.
AddModuleScore

Calculate module scores for gene expression programs in single cells
AssessSplit

Assess Cluster Split
AverageExpression

Averaged gene expression by identity class
AssessNodes

Assess Internal Nodes
AverageDetectionRate

Probability of detection by identity class
AveragePCA

Average PCA scores by identity class
AddMetaData

Add Metadata
CustomDistance

Run a custom distance function on an input data matrix
CaseMatch

Match the case of character vectors
AlignSubspace

Align subspaces using dynamic time warping (DTW)
CustomPalette

Create a custom color palette
CollapseSpeciesExpressionMatrix

Slim down a multi-species expression matrix, when only one species is primarily of interenst.
CalcAlignmentMetric

Calculate an alignment score
CellCycleScoring

Score cell cycle phases
CellPlot

Cell-cell scatter plot
ColorTSNESplit

Color tSNE Plot Based on Split
CalcVarExpRatio

Calculate the ratio of variance explained by ICA or PCA to CCA
ClassifyCells

Classify New Data
DimHeatmap

Dimensional reduction heatmap
CombineIdent

Sets identity class information to be a combination of two object attributes
BlackAndWhite

A black and white color palette
CreateSeuratObject

Initialize and setup the Seurat object
ExpVar

Calculate the variance of logged values
DimPlot

Dimensional reduction plot
BuildClusterTree

Phylogenetic Analysis of Identity Classes
DimTopCells

Find cells with highest scores for a given dimensional reduction technique
ExtractField

Extract delimiter information from a string.
BuildRFClassifier

Build Random Forest Classifier
DMEmbed

Diffusion Maps Cell Embeddings Accessor Function
DimTopGenes

Find genes with highest scores for a given dimensional reduction technique
BuildSNN

SNN Graph Construction
DoHeatmap

Gene expression heatmap
DMPlot

Plot Diffusion map
DBClustDimension

Perform spectral density clustering on single cells
DoKMeans

K-Means Clustering
FetchData

Access cellular data
DarkTheme

Dark Theme
FastWhichCells

FastWhichCells Identify cells matching certain criteria (limited to character values)
DESeq2DETest

Differential expression using DESeq2
FilterCells

Return a subset of the Seurat object
FeatureHeatmap

Vizualization of multiple features
DiffExpTest

Likelihood ratio test for zero-inflated data
DotPlot

Dot plot visualization
FindAllMarkers

Gene expression markers for all identity classes
GetDimReduction

Dimensional Reduction Accessor Function
DiffTTest

Differential expression testing using Student's t-test
DotPlotOld

Old Dot plot visualization (pre-ggplot implementation) Intuitive way of visualizing how gene expression changes across different identity classes (clusters). The size of the dot encodes the percentage of cells within a class, while the color encodes the AverageExpression level of 'expressing' cells (green is high).
FindAllMarkersNode

Find all markers for a node
FindMarkers

Gene expression markers of identity classes
ICTopCells

Find cells with highest ICA scores
GetGeneLoadings

Dimensional Reduction Gene Loadings Accessor Function
DimElbowPlot

Quickly Pick Relevant Dimensions
ICTopGenes

Find genes with highest ICA scores
FindMarkersNode

Gene expression markers of identity classes defined by a phylogenetic clade
ExpMean

Calculate the mean of logged values
FindVariableGenes

Identify variable genes
GetAssayData

Accessor function for multimodal data
GetCentroids

Get cell centroids
FitGeneK

Build mixture models of gene expression
GetCellEmbeddings

Dimensional Reduction Cell Embeddings Accessor Function
ExpSD

Calculate the standard deviation of logged values
HTODemux

Demultiplex samples based on data from cell 'hashing'
GetClusters

Get Cluster Assignments
InitialMapping

Infer spatial origins for single cells
FeatureLocator

Feature Locator
HoverLocator

Hover Locator
JackStraw

Determine statistical significance of PCA scores.
ICAPlot

Plot ICA map
MakeSparse

Make object sparse
FeaturePlot

Visualize 'features' on a dimensional reduction plot
GenePlot

Scatter plot of single cell data
MarkerTest

ROC-based marker discovery
ICHeatmap

Independent component heatmap
GenesInCluster

GenesInCluster
FindClusters

Cluster Determination
MergeSeurat

Merge Seurat Objects
ICAEmbed

ICA Cell Embeddings Accessor Function
MatrixRowShuffle

Independently shuffle values within each row of a matrix
MetageneBicorPlot

Plot CC bicor saturation plot
FindConservedMarkers

Finds markers that are conserved between the two groups
ICALoad

ICA Gene Loadings Accessor Function
JackStrawPlot

JackStraw Plot
MergeNode

Merge childen of a node
LogVMR

Calculate the variance to mean ratio of logged values
NegBinomRegDETest

Negative binomial test for UMI-count based data (regularized version)
KClustDimension

Perform spectral k-means clustering on single cells
MASTDETest

Differential expression using MAST
PCAPlot

Plot PCA map
PCAEmbed

PCA Cell Embeddings Accessor Function
MinMax

Apply a ceiling and floor to all values in a matrix
NegBinomDETest

Negative binomial test for UMI-count based data
PCALoad

PCA Gene Loadings Accessor Function
PrintPCAParams

Print PCA Calculation Parameters
KMeansHeatmap

Plot k-means clusters
NormalizeData

Normalize Assay Data
PCElbowPlot

Quickly Pick Relevant PCs
PlotClusterTree

Plot phylogenetic tree
PrintSNNParams

Print SNN Construction Calculation Parameters
LogNormalize

Normalize raw data
PoissonDETest

Poisson test for UMI-count based data
PCHeatmap

Principal component heatmap
PrintAlignSubspaceParams

Print AlignSubspace Calculation Parameters
PrintICAParams

Print ICA Calculation Parameters
NumberClusters

Convert the cluster labels to a numeric representation
PrintCCAParams

Print CCA Calculation Parameters
PrintPCA

Print the results of a PCA analysis
PrintFindClustersParams

Print FindClusters Calculation Parameters
OldDoHeatmap

Gene expression heatmap
Read10X

Load in data from 10X
PrintICA

Print the results of a ICA analysis
PrintDMParams

Print Diffusion Map Calculation Parameters
PCTopCells

Find cells with highest PCA scores
RefinedMapping

Quantitative refinement of spatial inferences
RenameIdent

Rename one identity class to another
PrintDim

Print the results of a dimensional reduction analysis
RunPCA

Run Principal Component Analysis on gene expression using IRLBA
ScaleData

Scale and center the data.
PCTopGenes

Find genes with highest PCA scores
RunTSNE

Run t-distributed Stochastic Neighbor Embedding
RemoveFromTable

Remove data from a table
ScaleDataR

Old R based implementation of ScaleData. Scales and centers the data
PrintCalcVarExpRatioParams

Print Parameters Associated with CalcVarExpRatio
PrintCalcParams

Print the calculation
RunCCA

Perform Canonical Correlation Analysis
PCASigGenes

Significant genes from a PCA
ProjectPCA

Project Principal Components Analysis onto full dataset
PrintTSNEParams

Print TSNE Calculation Parameters
RunDiffusion

Run diffusion map
SplitObject

Splits object into a list of subsetted objects.
PurpleAndYellow

A purple and yellow color palette
ProjectDim

Project Dimensional reduction onto full dataset
SubsetByPredicate

Return a subset of the Seurat object.
RunICA

Run Independent Component Analysis on gene expression
StashIdent

Set identity class information
RunMultiCCA

Perform Canonical Correlation Analysis with more than two groups
SampleUMI

Sample UMI
SubsetColumn

Return a subset of columns for a matrix or data frame
SetIdent

Set identity class information
SetClusters

Set Cluster Assignments
SaveClusters

Save cluster assignments to a TSV file
VlnPlot

Single cell violin plot
ValidateClusters

Cluster Validation
SetDimReduction

Dimensional Reduction Mutator Function
Seurat-deprecated

Deprecated function(s) in the Seurat package
ValidateSpecificClusters

Specific Cluster Validation
WhichCells

Identify cells matching certain criteria
VizICA

Visualize ICA genes
TransferIdent

Transfer identity class information (or meta data) from one object to another
pbmc_small

A small example version of the PBMC dataset
Shuffle

Shuffle a vector
WilcoxDETest

Differential expression using Wilcoxon Rank Sum
seurat

The Seurat Class
UpdateSeuratObject

Update old Seurat object to accomodate new features
SplitDotPlotGG

Split Dot plot visualization
VizPCA

Visualize PCA genes
TSNEPlot

Plot tSNE map
cc.genes

Cell cycle genes
ReorderIdent

Reorder identity classes
TobitTest

Differential expression testing using Tobit models
RidgePlot

Single cell ridge plot
VariableGenePlot

View variable genes
SetAllIdent

Switch identity class definition to another variable
VizDimReduction

Visualize Dimensional Reduction genes
SetAssayData

Assay Data Mutator Function
show

show method for seurat
SubsetData

Return a subset of the Seurat object
SubsetRow

Return a subset of rows for a matrix or data frame
zfRenderSeurat

Zebrafish analysis functions