Installs into .claude/skills of the current project.
Are you the author of Accessors Extensions?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/vectorspacelab-accessors-extensions)
---
name: accessors-extensions
description: "Use anndata reference accessors for validation, plotting, data
selection, and typed AnnData extension namespaces."
disable-model-invocation: true
metadata:
disco-role: operating
license: BSD 3-Clause
---
# Accessors and Extensions
Use this sub-skill when code needs portable references to arrays inside `AnnData` objects or a small typed namespace attached to `AnnData` instances.
## Route Here
- Build and inspect `anndata.acc` references such as `A.obs["batch"]`, `A.var["symbol"]`, `A.obsm["pca"][:, 0]`, `A.layers["counts"][:, "gene-a"]`, `A.obsp["connectivities"][:, "cell-a"]`, or `A.X[:, :]`.
- Check whether a reference/accessor is present in an object with `ref in adata` or `A.obsm in adata`, then extract values with `adata[ref]`.
- Parse or serialize references with `A.resolve(...)`, `A.to_json(ref)`, and `A.from_json(data)` for validation/configuration layers.
- Register a typed extension namespace with `anndata.register_anndata_namespace(name)` for library-style helpers on `AnnData`.
## Route Elsewhere
- For `AnnData` shape, view, `obs`/`var`, `layers`, `obsm`, `obsp`, and container mutation semantics, use `../data-model/SKILL.md`.
- For `.h5ad`, Zarr, lazy/backed reads, or element I/O, use `../storage-io/SKILL.md`.
- For `anndata.concat`, `concat_on_disk`, `AnnCollection`, or batch-combination choices, use `../combining-data/SKILL.md`.
## References
- `references/api-reference.md` lists the accessor classes, signatures, object relationships, and extraction contracts.
- `references/accessor-recipes.md` gives practical recipes for membership checks, extraction, JSON/string parsing, and validation-friendly reference handling.
- `references/extension-namespaces.md` covers the namespace decorator, class shape, validation, caching, and conflict avoidance.
- `references/troubleshooting.md` maps common accessor and namespace failures to fixes.
- `scripts/demo_anndata_accessor.py` is a tiny runnable demo for refs, extraction, JSON/string parsing, and namespace registration.
## Operating Rules
- Treat `AdRef` objects as object-independent references; validate `ref in adata` before extraction when user input or optional fields are involved.
- Prefer public `AnnData` APIs and small typed namespace methods; extension namespaces are for library code, not ad-hoc per-notebook state.
- Keep plotting/data-selection APIs accepting either `AdRef` instances or parseable strings, then normalize to refs with `A.resolve(..., strict=True)`.