Learn R Programming

Seurat v5

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

We are excited to release Seurat v5! This updates introduces new functionality for spatial, multimodal, and scalable single-cell analysis.

Seurat v5 is backwards-compatible with previous versions, so that users will continue to be able to re-run existing workflows.

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 post on the github page with any questions or if you would like to contribute

For a version history/changelog, please see the NEWS file.

Copy Link

Version

Install

install.packages('Seurat')

Monthly Downloads

39,699

Version

5.2.1

License

MIT + file LICENSE

Issues

Pull Requests

Stars

Forks

Maintainer

Paul Hoffman

Last Published

January 24th, 2025

Functions in Seurat (5.2.1)

BarcodeInflectionsPlot

Plot the Barcode Distribution and Calculated Inflection Points
CalcDispersion

Calculate dispersion of features
CalcPerturbSig

Calculate a perturbation Signature
BuildNicheAssay

Construct an assay for spatial niche analysis
CaseMatch

Match the case of character vectors
CellCycleScoring

Score cell cycle phases
ColorDimSplit

Color dimensional reduction plot by tree split
DietSeurat

Slim down a Seurat object
CombinePlots

Combine ggplot2-based plots into a single plot
DISP

Find variable features based on dispersion
DEenrichRPlot

DE and EnrichR pathway visualization barplot
BlackAndWhite

Create a custom color palette
CreateSCTAssayObject

Create a SCT Assay object
CellScatter

Cell-cell scatter plot
CalculateBarcodeInflections

Calculate the Barcode Distribution Inflection
CellSelector

Cell Selector
DimHeatmap

Dimensional reduction heatmap
ElbowPlot

Quickly Pick Relevant Dimensions
DimPlot

Dimensional reduction plot
ExpMean

Calculate the mean of logged values
FastRowScale

Scale and/or center matrix rowwise
FastRPCAIntegration

Perform integration on the joint PCA cell embeddings.
CollapseSpeciesExpressionMatrix

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

Generate CountSketch random matrix
Cells.SCTModel

Get Cell Names
CollapseEmbeddingOutliers

Move outliers towards center on dimension reduction plot
DimReduc-class

The DimReduc Class
DoHeatmap

Feature expression heatmap
DiscretePalette

Discrete colour palettes from pals
CellsByImage

Get a vector of cell names associated with an image (or set of images)
FindAllMarkers

Gene expression markers for all identity classes
CustomDistance

Run a custom distance function on an input data matrix
FindBridgeAnchor

Find bridge anchors between two unimodal datasets
FetchResidualSCTModel

Calculate pearson residuals of features not in the scale.data This function is the secondary function under FetchResiduals
FetchResiduals

Calculate pearson residuals of features not in the scale.data
ExpSD

Calculate the standard deviation of logged values
CreateCategoryMatrix

Create one hot matrix for a given label
ExpVar

Calculate the variance of logged values
FeaturePlot

Visualize 'features' on a dimensional reduction plot
FindClusters

Cluster Determination
FindVariableFeatures

Find variable features
FindTransferAnchors

Find transfer anchors
FindIntegrationAnchors

Find integration anchors
FindMarkers

Gene expression markers of identity classes
FindBridgeIntegrationAnchors

Find integration bridge anchors between query and extended bridge-reference
FeatureScatter

Scatter plot of single cell data
FindBridgeTransferAnchors

Find bridge anchors between query and extended bridge-reference
DotPlot

Dot plot visualization
FilterSlideSeq

Filter stray beads from Slide-seq puck
Graph-class

The Graph Class
GetAssay

Get an Assay object from a given Seurat object.
FindSpatiallyVariableFeatures

Find spatially variable features
FindMultiModalNeighbors

Construct weighted nearest neighbor graph
FetchResiduals_reference

temporal function to get residuals from reference
GroupCorrelation

Compute the correlation of features broken down by groups with another covariate
FindConservedMarkers

Finds markers that are conserved between the groups
GetTransferPredictions

Get the predicted identity
GetTissueCoordinates.SlideSeq

Get Tissue Coordinates
FindNeighbors

(Shared) Nearest-neighbor graph construction
FoldChange

Fold Change
ISpatialFeaturePlot

Visualize features spatially and interactively
GaussianSketch

Gaussian sketching
FindSubCluster

Find subclusters under one cluster
HarmonyIntegration

Harmony Integration
HTOHeatmap

Hashtag oligo heatmap
ImageDimPlot

Spatial Cluster Plots
HVFInfo.SCTAssay

Get Variable Feature Information
GetImage.SlideSeq

Get Image Data
JackStrawPlot

JackStraw Plot
GroupCorrelationPlot

Boxplot of correlation of a variable (e.g. number of UMIs) with expression data
GetResidual

