To install Seurat, R version 4.0 or greater is required. We also recommend installing RStudio.
Install from CRAN
Seurat is available on CRAN for all systems. To install, run:
install.packages("Seurat")
library(Seurat)Optional packages, developed by other labs, can substantially improve Seurat’s speed and performance.
These include presto (Korsunsky/Raychaudhuri Labs), BPCells (Greenleaf Lab), and glmGamPoi (Huber Lab). To install these packages, run:
setRepositories(ind = 1:3, addURLs = c("https://satijalab.r-universe.dev", "https://bnprks.r-universe.dev/"))
install.packages(c( "presto", "BPCells", "glmGamPoi"))We also recommend installing the following additional packages, which enhance the functionality of Seurat and are used in our vignettes (see the Extensions page for more details):
install.packages("Signac")
if (!requireNamespace("remotes", quietly = TRUE)) {
install.packages("remotes")
}
remotes::install_github("satijalab/seurat-data")
remotes::install_github("satijalab/azimuthapi")
remotes::install_github("satijalab/rna-fingerprinting")
remotes::install_github("satijalab/seurat-wrappers")Install the development version
The development version of Seurat is available on GitHub.
library(Seurat)), restart your R session after installing a
different version to avoid version conflicts.
To install the development version, run:
if (!requireNamespace("remotes", quietly = TRUE)) {
install.packages("remotes")
}
remotes::install_github(repo = "satijalab/seurat", ref = "main")
library(Seurat)Install previous versions
Seurat v4 & older versions of Seurat, from Seurat v2.0.1 and up, are hosted in CRAN’s archive. To install, run:
if (!requireNamespace("remotes", quietly = TRUE)) {
install.packages("remotes")
}
# Replace X.X.X with your desired version
remotes::install_version(package = "Seurat", version = package_version("X.X.X"))For versions of Seurat older than those hosted on CRAN (versions
1.3.0 and 1.4.0), please download the packaged source code as a tarball
(.tar.gz) from our releases page
and install via:
install.packages("/path/to/Seurat_X.X.X.tar.gz", repos = NULL, type = "source")Use pak for installs
Users may find pak useful for quickly and easily installing Seurat and other packages:
if (!requireNamespace("pak", quietly = TRUE)) {
install.packages("pak")
}
pak::pkg_install("Seurat")
# Packages to improve speed and performance
pak::repo_add(satijalab = "https://satijalab.r-universe.dev", bnprks = "https://bnprks.r-universe.dev")
pak::pkg_install(c("BPCells", "presto", "glmGamPoi"))
# Packages to extend functionality
pak::pkg_install("Signac")
pak::pkg_install("satijalab/seurat-data")
pak::pkg_install("satijalab/azimuthapi")
pak::pkg_install("satijalab/rna-fingerprinting")
pak::pkg_install("satijalab/seurat-wrappers")
# Development version
pak::pkg_install("satijalab/seurat@main")
# Previous version on CRAN
pak::pkg_install("Seurat@X.X.X")
# Early versions via source tarball
pak::pkg_install("local::/path/to/Seurat_X.X.X.tar.gz")Docker
We provide Docker images for Seurat via Docker Hub.
Note: packages in these images may be installed from CRAN or Posit Package Manager (RSPM), which supplies precompiled binaries of CRAN releases.
To pull the latest image from the command line:
To use as a base image in a new Dockerfile: