DRUGraph
A network inference method for largescale unsupervised identification of novel drugdrug interactions.
Description
The program takes as input a file containing a list of drugdrug interactions with the following format:
d1 d2 0
d1 d3 1
d1 d4 1
...
This corresponds to a situation in which drug 1 (d1) and drug 2 (d2) have an interaction of type 0, d1 and d3 have an interaction of type 1, and so on. Interaction types must be integer between 0 and K1, where K is the number of interaction types.
The program outputs a file predictions.dat with the following format:
d2 d3 0.50 0.20 0.30
d2 d4 0.15 0.55 0.30
...
This corresponds to a situation with three types of interactions (K=3), and indicates that: drugs 2 and 3 have an interaction of type 0 with probability 0.50, of type 1 with probability 0.20, and of type 2 with probability 0.30; drugs 2 and 4 have an interaction of type 0 with probability 0.15, of type 1 with probability 0.55, and of type 2 with probability 0.30; and so on.
Command line parameters
To run the program, type the following in the command line:
drugraph K net_file niterations seed
where:

K is the number of types of interactions (for example, if interactions can be antagonistic, additive or synergistic, then K=3).

net_file is the file containing the known interactions, and has the format described above.

niterations is the number of sampling iterations carried out by the Metropolis algorithm.

seed is the seed for the random number generator, and can be any positive integer.
Running output
After starting the program, the algorithm proceeds by: (i) determining a convenient thinning step; (ii) thermalizing the sampler; (iii) sampling. Please, be aware that each of these processes can take a long time (even days) in networks larger than a few hundreds of drugs.