Calculate pearson residuals of features not in the scale.data
L2CCA

L2-Normalize CCA
JointPCAIntegration

Seurat-Joint PCA Integration
GetIntegrationData

Get integration data
HTODemux

Demultiplex samples based on data from cell 'hashing'
IntegrationAnchorSet-class

The IntegrationAnchorSet Class
ImageFeaturePlot

Spatial Feature Plots
IFeaturePlot

Visualize features in dimensional reduction space interactively
ISpatialDimPlot

Visualize clusters spatially and interactively
HoverLocator

Hover Locator
LoadCurioSeeker

Load Curio Seeker data
JackStrawData-class

The JackStrawData Class
IntegrateData

Integrate data
IntegrateEmbeddings

Integrate low dimensional embeddings
JackStraw

Determine statistical significance of PCA scores.
LoadSTARmap

Load STARmap data
IntegrationData-class

The IntegrationData Class
IntegrateLayers

Integrate Layers
L2Dim

L2-normalization
LeverageScore

Leverage Score Calculation
MVP

Find variable features based on mean.var.plot
LogNormalize

Normalize Raw Data
LabelPoints

Add text labels to a ggplot2 plot
LabelClusters

Label clusters on a ggplot2-based scatter plot
LocalStruct

Calculate the local structure preservation metric
Load10X_Spatial

Load a 10x Genomics Visium Spatial Experiment into a Seurat object
MapQuery

Map query cells to a reference
LoadAnnoyIndex

Load the Annoy index file
MetaFeature

Aggregate expression of multiple features into a single feature
LogVMR

Calculate the variance to mean ratio of logged values
MULTIseqDemux

Demultiplex samples based on classification method from MULTI-seq (McGinnis et al., bioRxiv 2018)
MappingScore

Metric for evaluating mapping success
NormalizeData

Normalize Data
PCASigGenes

Significant genes from a PCA
MixscapeLDA

Linear discriminant analysis on pooled CRISPR screen data.
MixscapeHeatmap

Differential expression heatmap for mixscape
LinkedPlots

Visualize spatial and clustering (dimensional reduction) data in a linked, interactive framework
ModalityWeights-class

The ModalityWeights Class
MinMax

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

Calculates a mixing metric
NNPlot

Highlight Neighbors in DimPlot
PrepareBridgeReference

Prepare the bridge and reference datasets
ProjectCellEmbeddings

Project query data to the reference dimensional reduction
NNtoGraph

Convert Neighbor class to an asymmetrical Graph class
Neighbor-class

The Neighbor Class
PrepSCTFindMarkers

Prepare object to run differential expression on SCT assay with multiple models
PredictAssay

Predict value from nearest neighbors
PrepLDA

Function to prepare data for Linear Discriminant Analysis.
ProjectUMAP

Project query into UMAP coordinates of a reference
Read10X_probe_metadata

Read10x Probe Metadata
Read10X_h5

Read 10X hdf5 file
PolyFeaturePlot

Polygon FeaturePlot
RPCAIntegration

Seurat-RPCA Integration
PolyDimPlot

Polygon DimPlot
ReadParseBio

Read output from Parse Biosciences
ReadNanostring

Read and Load Nanostring SMI data
Radius.SlideSeq

Get Spot Radius
PseudobulkExpression

Pseudobulk Expression
PrepSCTIntegration

Prepare an object list normalized with sctransform for integration.
PercentAbove

Calculate the percentage of a vector above some threshold
ProjectData

Project full data to the sketch assay
RidgePlot

Single cell ridge plot
ReadMtx

Load in data from remote or local mtx files
ReadAkoya

Read and Load Akoya CODEX data
RunMarkVario

Run the mark variogram computation on a given position matrix and expression matrix.
ProjectDim

Project Dimensional reduction onto full dataset
RunGraphLaplacian

Run Graph Laplacian Eigendecomposition
RunICA

Run Independent Component Analysis on gene expression
RunCCA

Perform Canonical Correlation Analysis
ProjectIntegration

Integrate embeddings from the integrated sketched.assay
Read10X_ScaleFactors

Load 10X Genomics Visium Scale Factors
ProjectDimReduc

Project query data to reference dimensional reduction
Read10X_Image

Load a 10X Genomics Visium Image
PercentageFeatureSet

Calculate the percentage of all counts that belong to a given set of features
RunMixscape

Run Mixscape
RelativeCounts

Normalize raw data to fractions
PlotClusterTree

Plot clusters as a tree
SCTransform

Perform sctransform-based normalization
STARmap-class

The STARmap class
PlotPerturbScore

Function to plot perturbation score distributions.
RunTSNE

Run t-distributed Stochastic Neighbor Embedding
ReadVitessce

