knitr::opts_chunk$set( echo = TRUE, eval = TRUE, message = FALSE, warning = FALSE, collapse = TRUE, tidy = FALSE, cache = FALSE, dev = "png", comment = "#>" ) library(rbioapi) rba_options(timeout = 30, skip_error = TRUE)
The miRNA Enrichment Analysis and Annotation Tool (miEAA) is a service provided by the Chair for Clinical Bioinformatics at Saarland University. Basically, miEAA is a multi-species microRNA enrichment analysis tool. For more information, see their website or published paper.
Before Performing enrichment analysis on a miRNA set, note that based on your input miRNA type (either all mature or precursor, not a mixture of both!) and the species, there will be different sets of supported enrichment categories.
Thus, it is recommended to retrieve a list of possible enrichment categories that you may use:
## A list of available enrichment categories for: ## mature human miRNA: rba_mieaa_cats(mirna_type = "mature", species = 9606) ## precursor human miRNA rba_mieaa_cats(mirna_type = "precursor", species = 9606) ## precursor zebrafish miRNA rba_mieaa_cats(mirna_type = "mature", species = "Danio rerio")
There are two approaches to do this, we will start with the simpler one.
Just fill the arguments of rba_mieaa_enrich()
according to the function's manual; As you can see in the function's arguments, you have a lot of controls over your enrichment request, but you need to provide test_set
, mirna_type
, test_type
, and species
:
## 1 We create a variable with our miRNAs' mature IDs mirs <- c( "hsa-miR-20b-5p", "hsa-miR-144-5p", "hsa-miR-17-5p", "hsa-miR-20a-5p", "hsa-miR-222-3p", "hsa-miR-106a-5p", "hsa-miR-93-5p", "hsa-miR-126-3p", "hsa-miR-363-3p", "hsa-miR-302c-3p", "hsa-miR-374b-5p", "hsa-miR-18a-5p", "hsa-miR-548d-3p", "hsa-miR-135a-3p", "hsa-miR-558", "hsa-miR-130b-5p", "hsa-miR-148a-3p" ) ## 2a We can perform enrichment analysis on our miRNA set without limiting the analysis to any categories mieaa_all <- rba_mieaa_enrich( test_set = mirs, mirna_type = "mature", test_type = "ORA", species = 9606 ) ## 2b Or, We can limit the enrichment to certain datasets (enrichment categories) mieaa_kegg <- rba_mieaa_enrich( test_set = mirs, mirna_type = "mature", test_type = "ORA", species = 9606, categories = "KEGG_mature" )
if (is.data.frame(mieaa_kegg)) { DT::datatable( data = mieaa_kegg, options = list( scrollX = TRUE, paging = TRUE, fixedHeader = TRUE, keys = TRUE, pageLength = 10 ) ) } else { print("Vignette building failed. It is probably because the web service was down during the building.") }
As stated before, rba_mieaa_enrich()
is a wrapper function, meaning that it executes the following sequence of functions:
## 1 Submit enrichment request to miEAA request <- rba_mieaa_enrich_submit( test_set = mirs, mirna_type = "mature", test_type = "ORA", species = 9606, categories = c("miRWalk_Diseases_mature", "miRWalk_Organs_mature") ) ## 2 check for job's running status rba_mieaa_enrich_status(job_id = request$job_id) ## 3 If the job has completed, retrieve the results results <- rba_mieaa_enrich_results(job_id = request$job_id)
Please Note: Other services supported by rbioapi also provide Over-representation analysis tools. Please see the vignette article Do with rbioapi: Over-Representation (Enrichment) Analysis in R (link to the documentation site) for an in-depth review.
miEAA only recognizes miRBASE version 22 accessions. You can use rba_mieaa_convert_version()
to convert miRNA accession between different miRBASE versions. Also, as stated before, miEAA differentiate between precursor and mature miRNA accessions, to convert between these 2 accession types, use rba_mieaa_convert_type()
.
To cite miEAA (Please see https://ccb-compute2.cs.uni-saarland.de/mieaa2/):
To cite rbioapi:
sessionInfo()
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.