Skills

Arboreto

Infers candidate gene regulatory networks from bulk or single-cell expression data...

Install

npx skills add K-Dense-AI/scientific-agent-skills --skill arboreto -g -a claude-code -y
Category
Engineering
Updated
9d ago
License
BSD-3-Clause license
Context cost
Mediumabout 2,499 tokens
Runs scripts
Yes, review before use

What it does

Infers candidate gene regulatory networks from bulk or single-cell expression data using AertsLab Arboreto GRNBoost2 and GENIE3. Use for transcription factor-target association ranking, compatible Dask execution, sparse expression inputs, and network stability checks.

Arboreto

When to use

Use Arboreto to rank candidate regulator-target associations from expression measurements. GRNBoost2 fits stochastic gradient boosting regressions; GENIE3 fits random forests. Each target is predicted from candidate regulators, excluding itself. These are observational predictive associations, not proof of direct binding, activation/repression, or causal regulation.

The latest PyPI release checked is 0.1.6 (2021-02-09). Read the Docs still labels its documentation 0.1.5; the current GitHub source contains fixes that are not in the PyPI wheel. Do not assume a successful unpinned installation can run inference. See compatibility and distribution details.

Installation and compatibility

The following exact stack passed dense and CSC-sparse GRNBoost2, dense GENIE3, custom GBM/RF, and wrapper smoke tests on macOS arm64 with Python 3.11.11:

uv venv --python 3.11 .venv-arboreto
uv pip install --python .venv-arboreto/bin/python \
  'arboreto==0.1.6' 'dask[complete]==2024.7.1' 'distributed==2024.7.1' \
  'numpy==1.26.4' 'pandas==2.2.3' 'scikit-learn==1.5.2' 'scipy==1.13.1'

This is a bounded compatibility recipe, not a claim that current releases of all dependencies work. PyPI Arboreto builds an empty metadata graph that the newer Dask dataframe implementation rejects. For this pinned Dask version, select its legacy dataframe backend before importing Arboreto or dask.dataframe:

import dask
dask.config.set({"dataframe.query-planning": False})
from arboreto.algo import grnboost2, genie3

The bundled wrapper does this for Dask 2024.7.1. Restart an existing notebook kernel if it has already imported the newer dataframe backend. Sparse targets also use .A inside Arboreto 0.1.6; this attribute was removed in SciPy 1.14. Keep the tested SciPy pin for sparse inference. No monkeypatch to site-packages is required by this recipe.

Workflow

Read the whole SKILL.md on GitHub

More in Engineering