Skip to content

nsarang/motif_bionet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Identifying Motifs in Biological Networks

Overview

This repo is an implementation of the paper Identification of large disjoint motifs in biological networks.
Biological networks provide great potential to understand how cells function. Network motifs, common topological patterns, are critical structures through which biological networks operate. Finding motifs in biological networks remains to be a computationally challenging task as the size of the motif and the underlying network grow. Often, different copies of a given motif topology in a network share nodes or edges. Counting such overlapping copies introduces significant problems in motif identification.

Citation

Elhesha R, Kahveci T. Identification of large disjoint motifs in biological networks. BMC Bioinformatics. 2016;17(1):408.

Installation

git clone  https://github.com/nsarang/motif_bionet.git
cd motif_bionet
make

Usage

The input file is the representation of a biological network in the format of its edge list. The output is a TXT file, summarizing results. A JSON is also created for visualization purposes.

motifnet <inp_path> <out_path> <alpha> <mu>
    <inp_path>    Path to the biological network 
    <out_path>    Path to the output file. A JSON file is also created  
    <alpha>       Number of nodes of the motif  
    <mu>          Cut-off of the motif frequency

Example:
motifnet data/cje.txt output/motif 7 5

Dataset

A real and synthetic dataset is provided by the Bioinformatics Lab @ UF

Visualization

An interactive visualization tool is provided using d3.js library. Here the steps to make it work:

  1. Put the JSON file in the output directory by the name motif.json
  2. Start the python HTTP server. python output/server.py
  3. Go to the localhost:9999 address using your favorite browser (Chrome recommended)

Screenshots

Visualization on default settings:

Changing node radius and center gravity:

Using FishEye distortion and highlighting:

A bigger dataset: