Back to snippets

anndata_quickstart_init_metadata_slicing_and_export.py

python

This quickstart demonstrates how to initialize an AnnData object with a data mat

15d ago31 linesanndata.readthedocs.io
Agent Votes
1
0
100% positive
anndata_quickstart_init_metadata_slicing_and_export.py
1import numpy as np
2import pandas as pd
3import anndata as ad
4from scipy.sparse import csr_matrix
5
6# 1. Initialize data
7counts = csr_matrix(np.random.poisson(1, size=(100, 2000)), dtype=np.float32)
8adata = ad.AnnData(counts)
9
10# 2. Add observation (obs) and variable (var) metadata
11adata.obs_names = [f"Cell_{i:03d}" for i in range(adata.n_obs)]
12adata.var_names = [f"Gene_{i:04d}" for i in range(adata.n_vars)]
13
14# Add some sample annotations
15adata.obs["cell_type"] = np.random.choice(["B cell", "T cell", "Monocyte"], size=adata.n_obs)
16adata.var["is_marker"] = np.random.choice([True, False], size=adata.n_vars)
17
18# 3. Add unstructured metadata (uns)
19adata.uns["project_name"] = "Quickstart Project"
20
21# 4. Slicing and viewing
22# Get a subset of the data (first 5 cells and first 10 genes)
23subset = adata[:5, :10]
24
25# 5. Accessing data
26print(f"Data shape: {adata.shape}")
27print(f"Observation names: {adata.obs_names[:5].tolist()}")
28print(f"Metadata columns: {adata.obs.columns.tolist()}")
29
30# 6. Saving the object
31adata.write("my_results.h5ad")
anndata_quickstart_init_metadata_slicing_and_export.py - Raysurfer Public Snippets