Learn R Programming

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

Seurat v3.1.2

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

August 20, 2019

  • Version 3.1
  • Changes:
    • Support for SCTransform integration workflows
    • Integration speed ups: reference-based integration + reciprocal PCA

April 12, 2019

  • Version 3.0
  • Changes:
    • Preprint published describing new methods for identifying anchors across single-cell datasets
    • Restructured Seurat object with native support for multimodal data
    • Parallelization support via future

July 20, 2018

  • Version 2.4
  • Changes:
    • Java dependency removed and functionality rewritten in Rcpp

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

3.1.2

License

GPL-3 | file LICENSE

Issues

Pull Requests

Stars

Forks

Maintainer

Paul Hoffman

Last Published

January 24th, 2025

Functions in Seurat (3.1.2)

Assay-class

The Assay Class
AugmentPlot

Augments ggplot2-based plot with a PNG image.
ALRAChooseKPlot

ALRA Approximate Rank Selection Plot
Assays

Pull Assays or assay names
AddModuleScore

Calculate module scores for feature expression programs in single cells
BarcodeInflectionsPlot

Plot the Barcode Distribution and Calculated Inflection Points
BuildClusterTree

Phylogenetic Analysis of Identity Classes
AnchorSet-class

The AnchorSet Class
AddMetaData

Add in metadata associated with either cells or features.
AverageExpression

Averaged feature expression by identity class
CollapseSpeciesExpressionMatrix

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

Cell selector
Cells

Get cells present in an object
CellsByIdentities

Get cell names grouped by identity class
CollapseEmbeddingOutliers

Move outliers towards center on dimension reduction plot
CalculateBarcodeInflections

Calculate the Barcode Distribution Inflection
ColorDimSplit

Color dimensional reduction plot by tree split
CaseMatch

Match the case of character vectors
CombinePlots

Combine ggplot2-based plots into a single plot
Command

Get SeuratCommands
CreateAssayObject

Create an Assay object
CustomDistance

Run a custom distance function on an input data matrix
CreateDimReducObject

Create a DimReduc object
BlackAndWhite

Create a custom color palette
CellCycleScoring

Score cell cycle phases
DietSeurat

Slim down a Seurat object
DefaultAssay

Get and set the default assay
CellScatter

Cell-cell scatter plot
DimHeatmap

Dimensional reduction heatmap
CreateSeuratObject

Create a Seurat object
CreateGeneActivityMatrix

Convert a peak matrix to a gene activity matrix
DimPlot

Dimensional reduction plot
ExpSD

Calculate the standard deviation of logged values
ExpVar

Calculate the variance of logged values
DoHeatmap

Feature expression heatmap
DimReduc-class

The Dimmensional Reduction Class
FeaturePlot

Visualize 'features' on a dimensional reduction plot
DotPlot

Dot plot visualization
ElbowPlot

Quickly Pick Relevant Dimensions
ExportToCellbrowser

Export Seurat object for UCSC cell browser
Graph-class

The Graph Class
Embeddings

Get cell embeddings
ExpMean

Calculate the mean of logged values
HTODemux

Demultiplex samples based on data from cell 'hashing'
FeatureScatter

Scatter plot of single cell data
FindAllMarkers

Gene expression markers for all identity classes
FindTransferAnchors

Find transfer anchors
FindVariableFeatures

Find variable features
HTOHeatmap

Hashtag oligo heatmap
FindClusters

Cluster Determination
IsGlobal

Is an object global/persistent?
FetchData

Access cellular data
FindConservedMarkers

Finds markers that are conserved between the groups
Idents

Get, set, and manipulate an object's identity classes
HoverLocator

Hover Locator
LabelClusters

Label clusters on a ggplot2-based scatter plot
JackStraw

Determine statistical significance of PCA scores.
HVFInfo

Get highly variable feature information
JS

Get JackStraw information
GetAssay

Get an Assay object from a given Seurat object.
FindIntegrationAnchors

Find integration anchors
GetAssayData

General accessor function for the Assay class
JackStrawData-class

The JackStrawData Class
LabelPoints

Add text labels to a ggplot2 plot
RunICA

Run Independent Component Analysis on gene expression
RunCCA

