SkillAgentSearch skills...

Annsel

A user-friendly library that brings familiar DataFrame-style operations to AnnData objects with a simple and expressive API.

Install / Use

/learn @srivarra/Annsel
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

annsel

<div align="center">

| | | | :-----------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | | Status | [Build][link-build] [Tests][link-test] [Documentation][link-docs] [codecov][link-codecov] [pre-commit][link-pre-commit] | | Meta | [Hatch project][link-hatch] [Ruff][link-ruff] [uv][link-uv] [License][link-license] [gitmoji][link-gitmoji] | | Package | [PyPI][link-pypi] [PyPI][link-pypi] | | Ecosystem | [scverse][link-scverse] | | | |

</div>

Annsel is a user-friendly library that brings familiar dataframe-style operations to AnnData objects.

It's built on the [narwhals][link-narwhals] compatibility layer for dataframes.

Take a look at the GitHub Projects board for features and future plans: [Annsel Features][link-gh-project]

<!-- done -->

Getting started

Please refer to the [documentation][link-docs], in particular, the [API documentation][link-api].

There's also a brief tutorial on how to use all the features of annsel: [All of Annsel][link-tutorial].

Installation

You need to have Python 3.10 or newer installed on your system. If you don't have Python installed, we recommend installing [uv][link-uv]. There are several ways to install annsel:

  1. Install the most recent release:

    With uv:

    uv add annsel
    

    With pip:

    pip install annsel
    
  2. Install the latest development version:

    With uv:

    uv add git+https://github.com/srivarra/annsel
    

    With pip:

    pip install git+https://github.com/srivarra/annsel.git@main
    

Examples

annsel comes with a small dataset from Cell X Gene to help you get familiar with the API.

import annsel as an

adata = an.datasets.leukemic_bone_marrow_dataset()

The dataset looks like this:

AnnData object with n_obs × n_vars = 31586 × 458
    obs: 'Cluster_ID', 'donor_id', 'Sample_Tag', 'Cell_label', 'is_primary_data', 'organism_ontology_term_id', 'self_reported_ethnicity_ontology_term_id', 'assay_ontology_term_id', 'tissue_ontology_term_id', 'Genotype', 'development_stage_ontology_term_id', 'sex_ontology_term_id', 'disease_ontology_term_id', 'cell_type_ontology_term_id', 'suspension_type', 'tissue_type', 'cell_type', 'assay', 'disease', 'organism', 'sex', 'tissue', 'self_reported_ethnicity', 'development_stage', 'observation_joinid'
    var: 'vst.mean', 'vst.variance', 'vst.vari

Related Skills

View on GitHub
GitHub Stars16
CategoryDevelopment
Updated2mo ago
Forks2

Languages

Python

Security Score

95/100

Audited on Feb 4, 2026

No findings