Systems Biology for Python
==========================

The Systems Biology extension module for Python contains the routines that were
used to calculate a gene regulatory network, given in terms of differential
equations. The algorithm is described to some degree in

De Hoon, M.; Imoto, S.; Kobayashi, K.; Ogasawara, N.; Miyano, S.;
Inferring Gene Regulatory Networks from Time-Ordered Gene Expression Data of
Bacillus Subtilis Using Differential Equations".
Pacific Symposium on Biocomputing, 8: pp. 17--28 (2003).

However, the full algorithm is described in a paper recently submitted to
the Bioinformatics journal.


INSTALLATION
============

See the INSTALL file in this directory.


MANUAL
======

No manual yet, except for the instructions in this file.
The Systems Biology module contains only one function that is callable from
Python. This funcion, findnetwork, is defined as

def findnetwork (time, data, mask=None, criterion='AIC', maxnparents=None):

where time is a vector with ndata elements specifying the time points at which
the measurements were made, data is an ngenes x ndata matrix containing the
gene expression ratios, mask is an ngenes x ndata matrix containing 1's and 0's
to indicate which elements in data are present (1) or missing (0), criterion is
the criterion to be used to determine the number of parents, and maxnparents is
the maximum number of parents a gene can have in the network. The maximum
number of parents should be less than ndata-1. Criterion can be 'AIC', 'BIC',
or 'ML' for Akaike's Information Criterion, the Bayesian Information Criterion,
or the constrained Maximum Likelihood method. For the AIC and BIC, the number of
parents is equal to or less than maxnparents; for the constrained Maximum
Likelihood method, the number of parents will be exactly equal to maxnparents.

This function returns the tuple
(parents, values, score),
where parents is a list with ngenes elements, where element i is a list
containing the indeces of the parent genes in the graph for gene i, values has
the same shape as graph, and contains the regulatory strength for the gene to
be affected by each parent, and score is the AIC, BIC, or likelihood score for
the network.


CONTACT
=======

Michiel de Hoon, University of Tokyo, Human Genome Center
mdehoon@ims.u-tokyo.ac.jp

