anndata.io.sparse_dataset (original) (raw)
Contents
anndata.io.sparse_dataset#
anndata.io.sparse_dataset(group)[source]#
Generates a backed mode-compatible sparse dataset class.
Parameters:
The backing group store.
Return type:
Returns:
Sparse dataset class.
Example
First we’ll need a stored dataset:
import scanpy as sc import h5py from anndata.io import sparse_dataset from anndata.io import read_elem sc.datasets.pbmc68k_reduced().raw.to_adata().write_h5ad("pbmc.h5ad")
Initialize a sparse dataset from storage
f = h5py.File("pbmc.h5ad") X = sparse_dataset(f["X"]) X CSRDataset: backend hdf5, shape (700, 765), data_dtype float32
Indexing returns sparse matrices
X[100:200] <...sparse matrix of...float32...with 25003 stored elements...>
These can also be used inside of an AnnData object, no need for backed mode
from anndata import AnnData adata = AnnData( ... layers={"backed": X}, obs=read_elem(f["obs"]), var=read_elem(f["var"]) ... ) adata.layers["backed"] CSRDataset: backend hdf5, shape (700, 765), data_dtype float32
Indexing access (i.e., from views) brings selection into memory
adata[adata.obs["bulk_labels"] == "CD56+ NK"].layers[ ... "backed" ... ] <...sparse matrix of...float32...with 7340 stored elements...>