Learn R Programming

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

Seurat v3.0.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

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

63,510

Version

3.0.2

License

GPL-3 | file LICENSE

Issues

Pull Requests

Stars

Forks

Maintainer

Paul Hoffman

Last Published

January 24th, 2025

Functions in Seurat (3.0.2)

AddMetaData

Add in metadata associated with either cells or features.
CaseMatch

Match the case of character vectors
Assay-class

The Assay Class
CalculateBarcodeInflections

Calculate the Barcode Distribution Inflection
BuildClusterTree

Phylogenetic Analysis of Identity Classes
CombinePlots

Combine ggplot2-based plots into a single plot
CellCycleScoring

Score cell cycle phases
AugmentPlot

Augments ggplot2-based plot with a PNG image.
ExpMean

Calculate the mean of logged values
Embeddings

Get cell embeddings
DimHeatmap

Dimensional reduction heatmap
DimPlot

Dimensional reduction plot
DotPlot

Dot plot visualization
ElbowPlot

Quickly Pick Relevant Dimensions
FindConservedMarkers

Finds markers that are conserved between the groups
HoverLocator

Hover Locator
AnchorSet-class

The AnchorSet Class
AddModuleScore

Calculate module scores for feature expression programs in single cells
Cells

Get cells present in an object
AverageExpression

Averaged feature expression by identity class
BarcodeInflectionsPlot

Plot the Barcode Distribution and Calculated Inflection Points
Idents

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

Find integration anchors
CreateAssayObject

Create an Assay object
CollapseSpeciesExpressionMatrix

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

Cell-cell scatter plot
GetAssay

Get an Assay object from a given Seurat object.
CreateDimReducObject

Create a DimReduc object
CustomDistance

Run a custom distance function on an input data matrix
ExportToCellbrowser

Export Seurat object for UCSC cell browser
DietSeurat

Slim down a Seurat object
CellSelector

Cell selector
DefaultAssay

Get and set the default assay
BlackAndWhite

Create a custom color palette
Command

Get SeuratCommands
DimReduc-class

The Dimmensional Reduction Class
DoHeatmap

Feature expression heatmap
FeaturePlot

Visualize 'features' on a dimensional reduction plot
JackStraw

Determine statistical significance of PCA scores.
ProjectDim

Project Dimensional reduction onto full dataset
MixingMetric

Calculates a mixing metric
ExpSD

Calculate the standard deviation of logged values
JS

Get JackStraw information
NormalizeData

Normalize Data
Project

Get and set project information
RunLSI

Run Latent Semantic Indexing on binary count matrix
GetAssayData

General accessor function for the Assay class
Graph-class

The Graph Class
FindTransferAnchors

Find transfer anchors
RunPCA

Run Principal Component Analysis
HTODemux

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

The Seurat Class
LogSeuratCommand

Log a command
SetIntegrationData

Set integation data
LabelClusters

Label clusters on a ggplot2-based scatter plot
L2Dim

L2-normalization
HTOHeatmap

Hashtag oligo heatmap
SubsetByBarcodeInflections

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

Find variable features
HVFInfo

Get highly variable feature information
JackStrawData-class

The JackStrawData Class
LocalStruct

Calculate the local structure preservation metric
ReadAlevinCsv

Load in data from Alevin pipeline
SubsetData

Return a subset of the Seurat object
LogVMR

Calculate the variance to mean ratio of logged values
ReadAlevin

Load in data from Alevin pipeline
ExpVar

Calculate the variance of logged values
VlnPlot

Single cell violin plot
VizDimLoadings

Visualize Dimensional Reduction genes
MULTIseqDemux

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

Normalize raw data
JackStrawPlot

JackStraw Plot
OldWhichCells

Identify cells matching certain criteria
FindAllMarkers

Gene expression markers for all identity classes
ScaleData

Scale and center the data.
RenameCells

Rename cells
PlotClusterTree

Plot clusters as a tree
ScoreJackStraw

Compute Jackstraw scores significance.
RelativeCounts

Normalize raw data to fractions
PercentageFeatureSet

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

Aggregate expression of multiple features into a single feature
FindClusters

Cluster Determination
IntegrateData

Integrate data
Key

Get a key
Stdev

Get the standard deviations for an object
IntegrationData-class

The IntegrationData Class
CreateGeneActivityMatrix

Convert a peak matrix to a gene activity matrix
L2CCA

L2-Normalize CCA
CreateSeuratObject

Create a Seurat object
WhichCells

Identify cells matching certain criteria
SelectIntegrationFeatures

Select integration features
Read10X

Load in data from 10X
Read10X_h5

Read 10X hdf5 file
FetchData

Access cellular data
FeatureScatter

Scatter plot of single cell data
StopCellbrowser

Stop Cellbrowser web server
TopCells

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

Find features with highest scores for a given dimensional reduction technique
FindMarkers

Gene expression markers of identity classes
FindNeighbors

SNN Graph Construction
LabelPoints

Add text labels to a ggplot2 plot
GetResidual

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

Get integation data
SetAssayData

Setter for multimodal data
as.Graph

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

Significant genes from a PCA
RunICA

Run Independent Component Analysis on gene expression
RunCCA

Perform Canonical Correlation Analysis
Loadings

Get feature loadings
MinMax

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

Polygon DimPlot
Misc

Access miscellaneous data
as.CellDataSet

Convert objects to CellDataSet objects
Seurat-package

Tools for single-cell genomics
RunTSNE

Run t-distributed Stochastic Neighbor Embedding
SeuratCommand-class

The SeuratCommand Class
pbmc_small

A small example version of the PBMC dataset
as.Seurat

Convert objects to Seurat objects
TransferData

Transfer Labels
seurat-class

The Seurat Class
merge.Assay

Merge Seurat Objects
RunUMAP

Run UMAP
TF.IDF

Term frequency-inverse document frequency
PolyFeaturePlot

Polygon FeaturePlot
Tool

Get and set additional tool data
RidgePlot

Single cell ridge plot
RunALRA

Run Adaptively-thresholded Low Rank Approximation (ALRA)
print.DimReduc

Print the results of a dimensional reduction analysis
SCTransform

Use regularized negative binomial regression to normalize UMI count data
SampleUMI

Sample UMI
cc.genes

Cell cycle genes
UpdateSeuratObject

Update old Seurat object to accomodate new features
ReadH5AD

Read from and write to h5ad files
SeuratTheme

Seurat Themes
VariableFeatures

Get and set variable feature information
as.list.SeuratCommand

Coerce a SeuratCommand to a list
VariableFeaturePlot

View variable features
as.SingleCellExperiment

Convert objects to SingleCellExperiment objects
SplitObject

Splits object into a list of subsetted objects.
as.sparse

Convert between data frames and sparse matrices
as.loom

Convert objects to loom objects
[.Seurat

Subset a Seurat object
ALRAChooseKPlot

ALRA Approximate Rank Selection Plot