Single-cell integration benchmark scib
Benchmarking atlas-level data integration in single-cell genomics
This repository contains the code for the
scib package used in our benchmarking study for data integration tools.
In our study, we benchmark 16 methods (see Tools) with 4 combinations of
preprocessing steps leading to 68 methods combinations on 85 batches of gene expression and chromatin accessibility
The reusable pipeline we used in the study can be found in the separate scib pipeline repository. It is reproducible and automates the computation of preprocesssing combinations, integration methods and benchmarking metrics.
On our website we visualise the results of the study.
For reproducibility and visualisation we have a dedicated repository: scib-reproducibility.
Luecken, M.D., Büttner, M., Chaichoompu, K. et al. Benchmarking atlas-level data integration in single-cell genomics. Nat Methods 19, 41–50 (2022). https://doi.org/10.1038/s41592-021-01336-8
We created the python package called
scib that uses
scanpy to streamline the integration of single-cell datasets and
evaluate the results. The package contains several modules for preprocessing an
anndata object, running integration
methods and evaluating the resulting using a number of metrics. For preprocessing,
contains functions for normalising, scaling or batch-aware selection of highly variable genes. Functions for the
integration methods are in
scib.integration or for short
scib.ig and metrics are under
scib python package is available on PyPI and can be installed through
pip install scib
or from the source code.
pip install .
scib in python:
The package contains optional dependencies that need to be installed manually if needed.
These include R dependencies (
anndata2ri) which require an installation of R integration method packages.
All optional dependencies are listed under
[options.extras_require] and can be installed through pip.
e.g. for installing
pip install 'scib[rpy2,bbknn]'
Optional dependencies outside of python need to be installed separately. For instance, in order to run kBET, install it via the following command in R:
We implemented different metrics for evaluating batch correction and biological conservation in the
Tools that are compared include:
For developing this package, please make sure to install additional dependencies so that you can use
pip install -e '.[test,dev]'
Please refer to the
setup.cfg for more optional dependencies.
pre-commit to the repository for running it automatically every time you commit in git.