RaMP 2.0 is now released and includes an updated backend database with expanded annotations for >150,000 metabolites and ~14,000 genes/proteins. Annotations include biological pathways, chemical classes and structures (for metabolites only), ontologies (metabolites only), and enzyme-metabolite relationships based on chemical reactions. Annotations are drawn from HMDB, KEGG (through HMDB), Lipid-MAPS, WikiPathways, Reactome, and CheBI.
This R package includes functions that allow users to interface with this up-do-date and comprehensive resource. Functionalities include 1) simple and batch queries for pathways, ontologies, chemical annotations, and reaction-level gene-metabolite relationships; 2) pathway and chemical enrichment analyses.
The code used to build the backend RaMP database is freely available at https://github.com/ncats/RaMP-Backend.
Please click here to view our latest manuscript.
Our new revamped web interface can be found at https://rampdb.nih.gov/. The code is publicly available at https://github.com/ncats/RaMP-Client/.
API access is now available here.
The purpose of RaMP is to provide a publicly available database that integrates metabolite and gene/protein biological, chemical and other from multiple sources. The database structure and data is available as a MySQL dump file and it can be directly downloaded from Figshare for integration into any tool. Please see the Installation Instructions for the database download link. Please note that this project is in continuous development and we appreciated any feedback.
For any questions or feedback, please send us a note at NCATSRaMP@mail.nih.gov.
If you find a bug, please submit an issue through this GitHub repo.
The R packages and associated app perform the following queries:
1. Retrieve analytes (genes, proteins, metabolites) given pathway(s) as input.
2. Retrieve pathway annotations given analytes as input.
3. Retrieve chemical annotations/structures given metabolites as input.
4. Retrieve analytes involved in the same reaction (e.g. enzymes catalyzing reactions involving input metabolites)
5. Retrieve ontologies (e.g. biospecimen location, disease, etc.) given input meteabolites.
The following analyses are also supported:
1. Multi-omic pathway enrichment analysis
2. Chemical enrichment analyses
Last date of dump file update: 03/02/2023
Detailed instructions for installing RaMP locally are below. We've also put together a vignette to get you started on the analyses. Click here for vignette.
If you use RaMP-DB, please cite the following work:
Braisted J, Patt A, Tindall C, Sheils T, Neyra J, Spencer K, Eicher T, Mathé EA. RaMP-DB 2.0: a renovated knowledgebase for deriving biological and chemical insight from metabolites, proteins, and genes. Bioinformatics. 2023 Jan 1;39(1):btac726. doi: 10.1093/bioinformatics/btac726. PMID: 36373969; PMCID: PMC9825745. To access, click here
Zhang, B., et al., RaMP: A Comprehensive Relational Database of Metabolomics Pathways for Pathway Enrichment Analysis of Genes and Metabolites. Metabolites, 2018. 8(1). PMID: 29470400; PMCID: PMC5876005; DOI: 10.3390/metabo8010016 To access, click here
In order to use this R package locally, you will need the following:
- The R code under this repo
- The mysql dump file that contains the RaMP database. Download here.
If you would like to know how to build RaMP database from scratch, please check another GitHub site at RaMP-BackEnd
RaMP requires that MySQL and the RaMP database be set up on the machine that you will be running the R package from. To download MySQL, you can go to the MySQL Downloads page
When installing, you will be prompted to create a password for the user "root", or it will create one automatically for you. Importantly, remember your MySQL password! You will need to get into mysql and to pass it as an argument to the RaMP R shiny web application.
If you want to reset your password , you can go to [MySQL References 5.7 - How to reset root password ] (https://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html)
Please note that you will need administrator privileges for this step..
If you are using a Mac, we recommend using brew to install MySQL. Here's a good tutorial: https://www.novicedev.com/blog/how-install-mysql-macos-homebrew.
Once your MySQL environment is in place, creating the RaMP database locally is trivial. First, launch MySQL and create the database:
> mysql -u root -p
mysql> create database ramp;
mysql> exit;
Here, we are naming the database "ramp" but you can use any name you'd like. It is worth noting though that the R package assumes that the name of the database is "ramp" by default. So if you change the name, remember to pass that name as arguments in the R package functions.
Second, download and unzip the latest RaMP database. Download here.
Third, populate the named database with the mysql dump file Supply the path and file name to the unzipped sql file that you've downloaded.
> mysql -u root -p ramp < /your/file/path/here/ramp_<current_version_id_here>.sql
You're done!
Your "ramp" database should contain the following 12 tables:
- analyte
- analyehasontology
- analytehaspathway
- analytesynonym
- catalyzed
- chem_props
- db_version
- metabolite_class
- ontology
- pathway
- source
- version_info
If you want to explore this in MySQL, you can try:
mysql -u root
use ramp;
show tables;
select * from source limit 4;
select * from source where commonName = "creatine riboside";
select distinct(HMDBOntologyType) from ontology;
You can install this package directly from GitHub using the install_github() function available through the devtools package. In the R Console, type the following:
# Locally install RaMP
install.packages("devtools")
library(devtools)
install_github("ncats/RAMP-DB")
# Load the package
library(RaMP)
# Set up your connection to the RaMP2.0 database:
pkg.globals <- setConnectionToRaMP(dbname="ramp",username="root",conpass="",host = "localhost")
Note that prior to using RaMP functions, users much establish required parameters to appropriately connect to your local database (if you are not using the web app). This step is simplified by a single function call (last line in the above code snippet).
If the username is different then root, then specify the username in the "username" parameter. Similarly, if the name of the database is different than "ramp2", then specify the "dbname" parameter.
If you reinstall the latest version of the RaMP package, be sure to also install the latest version of the MySQL RaMP dump file.
Also, when gene or metabolite ids are input for queries, IDs should be prepended with their database of origin, e.g. kegg:C02712, hmdb:HMDB04824, or CAS:2566-39-4. The list of metabolite or gene/protien IDs may be of mixed source. Remember to include the colon in the prefix. The id prefixes that are currently included in RaMP are:
Analyte Type | ID Prefix Types |
---|---|
Metabolites | hmdb, pubchem, chebi, chemspider, kegg, CAS, LIPIDMAPS, swisslipids, lipidbank, wikidata, plantfa, kegg_glycan |
Genes/Proteins | ensembl, entrez, gene_symbol, uniprot, hmdb, ncbiprotein, EN, wikidata, chebi |
To query the ID types supports in MySQL:
select distinct(IDtype) from source where geneOrCompound ="compound";
mysql> select distinct(IDtype) from source where geneOrCompound ="gene";
- John Braisted - john.braisted@nih.gov
- Tara Eicher - tara.eicher@nih.gov
- Ewy Mathé - ewy.mathe@nih.gov
- Andrew Patt - andy.patt@nih.gov
- Tim Sheils - tim.sheils@nih.gov
- Kyle Spencer - kyle.spencer@nih.gov