Read Data From Vitessce
ReadVizgen

Read and Load MERFISH Input from Vizgen
RunSLSI

Run Supervised Latent Semantic Indexing
RenameCells.SCTAssay

Rename Cells in an Object
Read10X_Coordinates

Load 10X Genomics Visium Tissue Positions
RunMoransI

Compute Moran's I value.
Read10X

Load in data from 10X
Seurat-package

Seurat: Tools for Single Cell Genomics
Seurat-class

The Seurat Class
RunUMAP

Run UMAP
SingleCorPlot

A single correlation plot
RunPCA

Run Principal Component Analysis
RunSPCA

Run Supervised Principal Component Analysis
ReadSlideSeq

Load Slide-seq spatial data
SingleExIPlot

Plot a single expression by identity on a plot
SingleDimPlot

Plot a single dimension
ReadSTARsolo

Read output from STARsolo
ScaleData

Scale and center the data.
SingleImageMap

SCTResults

Get SCT results from an Assay
SCTAssay-class

The SCTModel Class
ScoreJackStraw

Compute Jackstraw scores significance.
ScaleFactors

Get image scale factors
SeuratCommand-class

The SeuratCommand Class
SeuratTheme

Seurat Themes
TransferSketchLabels

Transfer data from sketch data to full data
RegroupIdents

Regroup idents based on meta.data info
RunLDA

Run Linear Discriminant Analysis
SelectIntegrationFeatures

Select integration features
SingleImagePlot

Single Spatial Plot
LoadXenium

Read and Load 10x Genomics Xenium in-situ data
SlideSeq-class

The SlideSeq class
SampleUMI

Sample UMI
SelectIntegrationFeatures5

Select integration features
SelectSCTIntegrationFeatures

Select SCT integration features
RunLeiden

Run Leiden clustering algorithm
SingleRasterMap

A single heatmap from ggplot2 using geom_raster
UpdateSCTAssays

Update pre-V4 Assays generated with SCTransform in the Seurat to the new SCTAssay class
SetQuantile

Find the Quantile of Data
UpdateSymbolList

Get updated synonyms for gene symbols
as.SingleCellExperiment

Convert objects to SingleCellExperiment objects
SaveAnnoyIndex

Save the Annoy index
SetIntegrationData

Set integration data
SingleSpatialPlot

Base plotting function for all Spatial plots
SketchData

Sketch Data
as.sparse.H5Group

Cast to Sparse
SpatialPlot

Visualize spatial clustering and expression data.
SplitObject

Splits object into a list of subsetted objects.
TransferAnchorSet-class

The TransferAnchorSet Class
SpatialImage-class

The SpatialImage Class
TransferData

Transfer data
SubsetByBarcodeInflections

Subset a Seurat Object based on the Barcode Distribution Inflection Points
UnSketchEmbeddings

Transfer embeddings from sketched cells to the full data
TopFeatures

Find features with highest scores for a given dimensional reduction technique
as.CellDataSet

Convert objects to CellDataSet objects
TopCells

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

Get nearest neighbors for given cell
VizDimLoadings

Visualize Dimensional Reduction genes
as.Seurat.CellDataSet

Convert objects to Seurat objects
subset.AnchorSet

Subset an AnchorSet object
writing-integration

Writing Integration Method Functions
VlnPlot

Single cell violin plot
cc.genes.updated.2019

Cell cycle genes: 2019 update
cc.genes

Cell cycle genes
VisiumV1-class

The VisiumV1 class
VisiumV2-class

The VisiumV2 class
VariableFeaturePlot

View variable features
merge.SCTAssay

Merge SCTAssay objects
VST

Variance Stabilizing Transformation
contrast-theory

Get the intensity and/or luminance of a color
components

Objects exported from other packages
fortify-Spatial

Prepare Coordinates for Spatial Plots
AddModuleScore

Calculate module scores for feature expression programs in single cells
Assay-class

The Assay Class
AnchorSet-class

The AnchorSet Class
AggregateExpression

Aggregated feature expression by identity class
AutoPointSize

Automagically calculate a point size for ggplot2-based scatter plots
AddAzimuthResults

Add Azimuth Results
AddAzimuthScores

Add Azimuth Scores
AnnotateAnchors

Add info to anchor matrix
AverageExpression

Averaged feature expression by identity class
AugmentPlot

Augments ggplot2-based plot with a PNG image.
BridgeCellsRepresentation

Construct a dictionary representation for each unimodal dataset
BuildClusterTree

Phylogenetic Analysis of Identity Classes
BridgeReferenceSet-class

The BridgeReferenceSet Class The BridgeReferenceSet is an output from PrepareBridgeReference
CCAIntegration

Seurat-CCA Integration
BGTextColor

Determine text color based on background color