Skip to content

bnediction/bonesistools

Repository files navigation

tests PyPI python license

BoNesisTools

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

Usage

import bonesistools as bt

BoNesisTools exposes four main namespaces:

  • bt.sct — single-cell and multimodal annotated data tools
  • bt.bpy — Boolean modelling and graph utilities
  • bt.dbs — biological database interfaces
  • bt.grn — deprecated alias for bt.bpy.ig

Single-cell tools

bt.sct follows a Scanpy-like API while providing additional and complementary features for single-cell analyses.

Submodules:

  • preprocessing: bt.sct.pp

    • gene name harmonization
    • metadata transfer utilities
    • lightweight preprocessing helpers
  • tools: bt.sct.tl

    • K-nearest-neighbor and shared-neighbor graph utilities
    • marker and log-fold-change analysis
    • regression and matrix conversion utilities
  • plotting: bt.sct.pl

    • scatter, density and graph visualizations
    • boxplot and embedding utilities
  • datasets: bt.sct.datasets

    • packaged reference datasets

Boolean modelling utilities

bt.bpy provides utilities for Boolean modelling, logical abstractions and signed regulatory graphs.

Submodules:

  • Boolean algebra: bt.bpy.ba

    • partial Boolean abstractions and hypercube representations
    • Boolean differential and predecessor inference utilities
  • Boolean network: bt.bpy.bn

    • Boolean network manipulation and analysis
    • fixed-point computation
    • .bnet import/export
  • influence graph: bt.bpy.ig

    • signed regulatory influence graphs
    • feedback circuit and SCC analysis
    • signed interaction scoring from bounded walks
    • graph compression and visualization utilities

Example:

bn = bt.bpy.bn.BooleanNetwork(
    {
        "A": "B & ~C",
        "B": 1,
        "C": 0,
    }
)

graph = bn.to_influence_graph()

graph.show()

Biological external resources

bt.dbs provides lightweight interfaces and utilities for biological external resources.

Submodules:

  • NCBI: bt.dbs.ncbi

    • gene synonym harmonization
    • gene annotation utilities
  • OmniPath: bt.dbs.omnipath

    • DoRothEA transcription factor interactions
    • CollecTRI regulatory interaction networks

Example:

genesyn = bt.dbs.ncbi.GeneSynonyms()

grn = bt.dbs.omnipath.load_collectri_grn(
    organism="mouse",
    genesyn=genesyn,
)

Installation

Install the latest release:

pip install bonesistools

Install the single-cell dependencies:

pip install "bonesistools[sctools]"

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.git

Bugs

Please report bugs or ask questions here:

https://github.com/bnediction/bonesistools/issues


License

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/

About

Python package providing bioinformatics tools for upstream and downstream analysis of the BoNesis framework

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages