drvi.utils.plotting.make_balanced_subsample

drvi.utils.plotting.make_balanced_subsample#

drvi.utils.plotting.make_balanced_subsample(adata, col, min_count=10)[source]#

Create a balanced subsample of AnnData based on a categorical column.

This function creates a balanced subsample by sampling an equal number of cells from each category in the specified column, ensuring balanced representation.

Parameters:
  • adata (AnnData) – Annotated data object to subsample.

  • col (str) – Column name in adata.obs containing categorical labels for balancing.

  • min_count (int (default: 10)) – Minimum number of samples per category. If a category has fewer samples than this, sampling will be done with replacement.

Return type:

AnnData

Returns:

AnnData Balanced subsample of the input AnnData object.

Notes

The function uses a fixed random state (0) for reproducible results. If a category has fewer samples than min_count, sampling is done with replacement.