README.md

EpiGraphDB R package epigraphdb

CRAN status Codecov test coverage

EpiGraphDB is an analytical platform and database to support data mining in epidemiology. The platform incorporates a graph of causal estimates generated by systematically applying Mendelian randomization to a wide array of phenotypes, and augments this with a wealth of additional data from other bioinformatic sources. EpiGraphDB aims to support appropriate application and interpretation of causal inference in systematic automated analyses of many phenotypes.

epigraphdb is an R package to provide ease of access to EpiGraphDB services. We will refer to epigraphdb as the name of the R package whereas "EpiGraphDB" as the overall platform.

Installation

To install the latest development version from github ( devtools is required ):

# install.packages("devtools")
devtools::install_github("MRCIEU/epigraphdb-r")

To install a stable version from CRAN:

install.packages("epigraphdb")

NOTE: while the package repository is "epigraphdb-r", the R package name is "epigraphdb".

Using epigraphdb

epigraphdb provides a simple and intuitive way to query the API, as:

library("epigraphdb")
#>
#>   EpiGraphDB v1.0 (API: https://api.epigraphdb.org)
#>
mr(outcome_trait = "Body mass index")
#> # A tibble: 370 x 12
#>    exposure_id exposure_name outcome_id outcome_name estimate      se
#>    <chr>       <chr>         <chr>      <chr>           <dbl>   <dbl>
#>  1 627         Epiandroster… 785        Body mass i…   0.0950 2.28e-3
#>  2 541         X-11787       835        Body mass i…  -0.0578 1.77e-4
#>  3 971         Ulcerative c… 835        Body mass i…  -0.0111 1.76e-4
#>  4 60          Waist circum… 835        Body mass i…   0.861  2.07e-2
#>  5 UKB-a:426   Eye problems… 94         Body mass i…  -1.12   1.90e-2
#>  6 UKB-a:373   Ever depress… 95         Body mass i…  -0.616  4.80e-4
#>  7 29          Birth length  95         Body mass i…  -0.141  5.67e-4
#>  8 350         Laurate (12:… 974        Body mass i…   0.418  7.10e-3
#>  9 UKB-a:124   Treatment/me… 974        Body mass i…  -5.14   1.08e-1
#> 10 95          Body mass in… 974        Body mass i…   0.981  2.79e-2
#> # … with 360 more rows, and 6 more variables: p <dbl>, ci_upp <dbl>,
#> #   ci_low <dbl>, selection <chr>, method <chr>, moescore <dbl>)

For more information on how to use the epigraphdb R package and how to use the API in R please check out the following articles:

| Article | |---| | Getting started with EpiGraphDB in R | | Using EpiGraphDB R package | | Using EpiGraphDB API (from R and command line) | | Package options| | Meta functionalities of the EpiGraphDB platform| | Case study 1: Distinguishing vertical and horizontal pleiotropy for SNP-protein associations| | Case study 2: Identification of potential drug targets| | Case study 3: Triangulating causal estimates with literature evidence|

Package functionalities

Users can use the general query function query_epigraphdb to get data from an API endpoint on EpiGraphDB without having to deal with HTTP requests by themselves. We also provide a list of functions (see the table below) that are equivalent to the upstream endpoints for the ease of use.

API r package General query query_epigraphdb Topic queries GET /mr mr GET /ontology/gwas-efo ontology_gwas_efo GET /obs-cor obs_cor GET /genetic-cor genetic_cor GET /pqtl/ pqtl GET /pqtl/pleio/ pqtl_pleio GET /pqtl/list pqtl_list GET /confounder confounder GET /pathway pathway GET /drugs/risk-factors drugs_risk_factors GET /xqtl/multi-snp-mr xqtl_multi_snp_mr GET /xqtl/single-snp-mr xqtl_single_snp_mr GET /literature/gwas literature_gwas POST /protein/in-pathway protein_in_pathway Utilities POST /mappings/gene-to-protein mappings_gene_to_protein GET /meta/nodes/list meta_nodes_list GET /meta/rels/list meta_rels_list GET /meta/nodes/{meta_node}/list meta_nodes_list_node GET /meta/rels/{meta_rel}/list meta_rels_list_rel GET /meta/nodes/{meta_node}/search meta_nodes_search_node POST /cypher cypher

Contributing

If you would like to contribute to this package, please check out documentation on setting up development and currently planned updates.

EpiGraphDB resources

| link | screenshot | |-----------------------------------------------------|-------------------------------------------------------| | docs | docs | | API | api | | web application | webapp | | r package | epigraphdb-r |

Citation

Please cite EpiGraphDB as

Yi Liu, Benjamin Elsworth, Pau Erola, Valeriia Haberland, Gibran Hemani, Matt Lyon, Jie Zheng, Oliver Lloyd, Marina Vabistsevits, Tom R Gaunt, EpiGraphDB: a database and data mining platform for health data science, Bioinformatics, btaa961, https://doi.org/10.1093/bioinformatics/btaa961

@article{epigraphdb2020bioinformatics,
    author = {Liu, Yi and Elsworth, Benjamin and Erola, Pau and Haberland, Valeriia and Hemani, Gibran and Lyon, Matt and Zheng, Jie and Lloyd, Oliver and Vabistsevits, Marina and Gaunt, Tom R},
    title = {{EpiGraphDB}: a database and data mining platform for health data science},
    journal = {Bioinformatics},
    year = {2020},
    month = {11},
    issn = {1367-4803},
    doi = {10.1093/bioinformatics/btaa961},
    url = {https://doi.org/10.1093/bioinformatics/btaa961},
    note = {btaa961},
    eprint = {https://academic.oup.com/bioinformatics/advance-article-pdf/doi/10.1093/bioinformatics/btaa961/34178613/btaa961.pdf}
}

Contact

Please get in touch with us for issues, comments, suggestions, etc. via the following methods:



Try the epigraphdb package in your browser

Any scripts or data that you put into this service are public.

epigraphdb documentation built on Jan. 15, 2022, 1:09 a.m.