Panoramic stitching of heterogeneous single-cell transcriptomic data
Abstract
Researchers are generating single-cell RNA sequencing (scRNA-seq) profiles of diverse biological systems1-4 and every cell type in the human body.5 Leveraging this data to gain unprecedented insight into biology and disease will require assembling heterogeneous cell populations across multiple experiments, laboratories, and technologies. Although methods for scRNA-seq data integration exist6,7, they often naively merge data sets together even when the data sets have no cell types in common, leading to results that do not correspond to real biological patterns. Here we present Scanorama, inspired by algorithms for panorama stitching, that overcomes the limitations of existing methods to enable accurate, heterogeneous scRNA-seq data set integration. Our strategy identifies and merges the shared cell types among all pairs of data sets and is orders of magnitude faster than existing techniques. We use Scanorama to combine 105,476 cells from 26 diverse scRNA-seq experiments across 9 different technologies into a single comprehensive reference, demonstrating how Scanorama can be used to obtain a more complete picture of cellular function across a wide range of scRNA-seq experiments.
02 /Specification & Classification
Click any tag to browse matching papers- Citations
- 895
- FWCI
- 29.46
- Field percentile
- top 1%
- Organism
- Assay
- Research Focus
- Approach
In-depth summary
Claude Opus 5.5 · max effort · 8 Nov 2026 · from the full text of version 1 (17 Jul 2018) · CC BY 4.0
Scanorama matches mutual nearest neighbors across all scRNA-seq data set pairs, rapidly merging 105,476 cells from 26 experiments while keeping data set-specific cell types separate.
Projects like the Human Cell Atlas pool scRNA-seq data sets with differing cell compositions, but prior integration methods assume a shared cell type or correlation structure and can merge unrelated cells, while pairwise mutual nearest neighbor tools add data sets to a reference one by one, so results can depend on data set order. Scanorama instead finds mutual matches among all data set pairs, using compressed embeddings and approximate neighbor search for speed.
Key results
ShownAcross 26 data sets from 9 technologies, the integrated embedding groups cells by cell type rather than by batch, keeps a mouse neuron data set apart from all others, and avoids the single merged cluster produced by competing methods.
105,476 cells, 5,216 shared genes, 90 to 18,018 cells per data set. Median Silhouette Coefficient on t-SNE embeddings: Scanorama 0.34, scran MNN 0.01, Seurat CCA −0.20; the latter two lumped all data sets into one large cluster. · Main Text; Data sets and data processing; Clustering performance; Figure legends
ShownIn controlled tests where some data sets share no cell types, Scanorama merges only shared populations; on the 293T/Jurkat test, existing tools instead fuse disparate cell types into clusters lacking a real cell-type counterpart.
293T/Jurkat test (three 10x Genomics data sets: pure Jurkat, pure 293T, 50:50 mixture; 9,530 cells): Scanorama yields separate Jurkat and 293T clusters, while existing methods first merge the pure Jurkat and 293T sets. Simulation (three data sets, four cell types, first and third sharing none): Scanorama likewise merges only shared types. · Main Text; Simulation of non-overlapping data sets; Panorama of 293T and Jurkat cells; Figure legends
ShownCompressing expression by randomized singular value decomposition (SVD) and approximate nearest neighbor search via locality sensitive hashing makes all-pairs matching tractable, so the full collection integrates much faster than with existing tools at similar memory.
On 105,476 cells, panorama search took roughly five minutes and batch correction of all panoramas under 25 minutes, vs more than 27 hours for existing methods (scran MNN; Seurat CCA with 15 canonical correlation vectors) at about the same memory; only alignment and integration steps were timed, each method limited to 10 cores. · Main Text; Dimensionality reduction using randomized SVD; Approximate nearest neighbors using locality…; Runtime and memory profiling
ShownTwo hematopoietic stem cell (HSC) data sets from different platforms align and reproduce the progenitor hierarchy, and a five-data-set islet panorama resolves a cluster matching a reported rare beta-cell subpopulation with endoplasmic reticulum stress gene upregulation.
HSCs (3,175 cells; MARS-Seq plus Smart-seq 2): likelihood ratio 2.7e-902 (three-component Gaussian mixtures) favors corrected MARS-Seq resembling corrected Smart-seq 2 over uncorrected MARS-Seq; first two principal components order myeloid progenitors as expected. Islets (15,921 cells; 40 k-means clusters): HERPUD1 and GADD45A up in that cluster across all data sets. · Main Text; Panorama of hematopoietic stem cells (HSCs); Panorama of pancreatic islets; Figure legends
SuggestedAlignment vectors are interpretable: genes driving the alignment of Mycobacterium tuberculosis (Mtb)-infected and uninfected macrophage data sets are enriched for bacterial infection-related processes, so alignments can expose known biological differences.
Four macrophage data sets (15,337 cells). Per-gene permutation p-values compared the mean matching vector with a null of 100,000 vectors from random cross-data-set cell pairs; genes at false discovery rate < 0.05 were tested for Gene Ontology process enrichment in GOrilla against the 5,216-gene background; specific terms and statistics are not given in the main text. · Main Text; Interpreting alignments; Macrophage alignment interpretation; Figure legends
Methods, data and reproducibility
Per-cell l2-normalized expression of genes shared by all data sets is compressed to 100 dimensions by randomized SVD; approximate nearest neighbor search (Annoy) finds mutual neighbors between every data set pair, and matched pairs drive Gaussian-kernel-weighted translation vectors that merge data sets into panoramas in full gene space.
- Full collection of 26 scRNA-seq data sets from 9 technologies; cells kept only if at least 600 genes were detected · human and mouse (cell-line and macrophage species not stated) · n = 26 data sets; 105,476 cells (90 to 18,018 per data set)
- 10x Genomics cell-line data (Zheng et al. 2017): pure 293T, pure Jurkat, and 50:50 and 99:1 Jurkat:293T mixtures; the first three formed the toy panorama · n = 9,530 cells in the three-data-set toy panorama
- Unpublished 10x Genomics mouse neuron data set, a cell population absent from every other data set · mouse
- Macrophages with or without Mycobacterium tuberculosis exposure or infection: two sets from Gierahn et al. (2017), two marked pending GEO approval · n = four data sets; 15,337 cells · GSE92495 (Gierahn et al.); two sets pending final GEO approval
- Mouse hematopoietic stem cell data sets from Paul et al. (2015) and Nestorowa et al. (2016), one MARS-Seq and one Smart-seq 2 · mouse · n = two data sets; 3,175 cells · GSE72857; GSE81682
- Pancreatic islet data sets from Baron et al., Muraro et al., Grün et al., Lawlor et al. and Segerstolpe et al. · human · n = five data sets; 15,921 cells · GSE84133; GSE85241; GSE81076; GSE86469; E-MTAB-5061
- Peripheral blood mononuclear cells (PBMCs) and sorted subsets (CD19+ B, CD14+ monocytes, T and NK cells) from Zheng et al. (2017), plus Kang et al. (2018) and 10x Genomics PBMCs · human · n = ten data sets; 47,994 cells · GSE96583 (Kang et al.); other sets via 10x Genomics URLs
- Simulated data: three data sets sampled from a four-component 2-dimensional Gaussian mixture, projected to 100 dimensions, each with its own random batch shift · n = three data sets; first and third share no cell type
- Methods & tools
- Scanorama (all-pairs mutual nearest neighbor matching and panorama stitching), fbpca randomized SVD, Annoy approximate nearest neighbors (random hyperplane trees, locality sensitive hashing), Haghverdi et al. translation-vector batch correction (extended to panoramas), scran MNN (comparison method), Seurat CCA (comparison method, 15 canonical correlation vectors), scikit-learn t-SNE, modified with approximate nearest neighbor search, scikit-learn Silhouette Coefficient, k-means clustering, Gaussian mixture model likelihood-ratio test, Permutation test with 100,000 null vectors and false discovery rate control, GOrilla Gene Ontology enrichment web tool
- Code
- http://scanorama.csail.mit.edu/https://github.com/spotify/annoyhttp://fbpca.readthedocs.io/en/latest/
- Data & accessions
- http://scanorama.csail.mit.edu/https://support.10xgenomics.com/single-cell-gene-expression/datasets/1.1.0/293thttps://support.10xgenomics.com/single-cell-gene-expression/datasets/1.1.0/jurkathttps://support.10xgenomics.com/single-cell-gene-expression/datasets/1.1.0/jurkat:293t_50:50https://support.10xgenomics.com/single-cell-gene-expression/datasets/2.1.0/neuron_9khttps://support.10xgenomics.com/single-cell-gene-expression/datasets/1.1.0/fresh_68k_pbmc_donor_a
- Software & environment
- Code relies on fbpca (randomized SVD), the Annoy C++/Python package and a modified scikit-learn t-SNE bundled with it; runtime and memory profiled on Linux (Ubuntu 17.04) via Python time, R proc.time and top. No package versions given.
- Assay conditions & compute
- Each method was limited to 10 cores of an Intel Xeon E5-2650v3 CPU (2.30 GHz, 384 GB RAM); Scanorama took roughly five minutes for panorama search and under 25 minutes for batch correction of 105,476 cells.
- Reproducibility gaps
- Two macrophage data sets were marked pending final GEO approval (no accession), though the methods call all four public; software versions and random seeds are not stated; some algorithm details are deferred to Supplementary Materials.
Limitations (3)
- Alignment currently uses every high-quality cell; the authors point to random or structure-preserving subsampling as an untapped route to further computational savings. · stated by the authors
- The 26-data-set comparison is scored only by a median Silhouette Coefficient on t-SNE coordinates, which rewards cell-type separation but does not directly measure batch mixing; the Fig. 3a legend also cites 109,618 cells versus 105,476 elsewhere. · noted in this summary
- Although matching is all-pairs, panoramas are still built by successive pairwise merges ordered by match percentage, and the search uses only the 5,216 genes common to all data sets; sensitivity to merge order or gene intersection is not quantified in the main text. · noted in this summary
Who should read:Read this if you integrate many scRNA-seq data sets whose cell-type compositions only partly overlap and want a fast all-pairs mutual nearest neighbor method that avoids merging unrelated populations.
Reproducibility ledger
Nobody has reported trying to reproduce this paper yet. Did you replicate an experiment or run the code? Your report saves the next lab a week.
Sign in to file a reproducibility report.
Related papers
- FIRM: Flexible Integration of single-cell RNA-sequencing data for large-scale Multi-tissue cell atlas datasets
Jingsi Ming, Zhixiang Lin, … Angela Ruohao Wu·Briefings in BioinformaticsPeer-reviewed·Apr 18, 2022
- scMerge: Integration of multiple single-cell transcriptomics datasets leveraging stable expression and pseudo-replication
Yingxin Lin, Shila Ghazanfar, … Jean Yee Hwa Yang·Proceedings of the National Academy of SciencesPeer-reviewed·Apr 26, 2019
- Integrated analysis of single cell transcriptomic data across conditions, technologies, and species
Andrew Butler, Paul Hoffman, … Rahul Satija·Nature BiotechnologyPeer-reviewed·Apr 2, 2018
- Comprehensive integration of single cell data
Tim Stuart, Andrew Butler, … Rahul Satija·CellPeer-reviewed·Jun 1, 2019
- scIntegral: A scalable and accurate cell-type identification method for scRNA-seq data with application to integration of multiple donors
Hanbin Lee, Chanwoo Kim, … Buhm Han·bioRxiv·Sep 17, 2020
- A comparison of data integration methods for single-cell RNA sequencing of cancer samples
Laura M. Richards, Mazdak Riverin, … Trevor J. Pugh·bioRxiv·Aug 4, 2021