Perform Canonical Correlation Analysis
PrepSCTIntegration

Prepare an object list that has been run through SCTransform for integration
PolyDimPlot

Polygon DimPlot
PlotClusterTree

Plot clusters as a tree
PolyFeaturePlot

Polygon FeaturePlot
SelectIntegrationFeatures

Select integration features
L2CCA

L2-Normalize CCA
L2Dim

L2-normalization
IntegrateData

Integrate data
GetResidual

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

Get integation data
JackStrawPlot

JackStraw Plot
FindNeighbors

SNN Graph Construction
FindMarkers

Gene expression markers of identity classes
IntegrationData-class

The IntegrationData Class
SetAssayData

Setter for multimodal data
Seurat-package

Tools for single-cell genomics
SeuratCommand-class

The SeuratCommand Class
TopCells

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

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

Convert objects to Seurat objects
as.SingleCellExperiment

Convert objects to SingleCellExperiment objects
PCASigGenes

Significant genes from a PCA
LocalStruct

Calculate the local structure preservation metric
OldWhichCells

Identify cells matching certain criteria
NormalizeData

Normalize Data
Loadings

Get feature loadings
Read10X_h5

Read 10X hdf5 file
Read10X

Load in data from 10X
PercentageFeatureSet

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

Get and set project information
Key

Get a key
LogSeuratCommand

Log a command
MixingMetric

Calculates a mixing metric
Misc

Access miscellaneous data
LogNormalize

Normalize raw data
ProjectDim

Project Dimensional reduction onto full dataset
RidgePlot

Single cell ridge plot
RenameCells

Rename cells
LogVMR

Calculate the variance to mean ratio of logged values
Reductions

Pull DimReducs or DimReduc names
MULTIseqDemux

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

Run Latent Semantic Indexing on binary count matrix
RunPCA

Run Principal Component Analysis
MetaFeature

Aggregate expression of multiple features into a single feature
RelativeCounts

Normalize raw data to fractions
RenameAssays

Rename assays in a Seurat object
RegroupIdents

Regroup idents based on meta.data info
TF.IDF

Term frequency-inverse document frequency
ScaleData

Scale and center the data.
ScoreJackStraw

Compute Jackstraw scores significance.
SCTransform

Use regularized negative binomial regression to normalize UMI count data
MinMax

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

Sample UMI
ReadAlevin

Load in data from Alevin pipeline
ReadAlevinCsv

Load in data from Alevin pipeline
RunALRA

Run Adaptively-thresholded Low Rank Approximation (ALRA)
RowMergeSparseMatrices

Merge two matrices by rowname
RunUMAP

Run UMAP
RunTSNE

Run t-distributed Stochastic Neighbor Embedding
Seurat-class

The Seurat Class
SubsetData

Return a subset of the Seurat object
SetIntegrationData

Set integation data
SubsetByBarcodeInflections

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

Get and set variable feature information
[.Seurat

Subset a Seurat object
as.CellDataSet

Convert objects to CellDataSet objects
VizDimLoadings

Visualize Dimensional Reduction genes
as.Graph

Convert a matrix (or Matrix) to the Graph class.
Tool

Get and set additional tool data
Stdev

Get the standard deviations for an object
UpdateSeuratObject

Update old Seurat object to accomodate new features
TransferData

Transfer Labels
as.list.SeuratCommand

Coerce a SeuratCommand to a list
UpdateSymbolList

Get updated synonyms for gene symbols
StopCellbrowser

Stop Cellbrowser web server
SeuratTheme

Seurat Themes
VlnPlot

Single cell violin plot
SplitObject

Splits object into a list of subsetted objects.
WhichCells

Identify cells matching certain criteria
as.sparse

Convert between data frames and sparse matrices
cc.genes

Cell cycle genes
merge.Assay

Merge Seurat Objects
as.loom

Convert objects to loom objects
pbmc_small

A small example version of the PBMC dataset
cc.genes.updated.2019

Cell cycle genes: 2019 update
VariableFeaturePlot

View variable features
ReadH5AD

Read from and write to h5ad files
seurat-class

The Seurat Class
print.DimReduc

Print the results of a dimensional reduction analysis