anndataR improves interoperability between R and Python in single-cell transcriptomics

software
single-cell
interoperability
Bioconductor
AnnData
Authors

Louise Deconinck

Luke Zappia

Robrecht Cannoodt

Martin Morgan

scverse core

Isaac Virshup

Chananchida Sang-aram

Danila Bredikhin

Brian Schilder

Ruth Seurinck

Yvan Saeys

scverse core

Date

June 1, 2026

Links
Citation stats
anndataR graphical abstract

Graphical abstract for the anndataR publication showing the key features of anndataR, an in-memory representation, on-disk formats compatible with the Python scverse ecosystem, and interoperability with other R single-cell data structures.

Abstract

SUMMARY:

Many single-cell transcriptomics datasets are stored in the HDF5-backed AnnData (H5AD) file format, as popularized by the Python scverse ecosystem. However, accessing these datasets from R, allowing users to take advantage of the strengths of each language, can be difficult. anndataR facilitates this access by allowing users to natively read and write H5AD files in R, convert them to and from SingleCellExperiment or Seurat objects, or even work with the resulting R AnnData object directly. We perform rigorous testing to ensure compatibility between Python-written and R-written H5AD files, guaranteeing long-term interoperability between languages.

AVAILABILITY AND IMPLEMENTATION:

anndataR’s source code is available on GitHub at scverse/anndataR under the MIT license. It is compatible with R version 4.5, has been archived at 10.5281/zenodo.18775712 and included within Bioconductor: 10.18129/B9.bioc.anndataR. Installation instructions and tutorials can be found in the online documentation at anndatar.scverse.org. Issues can be reported at the GitHub repository. Code to reproduce the analyses performed can be found on GitHub at LouiseDck/anndataR-paper, archived at 10.5281/zenodo.18792241.

Citation

BibTeX citation:
@article{deconinck2026,
  author = {Deconinck, Louise and Zappia, Luke and Cannoodt, Robrecht
    and Morgan, Martin and core, scverse and Virshup, Isaac and
    Sang-aram, Chananchida and Bredikhin, Danila and Schilder, Brian and
    Seurinck, Ruth and Saeys, Yvan and {scverse core}},
  title = {anndataR Improves Interoperability Between {R} and {Python}
    in Single-Cell Transcriptomics},
  journal = {Bioinformatics},
  volume = {42},
  number = {6},
  pages = {btag288},
  date = {2026-06-01},
  url = {https://doi.org/10.1093/bioinformatics/btag288},
  doi = {10.1093/bioinformatics/btag288},
  issn = {1367-4811},
  langid = {en},
  abstract = {**SUMMARY:** Many single-cell transcriptomics datasets are
    stored in the HDF5-backed AnnData (H5AD) file format, as popularized
    by the Python scverse ecosystem. However, accessing these datasets
    from R, allowing users to take advantage of the strengths of each
    language, can be difficult. anndataR facilitates this access by
    allowing users to natively read and write H5AD files in R, convert
    them to and from SingleCellExperiment or Seurat objects, or even
    work with the resulting R AnnData object directly. We perform
    rigorous testing to ensure compatibility between Python-written and
    R-written H5AD files, guaranteeing long-term interoperability
    between languages. **AVAILABILITY AND IMPLEMENTATION:** anndataR’s
    source code is available on GitHub at scverse/anndataR under the MIT
    license. It is compatible with R version 4.5, has been archived at
    10.5281/zenodo.18775712 and included within Bioconductor:
    10.18129/B9.bioc.anndataR. Installation instructions and tutorials
    can be found in the online documentation at anndatar.scverse.org.
    Issues can be reported at the GitHub repository. Code to reproduce
    the analyses performed can be found on GitHub at
    LouiseDck/anndataR-paper, archived at 10.5281/zenodo.18792241.}
}
For attribution, please cite this work as:
Deconinck, L., Zappia, L., Cannoodt, R., Morgan, M., core, scverse, Virshup, I., Sang-aram, C., Bredikhin, D., Schilder, B., Seurinck, R., Saeys, Y. & scverse core. anndataR improves interoperability between R and Python in single-cell transcriptomics. Bioinformatics 42, btag288 (2026).