# Bioconductor Zellkonverter

> Provides methods to convert between Python AnnData objects and SingleCellExperiment objects. These are primarily intended for use by downstream Bioconductor packages that wrap Python methods for single-cell data analysis. It also includes f

- Skill: `biomate-ai/bioconductor-zellkonverter` (Agent Skill)
- Install (CLI): `npx skillmds@latest add biomate-ai/bioconductor-zellkonverter`
- Raw SKILL.md: https://api.skillmd.com/api/skills/biomate-ai/bioconductor-zellkonverter/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: biomate-ai (https://skillmd.com/u/biomate-ai)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/biomate-ai/bioconductor-zellkonverter

---


# zellkonverter

## Dependencies & Environment

> Package-intrinsic requirements from the Bioconductor landing page — reproduce in any R environment.

- **Version:** 1.22.0 · **Bioconductor:** 3.23 · **R:** ≥ 4.6
- **Depends:** cli, DelayedArray, Matrix, reticulate, S4Vectors, SingleCellExperiment, SparseArray, SummarizedExperiment
- **Imports:** basilisk, cli, DelayedArray, Matrix, reticulate, S4Vectors, SingleCellExperiment, SparseArray, SummarizedExperiment
- **Install:** `BiocManager::install("zellkonverter")`

## When to Use
- Reading a `SingleCellExperiment` from a `.h5ad` file using `readH5AD`.
- Writing a `SingleCellExperiment` to a `.h5ad` file using `writeH5AD`.
- Converting directly between `SingleCellExperiment` and Python `AnnData` objects in memory using `SCE2AnnData` and `AnnData2SCE`.
- Setting up consistent Python environments for package developers using `AnnDataDependencies`.

## When NOT to Use
- For converting Seurat objects directly to Python, use `SeuratDisk` or convert to `SingleCellExperiment` first, because `zellkonverter` strictly interfaces with `SingleCellExperiment`.
- For managing Python environments generally, use `basilisk` directly, as `zellkonverter` uses it internally but isn't a general-purpose environment manager.

## Data Requirements
- A valid `.h5ad` file on disk for reading.
- A `SingleCellExperiment` object in R for writing or conversion.
- An `AnnData` object in Python (via `reticulate`) for in-memory conversion.

## Key Parameters
- **file**: Path to the input `.h5ad` file in `readH5AD` or output destination in `writeH5AD`.
- **verbose** (FALSE): Logical indicating whether to display progress messages during conversion in `readH5AD`.
- **version**: String specifying the version of `anndata` to return dependencies for in `AnnDataDependencies` (e.g., "0.7.6").
- **env**: The basilisk environment to use, typically set to `zellkonverterAnnDataEnv()` in `basiliskRun`.

## Best Practices
- Use `basiliskRun` with `zellkonverterAnnDataEnv()` to safely execute Python code on `AnnData` objects within a controlled environment.
- Use `AnnDataDependencies()` if you are a package developer to guarantee you are using the same versions of Python packages as `zellkonverter`.
- Turn on global progress messages using `setZellkonverterVerbose(TRUE)` if you want to monitor large conversions.

## Common Pitfalls
- **Python environment mismatches**: Conversion failures due to missing or incompatible Python packages. Fix: Use `basilisk` to set up the Python environment before using `SCE2AnnData` or `AnnData2SCE`.
- **Incompatible anndata versions**: Custom environments failing to parse `.h5ad` files correctly. Fix: Check required versions with `AnnDataDependencies()` to ensure compatibility.
- **Silent execution during long conversions**: The process seems stalled when reading large `.h5ad` files. Fix: Set `verbose = TRUE` in `readH5AD` to display progress messages.

## Alternatives
- **basilisk**: For general R/Python environment management without specific single-cell object conversion.
- **reticulate**: For direct Python interoperability in R, which `zellkonverter` wraps specifically for `AnnData`.
- **scRNAseq**: For accessing standard single-cell datasets natively in R without needing `.h5ad` files.

## Citations
- Luke Zappia and Alan O'Callaghan (2021). "zellkonverter: Coercion Between Python AnnData and R SingleCellExperiment Objects." *Journal of Open Source Software*, 6(68), 3705.

## References
- Homepage: https://bioconductor.org/packages/zellkonverter
- Vignette: https://bioconductor.org/packages/release/bioc/vignettes/zellkonverter/inst/doc/zellkonverter.html

<!-- biomate-cta -->
---

## Run this on BioMate

This skill is the **knowledge layer** — when, why, and how to use `zellkonverter`. To **run this analysis on your own data** with managed compute, automated QC, and reproducible outputs, use **[BioMate](https://www.biomate.ai?ref=kb&pkg=zellkonverter)** — free to start.

▶ **[Open `zellkonverter` on BioMate →](https://www.biomate.ai?ref=kb&pkg=zellkonverter)**

