BoNesisTools provides Python-implemented toolkits for upstream and downstream analyses around the BoNesis ecosystem.
The package provides:
- Boolean algebra and partial Boolean abstractions
- Boolean network manipulation and analysis
- signed influence graph utilities
- GRN-informed Boolean predecessor inference
- single-cell and multimodal analysis helpers
- biological database interfaces
import bonesistools as btBoNesisTools exposes three main namespaces:
bt.omics— single-cell and multimodal annotated data toolsbt.logic— Boolean modelling and graph utilitiesbt.resources— biological database interfaces
bt.omics is inspired by Scanpy while providing additional and complementary features for single-cell analyses.
Submodules:
-
preprocessing:
bt.omics.pp- expression transformations, feature selection, filtering and metadata utilities
-
tools:
bt.omics.tl- embeddings, neighborhood graphs, clustering and differential analysis
-
input/output:
bt.omics.io- registered single-cell example datasets, GEO import and matrix export helpers
-
plotting:
bt.omics.pl- visualization helpers for embeddings, trajectories, distributions and summaries
Example:
bt.omics.io.available()
bt.omics.io.info("pbmc3k")
adata = bt.omics.io.load("pbmc3k")
adata = bt.omics.io.load("nestorowa")
bt.omics.io.clear("pbmc3k")bt.logic provides utilities for Boolean modelling, logical abstractions and signed regulatory graphs.
Submodules:
-
Boolean algebra:
bt.logic.ba- logical objects, configuration sets and transformations for Boolean-state reasoning
-
Boolean network:
bt.logic.bn- Boolean model representation, conversion, analysis and exchange
-
influence graph:
bt.logic.ig- signed regulatory graph construction, comparison, analysis and display
-
input/output:
bt.logic.io- BNet, GINML, ZGINML, hypercube and influence-graph readers
Example:
bn = bt.logic.io.read_bnet("model.bnet")
graph = bn.to_influence_graph()
graph.show()bt.resources provides lightweight interfaces and utilities for biological
external resources.
Submodules:
-
NCBI:
bt.resources.ncbi- gene identifier, synonym and annotation utilities
-
OmniPath:
bt.resources.omnipath- regulatory interaction datasets
-
HCOP:
bt.resources.hcop- orthology resources
Example:
gene_identifiers = bt.resources.ncbi.identifiers()
grn = bt.resources.omnipath.collectri(
organism="mouse",
identifiers=gene_identifiers,
)Install the latest release:
pip install bonesistoolsInstall the omics dependencies:
pip install "bonesistools[omics]"Install all optional dependencies:
pip install "bonesistools[all]"Install the development version:
git clone https://github.com/bnediction/bonesistools.git
cd bonesistools
pip install -e ".[all]"or directly:
pip install git+https://github.com/bnediction/bonesistools.gitPlease report bugs or ask questions here:
https://github.com/bnediction/bonesistools/issues
This package is distributed under the CeCILL v2.1 free software license (GNU GPL compatible).
This package also includes third-party data resources derived from the
NCBI Gene database (gene_info). NCBI places no restrictions on the
use or redistribution of these data: https://www.ncbi.nlm.nih.gov/home/about/policies/