Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mouse 1.0 #4

Merged
merged 14 commits into from
Oct 24, 2020
Merged
Show file tree
Hide file tree
Changes from 12 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
72 changes: 47 additions & 25 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,55 +1,77 @@
> Please read the paragraph below and delete it:
This is the `README.md` template provided by [standard-GEM](https://github.com/SysBioChalmers/standard-GEM).
Blanks are indicated by `{{ }}`. Below are examples of blanks used throughout this file:
`{{organization or username}}` is the organization name or username for this GitHub repository, eg. `SysBioChalmers`
`{{repository name}}` is the name of this GitHub repository, eg. `yeast-GEM`

# Mouse-GEM: The generic genome-scale metabolic model of _Mus musculus_

## {{repository name}}: {{repository description}}

[![Version](https://badge.fury.io/gh/{{organization or username}}%2F{{repository name}}.svg)](https://badge.fury.io/gh/sysbiochalmers/yeast-gem)
[![Version](https://badge.fury.io/gh/{{organization or username}}%2F{{repository name}}.svg)](https://badge.fury.io/gh/sysbiochalmers/mouse-gem)
[![Zenodo](https://zenodo.org/badge/{{Zenodo ID}}.svg)](https://zenodo.org/badge/latestdoi/{{Zenodo ID}})
[![Gitter chat](https://badges.gitter.im/{{organization or username}}/{{repository name}}.svg)](https://gitter.im/{{organization or username}}/{{repository name}})


#### Brief Model Description

{{ fill in a short description or the paper abstract }}
This repository contains the latest version of Mouse-GEM, a mouse genome-scale metabolic model.


#### Citation

{{ provide the citation once available, for example:
> Lu, H., Li, F., Sánchez, B.J. et al (2019). A consensus S. cerevisiae metabolic model Yeast8 and its ecosystem for comprehensively probing cellular metabolism. Nat Commun 10, 3586 [doi:10.1038/s41467-019-11581-3](https://doi.org/10.1038/s41467-019-11581-3)

}}

Manuscript under preparation

#### Model Keywords

**Utilisation:** experimental data reconstruction, multi-omics integrative analysis, _in silico_ strain design, model template
**Utilisation:** multi-omics integrative analysis, predictive simulation
**Field:** metabolic-network reconstruction
**Type of Model:** reconstruction, curated
**Model Source:** YeastMetabolicNetwork
**Omic Source:** genomics, metabolomics
**Taxonomy:** _Saccharomyces cerevisiae_
**Model source:** [Human-GEM](https://doi.org/10.1126/scisignal.aaz1482)
**Omic source:** genomics; metabolomics
**Taxonomic name:** _Mus musculus_
**Taxonomy ID:** [10090](https://identifiers.org/taxonomy:10090)
**Genome ID:** [GCA_000001635.8](https://identifiers.org/insdc.gca:GCA_000001635.8)
**Metabolic System:** general metabolism
**Tissue:**
**Bioreactor:**
**Cell type:**
**Cell line:**
**Strain:** S288C
**Condition:** aerobic, glucose-limited, defined media
**Condition:** generic metabolism


### Model Overview

|Taxonomy | Template Model | Reactions | Metabolites| Genes |
| ------------- |:-------------:|:-------------:|:-------------:|:-----:|
|_Mus musculus_ | Human-GEM | | | |


## Installation

### Required Software
* A functional MATLAB installation (MATLAB 7.3 and higher).
* The [RAVEN toolbox](https://github.com/SysBioChalmers/RAVEN).
* The [COBRA toolbox](https://github.com/opencobra/cobratoolbox) (not necessary for most functionality).


### Dependencies - Recommended Software
* The libSBML MATLAB API (version [5.13.0](https://sourceforge.net/projects/sbml/files/libsbml/5.13.0/stable/MATLAB%20interface/) is recommended).
* [Gurobi Optimizer](http://www.gurobi.com/registration/download-reg) for any simulations.


### Installation Instructions
* Clone the [master branch](https://github.com/SysBioChalmers/Human-GEM/tree/master) of this repository, or [download the latest release](https://github.com/SysBioChalmers/Human-GEM/releases/latest).
* Add the directory to your MATLAB path (instructions [here](https://se.mathworks.com/help/matlab/ref/addpath.html?requestedDomain=www.mathworks.com)).


## Usage

#### Loading/saving the model

### Installation
`Mouse-GEM.mat` (Recommended if on `master` branch)
* Load and save using the built-in MATLAB `load()` and `save()` functions.

{{ Be mindful of users who do not have a typical background - provide a clear overview of the required software. Also, there might be different requirements for users and collaborators. }}
`Mouse-GEM.xml` (SBML format)
* Load using the `importModel.m` function (from [RAVEN Toolbox](https://github.com/SysBioChalmers/RAVEN))
* Save using the `exportModel.m` function (from [RAVEN Toolbox](https://github.com/SysBioChalmers/RAVEN))


### Usage
## Websites

{{ Describe how to load and save the model. }}
- [Metabolic Atlas](https://metabolicatlas.org/) enables visualization and exploration of Mouse-GEM content.


### Contributing
Expand Down
77 changes: 77 additions & 0 deletions code/masterScriptMouseGEM.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
%
% FILE NAME: masterScriptMouseGEM.m
%
%
% PURPOSE: This script is for reconstruction of the Mouse-GEM, by using
% the Human-GEM as template and taking in account mouse-specific
% pathways/reactions.
%
%


%% Load Human-GEM as template
load('Human-GEM.mat');


% convert gene identifiers from Ensembl ids to gene symbols
[grRules,genes,rxnGeneMat] = translateGrRules(ihuman.grRules,'Name','ENSG');
ihuman.grRules = grRules;
ihuman.genes = genes;
ihuman.rxnGeneMat = rxnGeneMat;



%% Use MA reactions identifiers

% load reaction annotaiton files
rxnAssoc = jsondecode(fileread('humanGEMRxnAssoc.JSON'));

%replace reaction identifiers with MA ids if available
ind = getNonEmptyList(rxnAssoc.rxnMAID);
ihuman.rxns(ind) = rxnAssoc.rxnMAID(ind);



%% Generate Mouse-GEM using Human-GEM as template

% get ortholog pairs from human to mouse
mouseOrthologPairs = extractAllianceGenomeOrthologs('human2MouseOrthologs.json');
mouseGEM = getModelFromOrthology(ihuman, mouseOrthologPairs);
mouseGEM.id = 'Mouse-GEM';



%% Incorporate mouse-specific reactions

% get metabolic networks based on the KEGG annoation using RAVEN function
KEGG_human=getKEGGModelForOrganism('hsa');
KEGG_mouse=getKEGGModelForOrganism('mmu');

% remove reactions shared with human
MouseSpecificRxns=setdiff(KEGG_mouse.rxns,KEGG_human.rxns);

% remove reactions included in Human-GEM
MouseSpecificRxns=setdiff(MouseSpecificRxns,rxnAssoc.rxnKEGGID);

% get species-specific network for manual inspection and then
% organize species-specific pathways into two tsv files:
mouseSpecificNetwork=removeReactions(KEGG_mouse, setdiff(KEGG_mouse.rxns,MouseSpecificRxns), true, true, true);

% "mouseSpecificMets.tsv" contains new metabolites
metsToAdd = importTsvFile('mouseSpecificMets.tsv');

% "mouseSpecificRxns.tsv" contains new reactions
rxnsToAdd = importTsvFile('mouseSpecificRxns.tsv');
rxnsToAdd.subSystems = cellfun(@(s) {{s}}, rxnsToAdd.subSystems);

% integrate mouse-specific metabolic network
[mouseGEM, modelChanges] = addMetabolicNetwork(mouseGEM, rxnsToAdd, metsToAdd);



%% Save the model into mat, yml, and xml

save('../model/Mouse-GEM.mat', 'mouseGEM');
writeHumanYaml(mouseGEM, '../model/Mouse-GEM.yml');
exportModel(mouseGEM, '../model/Mouse-GEM.xml');

Loading