Skip to main content

Analysis of Boolean gene networks

Project description

Boolean Gene

A Python package for analyzing Boolean gene networks.

What are Boolean gene networks?

Interactions between genes and their regulators (such as transcription factors or RNA-binding proteins) provide the machinery for cells to respond to environmental stimuli by adopting an appropriate transcriptional response. The set of interconnected gene-regulator interactions – known as a gene regulatory network (GRN) – can be modeled to predict the cellular response to a signal. However, GRNs arising in nature are highly complex systems with dozens to hundreds of genetic regulators and effectors, making their full characterization computationally intractable. To nonetheless study their behavior, GRNs can be modeled as Boolean networks: each gene is represented by a node whose on/off state is updated at every time step according to a Boolean function of the gene’s regulators. A straightforward example is Elowitz and Leibler’s repressilator (1), where three genes are connected by NOT gates in a unidirectional loop. This GRN is designed to oscillate, and the Boolean model captures this behavior. For instance, when loaded with an initial condition where only one gene is on, the “on” state rotates unidirectionally through the loop (Fig. 1).


Figure 1: Boolean model of the repressilator captures its oscillatory behavior. Genes are represented by nodes, and repressing interactions are represented by NOT gates.

What does this software do?

This package allows users to perform stability analysis and measure topological features (e.g., loops or clusters) of an input Boolean gene network. The input can be either a user-defined network or a pre-defined network from the CellCollective database (2). A strength of this package is its ability to generate randomized networks that nevertheless preserve the logical structure of the input network, including the in-degrees, out-degrees, and Boolean function of each gene. This feature is integrated into the stability analysis pipeline such that users can compare the input network to large numbers of random networks that are logically identical but topologically different from the input. This analysis allows for the characterization of topological modifiers of GRN stability, which can have applications in synthetic biology, systems biology, and biomedical drug discovery.

Installation

pip install boolean_gene

Usage

This package contains functions for running stability analysis, counting a network's loops, and measuring the clustering coefficient of each gene in a network (use boolean_gene -h to view all available functions). Each of these functions generates a user-defined number of randomized networks that preserve the Boolean functions of the original input network, allowing for comparison to a null model.

For instance, to run the stability analysis function:

boolean_gene run_stability_analysis -i "/path/to/input.txt" -o "/path/to/output/directory" 

where the input .txt file should define each gene's associated Boolean function using AND, OR, and NOT connectives. For example inputs, see the text files in the sample_inputs directory, which were downloaded from the Cell Collective database (2).

Citations

  1. Elowitz, M., Leibler, S. A synthetic oscillatory network of transcriptional regulators. Nature 403, 335–338 (2000).
  2. Helikar, T., Kowal, B., McClenathan, S. et al. The Cell Collective: Toward an open and collaborative approach to systems biology. BMC Syst Biol 6, 96 (2012).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

booleangene-0.0.2.tar.gz (19.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

booleangene-0.0.2-py3-none-any.whl (21.6 kB view details)

Uploaded Python 3

File details

Details for the file booleangene-0.0.2.tar.gz.

File metadata

  • Download URL: booleangene-0.0.2.tar.gz
  • Upload date:
  • Size: 19.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for booleangene-0.0.2.tar.gz
Algorithm Hash digest
SHA256 7925cd1458cc23372c894b5bbcd3371d1c5767e9d5a298cf06257b5d397fd842
MD5 5eb0b8f0d1988ec904710c0abc33ca70
BLAKE2b-256 bb08273c91c4ef23b5c322ebbea46788905c1ac60cedb7b9077b7d6b13c2207e

See more details on using hashes here.

File details

Details for the file booleangene-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: booleangene-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 21.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for booleangene-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 98667eef1b50bb20e44a5dc7ae96922ef06c3376955f942158d8438f50506c41
MD5 ae471ba6e9ec6fbce5407f77bdd8e8c8
BLAKE2b-256 28230313e30a87db024cd667dfaf5f298995bc33264487e6057f8ee9ebe4d640

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page