|
2 | 2 | [](https://codecov.io/github/cdiener/corda?branch=master)
|
3 | 3 | [](https://landscape.io/github/cdiener/corda/master)
|
4 | 4 |
|
5 |
| -# corda |
| 5 | +# CORDA for Python |
6 | 6 |
|
7 | 7 | This is a Python implementation based on the paper of Schultz et. al.
|
8 | 8 |
|
9 | 9 | [Reconstruction of Tissue-Specific Metabolic Networks Using CORDA](http://journals.plos.org/ploscompbiol/article/authors?id=10.1371%2Fjournal.pcbi.1004808)
|
10 | 10 |
|
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. |
0 commit comments