scater: Single-cell analysis toolkit for gene expression data in R

A collection of tools for doing various analyses of single-cell RNA-seq gene expression data, with a focus on quality control.

Install the latest version of this package by entering the following in R:
AuthorDavis McCarthy
Bioconductor views DataImport DataRepresentation DimensionReduction GeneExpression Infrastructure Normalization Preprocessing QualityControl RNASeq Sequencing SingleCell Software Transcriptomics Visualization
Date of publicationNone
MaintainerDavis McCarthy <>
LicenseGPL (>= 2)

View on Bioconductor

Man pages

arrange: Arrange rows of 'pData(object)' by variables.

bootstraps: Accessor and replacement for bootstrap results in an SCESet...

calcIsExprs: Calculate which features are expressed in which cells using a...

calculateFPKM: Calculate fragments per kilobase of exon per million reads...

calculateQCMetrics: Calculate QC metrics

calculateTPM: Calculate transcripts-per-million (TPM)

cellNames: Get or set cell names from an SCESet object

cellPairwiseDistances: cellPairwiseDistances in an SCESet object

counts: Accessors for the 'counts' element of an SCESet object.

cpm: Accessors for the 'cpm' (counts per million) element of an...

fData: Replaces featureData in an SCESet object

featurePairwiseDistances: featurePairwiseDistances in an SCESet object

filter: Return 'SCESet' with cells matching conditions.

findImportantPCs: Find most important principal components for a given variable

fpkm: Accessors for the 'fpkm' (fragments per kilobase of exon per...

fromCellDataSet: Convert a 'CellDataSet' to an 'SCESet'

getBMFeatureAnnos: Get feature annotation information from Biomart

get_exprs: Generic accessor for expression data from an SCESet object.

getExprs: Retrieve a representation of gene expression

is_exprs: Accessors for the 'is_exprs' element of an SCESet object.

isOutlier: Identify if a cell is an outlier based on a metric

mergeSCESet: Merge SCESet objects

multiplot: Multiple plot function for ggplot2 plots

mutate: Add new variables to 'pData(object)'.

newSCESet: Create a new SCESet object.

nexprs: Count the number of expressed genes per cell

normaliseExprs: Normalise expression expression levels for an SCESet object

normalize: Normalise an SCESet object using pre-computed size factors

norm_counts: Accessors for the 'norm_counts' element of an SCESet object.

norm_cpm: Accessors for the 'norm_cpm' (normalised counts per million)...

norm_exprs: Accessors for the 'norm_exprs' (normalised expression)...

norm_fpkm: Accessors for the 'norm_fpkm' (normalised fragments per...

norm_tpm: Accessors for the 'norm_tpm' (transcripts per million)...

pData: Replaces phenoData in an SCESet object

plot: Plot an overview of expression for each cell

plotDiffusionMap: Plot a diffusion map for an SCESet object

plotExplanatoryVariables: Plot explanatory variables ordered by percentage of...

plotExpression: Plot expression values for a set of features (e.g. genes or...

plotExprsFreqVsMean: Plot frequency of expression against mean expression level

plotExprsVsTxLength: Plot expression against transcript length

plotFeatureData: Plot feature (gene) data from an SCESet object

plotHighestExprs: Plot the features with the highest expression values

plotMDS: Produce a multidimensional scaling plot for an SCESet object

plotMetadata: Plot metadata for cells or features

plotPCA: Plot PCA for an SCESet object

plotPhenoData: Plot phenotype data from an SCESet object

plotPlatePosition: Plot cells in plate positions

plotQC: Produce QC diagnostic plots

plotReducedDim: Plot reduced dimension representation of cells

plotTSNE: Plot t-SNE for an SCESet object

readKallistoResults: Read kallisto results from a batch of jobs

readKallistoResultsOneSample: Read kallisto results for a single sample into a list

readSalmonResults: Read Salmon results from a batch of jobs

readSalmonResultsOneSample: Read Salmon results for a single sample into a list

readTxResults: Read transcript quantification data with tximport package

reducedDimension: Reduced dimension representation for cells in an SCESet...

rename: Rename variables of 'pData(object)'.

runKallisto: Run kallisto on FASTQ files to quantify feature abundance

runSalmon: Run Salmon on FASTQ files to quantify feature abundance

scater_gui: scater GUI function

scater-package: Single-cell analysis toolkit for expression in R

SCESet: The "Single Cell Expression Set" (SCESet) class

SCESet-subset: Subsetting SCESet Objects

sc_example_cell_info: Cell information for the small example single-cell counts...

sc_example_counts: A small example of single-cell counts dataset to demonstrate...

set_exprs: Assignment method for the new elements of an SCESet object.

sizeFactors: Accessors size factors of an SCESet object.

stand_exprs: Accessors for the 'stand_exprs' (standardised expression)...

summariseExprsAcrossFeatures: Summarise expression values across feature

toCellDataSet: Convert an 'SCESet' to a 'CellDataSet'

tpm: Accessors for the 'tpm' (transcripts per million) element of...

updateSCESet: Update an SCESet object to the current version

writeSCESet: Write an SCESet object to an HDF5 file


arrange Man page
arrange.SCESet Man page
arrange,SCESet-method Man page
bootstraps Man page
bootstraps<- Man page
bootstraps.SCESet Man page
bootstraps<-,SCESet,array-method Man page
bootstraps,SCESet-method Man page
calcIsExprs Man page
calculateFPKM Man page
calculateQCMetrics Man page
calculateTPM Man page
cellDist Man page
cellDist<- Man page
cellDistSCESet Man page
cellDist<-,SCESet,dist-method Man page
cellDist<-,SCESet,matrix-method Man page
cellDist,SCESet-method Man page
cellNames Man page
cellNames<- Man page
cellNames<-,SCESet,vector-method Man page
cellPairwiseDistances Man page
cellPairwiseDistances<- Man page
cellPairwiseDistances.SCESet Man page
cellPairwiseDistances<-,SCESet,dist-method Man page
cellPairwiseDistances<-,SCESet,matrix-method Man page
cellPairwiseDistances,SCESet-method Man page
counts Man page
counts.SCESet Man page
counts<-,SCESet,matrix-method Man page
counts,SCESet-method Man page
cpm Man page
cpm<- Man page
cpmSCESet Man page
cpm<-,SCESet,matrix-method Man page
cpm,SCESet-method Man page
fData Man page
fData<-,SCESet,AnnotatedDataFrame-method Man page
fData<-,SCESet,data.frame-method Man page
fData,SCESet-method Man page
featDist Man page
featDist<- Man page
featDistSCESet Man page
featDist<-,SCESet,dist-method Man page
featDist<-,SCESet,matrix-method Man page
featDist,SCESet-method Man page
featurePairwiseDistances Man page
featurePairwiseDistances<- Man page
featurePairwiseDistancesSCESet Man page
featurePairwiseDistances<-,SCESet,dist-method Man page
featurePairwiseDistances<-,SCESet,matrix-method Man page
featurePairwiseDistances,SCESet-method Man page
filter Man page
filter.SCESet Man page
filter,SCESet-method Man page
findImportantPCs Man page
fpkm Man page
fpkm<- Man page
fpkm.SCESet Man page
fpkm<-,SCESet,matrix-method Man page
fpkm,SCESet-method Man page
fromCellDataSet Man page
getBMFeatureAnnos Man page
get_exprs Man page
getExprs Man page
get_exprs.SCESet Man page
get_exprs,SCESet-method Man page
is_exprs Man page
is_exprs<- Man page
is_exprs.SCESet Man page
is_exprs<-,SCESet,matrix-method Man page
is_exprs,SCESet-method Man page
isOutlier Man page
mergeSCESet Man page
multiplot Man page
mutate Man page
mutate.SCESet Man page
mutate,SCESet-method Man page
newSCESet Man page
nexprs Man page
normalise Man page
normaliseExprs Man page
normalise,SCESet-method Man page
normalize Man page
normalizeExprs Man page
normalize.SCESet Man page
normalize,SCESet-method Man page
norm_counts Man page
norm_counts<- Man page
norm_counts.SCESet Man page
norm_counts<-,SCESet,matrix-method Man page
norm_counts,SCESet-method Man page
norm_cpm Man page
norm_cpm<- Man page
norm_cpm.SCESet Man page
norm_cpm<-,SCESet,matrix-method Man page
norm_cpm,SCESet-method Man page
norm_exprs Man page
norm_exprs<- Man page
norm_exprs.SCESet Man page
norm_exprs<-,SCESet,matrix-method Man page
norm_exprs,SCESet-method Man page
norm_fpkm Man page
norm_fpkm<- Man page
norm_fpkm.SCESet Man page
norm_fpkm<-,SCESet,matrix-method Man page
norm_fpkm,SCESet-method Man page
normliseExprs Man page
norm_tpm Man page
norm_tpm<- Man page
norm_tpm.SCESet Man page
norm_tpm<-,SCESet,matrix-method Man page
norm_tpm,SCESet-method Man page
pData Man page
pData<-,SCESet,AnnotatedDataFrame-method Man page
pData<-,SCESet,data.frame-method Man page
pData,SCESet-method Man page
plot Man page
plotDiffusionMap Man page
plotDiffusionMapSCESet Man page
plotDiffusionMap,SCESet-method Man page
plotExplanatoryVariables Man page
plotExpression Man page
plotExpression,data.frame-method Man page
plotExpressionDefault Man page
plotExpressionSCESet Man page
plotExpression,SCESet-method Man page
plotExprsFreqVsMean Man page
plotExprsVsTxLength Man page
plotFeatureData Man page
plotHighestExprs Man page
plotMDS Man page
plotMDSSCESet Man page
plotMDS,SCESet-method Man page
plotMetadata Man page
plotPCA Man page
plotPCASCESet Man page
plotPCA,SCESet-method Man page
plotPhenoData Man page
plotPlatePosition Man page
plotQC Man page
plotReducedDim Man page
plotReducedDIm Man page
plotReducedDim,data.frame-method Man page
plotReducedDim.default Man page
plotReducedDim.SCESet Man page
plotReducedDim,SCESet-method Man page
plotSCESet Man page
plot,SCESet,ANY-method Man page
plot,SCESet-method Man page
plotTSNE Man page
plotTSNE,SCESet-method Man page
readKallistoResults Man page
readKallistoResultsOneSample Man page
readSalmonResults Man page
readSalmonResultsOneSample Man page
readTxResults Man page
redDim Man page
redDim<- Man page
redDim.SCESet Man page
redDim<-,SCESet,matrix-method Man page
redDim,SCESet-method Man page
reducedDimension Man page
reducedDimension<- Man page
reducedDimension.SCESet Man page
reducedDimension<-,SCESet,matrix-method Man page
reducedDimension,SCESet-method Man page
rename Man page
rename.SCESet Man page
rename,SCESet-method Man page
runKallisto Man page
runSalmon Man page
scater_gui Man page
scater-package Man page
SCESet Man page
[,SCESet,ANY,ANY,ANY-method Man page
[,SCESet,ANY,ANY-method Man page
[,SCESet,ANY-method Man page
SCESet-class Man page
[,SCESet-method Man page
SCESet-subset Man page
sc_example_cell_info Man page
sc_example_counts Man page
set_exprs Man page
set_exprs<- Man page
set_exprs<-,SCESet,ANY,matrix-method Man page
set_exprs<-,SCESet,ANY,NULL-method Man page
sizeFactors Man page
sizeFactors<- Man page
sizeFactors.SCESet Man page
sizeFactors,SCESet-method Man page
sizeFactors<-,SCESet,NULL-method Man page
sizeFactors<-,SCESet,numeric-method Man page
stand_exprs Man page
stand_exprs<- Man page
stand_exprs.SCESet Man page
stand_exprs<-,SCESet,matrix-method Man page
stand_exprs,SCESet-method Man page
summariseExprsAcrossFeatures Man page
toCellDataSet Man page
tpm Man page
tpm<- Man page
tpm.SCESet Man page
tpm<-,SCESet,matrix-method Man page
tpm,SCESet-method Man page
updateSCESet Man page
writeSCESet Man page


R/AllClasses.R R/AllGenerics.R R/SCESet-methods.R R/calculate-expression.R R/cxx_utils.R R/feature-preprocessing.R R/gui.R R/kallisto-wrapper.R R/normalisation.R R/plotting.R R/qc.R R/salmon-wrapper.R R/sc_example_cell_info-data.R R/sc_example_counts-data.R R/scater-package.R R/tximport-wrapper.R R/verbs.R
inst/server.R inst/shiny-app.R inst/ui.R
man/SCESet-subset.Rd man/SCESet.Rd man/arrange.Rd man/bootstraps.Rd man/calcIsExprs.Rd man/calculateFPKM.Rd man/calculateQCMetrics.Rd man/calculateTPM.Rd man/cellNames.Rd man/cellPairwiseDistances.Rd man/counts.Rd man/cpm.Rd man/fData.Rd man/featurePairwiseDistances.Rd man/filter.Rd man/findImportantPCs.Rd man/fpkm.Rd man/fromCellDataSet.Rd man/getBMFeatureAnnos.Rd man/getExprs.Rd man/get_exprs.Rd man/isOutlier.Rd man/is_exprs.Rd man/mergeSCESet.Rd man/multiplot.Rd man/mutate.Rd man/newSCESet.Rd man/nexprs.Rd man/norm_counts.Rd man/norm_cpm.Rd man/norm_exprs.Rd man/norm_fpkm.Rd man/norm_tpm.Rd man/normaliseExprs.Rd man/normalize.Rd man/pData.Rd man/plot.Rd man/plotDiffusionMap.Rd man/plotExplanatoryVariables.Rd man/plotExpression.Rd man/plotExprsFreqVsMean.Rd man/plotExprsVsTxLength.Rd man/plotFeatureData.Rd man/plotHighestExprs.Rd man/plotMDS.Rd man/plotMetadata.Rd man/plotPCA.Rd man/plotPhenoData.Rd man/plotPlatePosition.Rd man/plotQC.Rd man/plotReducedDim.Rd man/plotTSNE.Rd man/readKallistoResults.Rd man/readKallistoResultsOneSample.Rd man/readSalmonResults.Rd man/readSalmonResultsOneSample.Rd man/readTxResults.Rd man/reducedDimension.Rd man/rename.Rd man/runKallisto.Rd man/runSalmon.Rd man/sc_example_cell_info.Rd man/sc_example_counts.Rd man/scater-package.Rd man/scater_gui.Rd man/set_exprs.Rd man/sizeFactors.Rd man/stand_exprs.Rd man/summariseExprsAcrossFeatures.Rd man/toCellDataSet.Rd man/tpm.Rd man/updateSCESet.Rd man/writeSCESet.Rd
tests/testthat.R tests/testthat/test-SCESet-methods.R tests/testthat/test-calculate-expression.R tests/testthat/test-classes.R tests/testthat/test-feature-preprocessing.R tests/testthat/test-kallisto-wrapper.R tests/testthat/test-normalisation.R tests/testthat/test-plotting.R tests/testthat/test-qc.R tests/testthat/test-summariseExprsAcrossFeatures.R tests/testthat/test-tximport-wrapper.R tests/testthat/test-verbs.R

Questions? Problems? Suggestions? or email at

Please suggest features or report bugs with the GitHub issue tracker.

All documentation is copyright its authors; we didn't write any of that.