This package implements a series of methods used to study control, canalization and redundancy in Boolean Networks.
** Latest stable release **
- from PYPI
pip install cana
** Latest development release on GitHub **
Pull and install the code directly from the github project page.
pip install git+https://github.com/CASCI-lab/CANA
Please note that CANA uses Cython. For it to compile you may need to install the following:
pip install Cython
The full documentation can be found at: casci-lab.github.io/CANA/
-
A.J. Gates, R.B. Correia, X. Wang, L.M. Rocha [2021]. "The effective graph reveals redundancy, canalization, and control pathways in biochemical regulation and signaling". Proceedings of the National Academy of Sciences (PNAS). 118(12). doi: 10.1073/pnas.20225981186
-
R.B. Correia, A.J. Gates, X. Wang, L.M. Rocha [2018]. "CANA: A python package for quantifying control and canalization in Boolean Networks". Frontiers in Physiology. 9: 1046. doi: 10.3389/fphys.2018.01046
-
A. Gates and L.M. Rocha. [2016] "Control of complex networks requires both structure and dynamics." Scientific Reports 6, 24456. doi: 10.1038/srep24456.
-
A. Gates and L.M. Rocha [2014]. "Structure and dynamics affect the controllability of complex systems: a Preliminary Study". Artificial Life 14: Proceedings of the Fourteenth International Conference on the Synthesis and Simulation of Living Systems: 429-430, MIT Press.
-
M. Marques-Pita and L.M. Rocha [2013]. "Canalization and control in automata networks: body segmentation in Drosophila Melanogaster". PLoS ONE, 8(3): e55946. doi:10.1371/journal.pone.0055946.
CANA
was originally written by Rion Brattig Correia and Alexander Gates, and has been developed
with the help of many others. Thanks to everyone who has improved CANA
by contributing code, bug reports (and fixes), documentation, and input on design, and features.
Original Authors
- Rion Brattig Correia, github: rionbr
- Alexander Gates, github: ajgates42
Contributors
Optionally, add your desired name and include a few relevant links. The order is an attempt at historical ordering.
Those who have contributed to CANA
have received support throughout the years from a variety of sources. We list them below.
If you have provided support to CANA
and a support acknowledgment does not appear below, please help us remedy the situation, and similarly, please let us know if you'd like something modified or corrected.
Research Groups
CANA
was developed with support from the following:
- CASCI, Indiana University, Bloomington, IN; PI: Luis M. Rocha
- CAPES Foundation, Ministry of Education of Brazil, Brasília, Brazil; Rion B. Correia.
Pull requests are welcome :) Please get in touch with one us beforehand: rionbr(at)gmail(dot)com
or ajgates42(at)gmail(dot)com
.
** TODOs**
- Parallelize control methods;
- Parallelize canalization methods;
- Generating ensembles of dynamics from structural motifs;
- Expand on easy-to-replicate tutorials;
Run nosetests -v to perform tests and diagnoses on functions.
v0.1
- Canalization methods ported to Cython
v0.0.4
- Pep8 and python3
- Pinned controllability methods
v0.0.3
- Bugfixes
v0.0.2
- Networkx 2.1 compatibility
- Inclusion of tutorials
- Derrida curve
v.0.0.1
- Control (FVS, MDS, CSTG) methods.
- Canalization methods.
- Implementation ported to public package.