用途:AnnData 用于存储、操作和分析带注释的数据矩阵,常用于单细胞分析,可作为 scverse 生态的基础数据结构。
主要能力:核心组件包括 X、obs、var、layers、obsm、varm、obsp、varp、uns、raw;支持读写 h5ad、zarr、CSV、MTX、Loom、10X、Excel 等格式;支持备份模式处理大文件、云端访问、稀疏矩阵、字符串转分类;可按观测或变量拼接多个对象,支持 inner/outer 连接与 AnnCollection 惰性拼接;支持子集、筛选、转置、复制与视图、重命名、类型转换、排序与质控过滤;可结合 scanpy、muon、scvi-tools 等使用,并通过 AnnLoader 对接 PyTorch。
使用方式:安装命令为 uv pip install anndata,可选依赖为 uv pip install anndata[dev,test,doc]。读取可用 ad.read_h5ad('data.h5ad'),大文件可加 backed='r';写入可用 adata.write_h5ad('output.h5ad');拼接可用 ad.concat([...], axis=0, join='inner', label='batch', keys=[...]);转换可用 adata.strings_to_categoricals()。
适用场景:单细胞 RNA 测序分析、多批次整合、多模态数据、大文件处理、与 scverse 工具集成。
限制与注意:外部数据需按索引对齐;内存不足时可使用备份模式或稀疏矩阵;处理大文件读取较慢时可使用压缩或 zarr。官方文档 https://anndata.readthedocs.io/,GitHub https://github.com/scverse/anndata。