Skip to content

Commit d397543

Browse files
committed
Fixed bad bug with noise
2 parents b364034 + c3832cd commit d397543

File tree

10 files changed

+734
-158
lines changed

10 files changed

+734
-158
lines changed

README.md

Lines changed: 71 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,79 @@
22
[![codecov.io](https://codecov.io/github/cdiener/corda/coverage.svg?branch=master)](https://codecov.io/github/cdiener/corda?branch=master)
33
[![Code Health](https://landscape.io/github/cdiener/corda/master/landscape.svg?style=flat)](https://landscape.io/github/cdiener/corda/master)
44

5-
# corda
5+
# CORDA for Python
66

77
This is a Python implementation based on the paper of Schultz et. al.
88

99
[Reconstruction of Tissue-Specific Metabolic Networks Using CORDA](http://journals.plos.org/ploscompbiol/article/authors?id=10.1371%2Fjournal.pcbi.1004808)
1010

11-
We will try to employ a method similar to FastFVA to recycle the solvers which
12-
should speed up the calculation a bit.
11+
## What does it do?
12+
13+
CORDA, short for Cost Optimization Reaction Dependency Assessment is a method
14+
for the reconstruction of metabolic networks from a given reference model
15+
(a database of all known reactions) and a confidence mapping for reactions.
16+
It allows you to reconstruct metabolic models for tissues, patients or specific
17+
experimental conditions from a set of transcription or proteome measurements.
18+
19+
## How do I install it
20+
21+
CORDA for Python works only for Python 3.4+ and requires
22+
[cobrapy](http://github.com/opencobra/cobrapy) to work. We recommend
23+
installation via the [anaconda or miniconda](https://www.continuum.io/downloads)
24+
distribution. After installing anaconda or miniconda you can install cobrapy
25+
from the bioconda repository
26+
27+
```bash
28+
conda install -c bioconda cobra
29+
```
30+
After that you can install CORDA using the pip from conda
31+
32+
```bash
33+
pip install corda
34+
```
35+
36+
To install the latest development version use
37+
38+
```bash
39+
pip install https://github.com/cdiener/corda/archive/devel.zip
40+
```
41+
42+
After CORDA for Python comes out of its infancy I will prepare a conda package
43+
as well. For now the master branch is usually working and tested whereas all
44+
new stuff is kept in the devel branch.
45+
46+
## What do I need to run it?
47+
48+
CORDA requires a base model including all reactions that could possibly included
49+
such as Recon 1/2 or HMR. You will also need gene expression or proteome data
50+
for our tissue/patient/experimental setting. This data has to be translated into
51+
5 distinct classes: unknown (0), not expressed/present (-1), low confidence (1),
52+
medium confidence (2) and high confidence (3). CORDA will then ensure to include
53+
as many high confidence reactions as possible while minimizing the inclusion
54+
of absent (-1) reactions while maintaining a set of metabolic requirements.
55+
56+
## How do I use it?
57+
58+
A small tutorial is found at https://cdiener.com/corda.
59+
60+
## What's the advantage over other reconstruction algorithms
61+
62+
I would say there are two major advantages:
63+
64+
1. It does not require any commercial solvers, in fact it works fastest with
65+
the free glpk solver that already comes together with cobrapy. For instance
66+
for the small central metabolism model (101 irreversible reactions) included
67+
together with CORDA the reconstruction uses the following times:
68+
69+
- cglpk: 0.02 s
70+
- cplex: 0.30 s
71+
- gurobi: 0.12 s
72+
- mosek: 0.23 s
73+
74+
75+
2. It's fast. CORDA for Python uses a strategy similar to FastFVA, where a previous
76+
solution basis is recycled repeatedly (speed-up of ~4-10 times). A normal
77+
reconstruction for Recon 1 with mCADRE can take several hours. With the original
78+
Matlab implementation of CORDA this takes about 40 minutes and with CORDA
79+
for Python it takes less than 5 minutes. A Recon 2 reconstruction can be
80+
achieved in less than 30 minutes.

corda/__init__.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# __init__.py
2-
#
2+
#
33
# Copyright 2016 Christian Diener <mail[at]cdiener.com>
4-
#
4+
#
55
# MIT license. See LICENSE for more information.
66

7-
from .util import reaction_confidence, safe_revert_reversible
7+
from .util import reaction_confidence, test_model
88
from .corda import CORDA

0 commit comments

Comments
 (0)