muscat
(Multi-sample multi-group scRNA-seq analysis tools )
provides various methods for Differential State (DS) analyses in
multi-sample, multi-group, multi-(cell-)subpopulation scRNA-seq data,
as elaborated in our preprint:
Crowell HL, Soneson C*, Germain P-L*,
Calini D, Collin L, Raposo C, Malhotra D & Robinson MD:
On the discovery of population-specific state transitions from
multi-sample multi-condition single-cell RNA sequencing data.
bioRxiv 713412 (July, 2019). doi: 10.1101/713412
*These authors contributed equally.
muscat
is still work in progress. Any constructive feedback (feature requests, comments on documentation, issues or bug reports) is appreciated; therefor, please file a issue on GitHub rather then emailing, so that others may benifit from answers and discussions!
muscat
can be installed from GitHub using the following commands:
if (!requireNamespace("devtools", quietly = TRUE))
install.packages("devtools")
# for the stable release branch:
devtools::install_github("HelenaLC/muscat", ref = "master")
# for the current development version:
devtools::install_github("HelenaLC/muscat", ref = "devel")
Let sce
be a SingleCellExperiment
object with cell metadata (colData
) columns
"sample_id"
specifying unique sample identifiers (e.g., PeterPan1, Nautilus7, ...)"group_id"
specifying each sample's experimental condition (e.g., reference/stimulated, healthy/diseased, ...)"cluster_id"
specifying subpopulation (cluster) assignments (e.g., B cells, dendritic cells, ...)
Aggregation-based methods come down to the following simple commands:
# compute pseudobulks (sum of counts)
pb <- aggregateData(sce,
assay = "counts", fun = "sum",
by = c("cluster_id", "sample_id"))
# run pseudobulk (aggregation-based) DS analysis
ds_pb <- pbDS(pb, method = "edgeR")
Mixed models can be run directly on cell-level measurements, e.g.:
ds_mm <- mmDS(sce, method = "dream")
For details, please see the package vignette.