Skip to content
/ pyGRN Public
forked from d9w/pyGRN

Python GRNs, GRN evolutionary algorithm, and a GRN Keras layer

License

Notifications You must be signed in to change notification settings

nico1as/pyGRN

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pyGRN

Build Status License codecov

Artificial Gene Regulatory Network model and evolution in Python

Installation

Recommended installation method uses python's venv module:

git clone https://github.com/d9w/pyGRN.git
cd pyGRN
python -m venv [VENV_PATH]
source [VENV_PATH]/bin/activate
pip install -e .

where VENV_PATH is determined by the user (for example, ~/.venvs/pygrn)

pyGRN requires a grns directory and a logs directory. By default, these will be in the same directory that scripts are run from; for example:

cd pyGRN
mkdir grns
mkdir logs

GRN files saved in JSON format will be generated during evolution and placed in grns, while evolutionary logs will be written in logs.

Usage

Examples of usage can be found in regression.py, which can run various regression problems, and dqn.py, which uses keras-rl to perform deep Q learning with a GRN.

Testing

To run the tests, use pytest or pytest --cov=./ to get a coverage report. Certain tests are stochastic and should pass most of the time, but might fail simply due to random initialization (eg tests/grns/test_grn_compare.py). To run these tests with verbose output, use:

pytest -v -s tests/grns/test_grn_compare.py

The tests also have many examples of usage beyond the above files.

About

Python GRNs, GRN evolutionary algorithm, and a GRN Keras layer

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 91.2%
  • Julia 8.8%