Skip to contents

Introduction

The miRNA Enrichment Analysis and Annotation Tool (miEAA) is a multi-species microRNA enrichment-analysis service provided by the Chair for Clinical Bioinformatics at Saarland University. For more information, see the miEAA website or its latest publication.


First, find enrichment categories

Before performing enrichment analysis on a miRNA set, note that the supported enrichment categories depend on both the miRNA type (mature or precursor, without mixing the two) and the species. See the miEAA integrated data sets for details.

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 = "precursor", species = "Danio rerio")

Submit an enrichment-analysis request to miEAA

There are two approaches to do this, we will start with the simpler one.

Approach 1: Using the wrapper function

Supply the arguments of rba_mieaa_enrich() as described in its manual. You must 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 Perform enrichment analysis without limiting it to selected categories
mieaa_all <- rba_mieaa_enrich(
  test_set = mirs,
  mirna_type = "mature",
  test_type = "ORA",
  species = 9606
)
#>  -- Step 1/3: Submitting Enrichment analysis request:
#> No categories were supplied, Requesting enrichment using all of the 32 available categories for species 'Homo sapiens'.
#> Submitting ORA enrichment request for 17 miRNA IDs of species Homo sapiens to miEAA servers.
#> 
#>  -- Step 2/3: Checking for Submitted enrichment analysis's status every 5 seconds.
#>     Your submitted job ID is: 4a98a72c-e848-457e-8c30-1eb4d30fdbd6
#> ....
#> 
#>  -- Step 3/3: Retrieving the results.
#> Retrieving results of submitted enrichment request with ID: 4a98a72c-e848-457e-8c30-1eb4d30fdbd6

## 2b Limit the enrichment to selected data sets (enrichment categories)
mieaa_kegg <- rba_mieaa_enrich(
  test_set = mirs,
  mirna_type = "mature",
  test_type = "ORA",
  species = 9606,
  categories = "KEGG_mature"
)
#>  -- Step 1/3: Submitting Enrichment analysis request:
#> Submitting ORA enrichment request for 17 miRNA IDs of species Homo sapiens to miEAA servers.
#> 
#>  -- Step 2/3: Checking for Submitted enrichment analysis's status every 5 seconds.
#>     Your submitted job ID is: f3d034b0-0bd6-4484-818e-226179eccb15
#> .
#> 
#>  -- Step 3/3: Retrieving the results.
#> Retrieving results of submitted enrichment request with ID: f3d034b0-0bd6-4484-818e-226179eccb15

Approach 2: Going step-by-step

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.


Convert miRNA identifiers

miEAA uses miRBase version 22 identifiers. Use rba_mieaa_convert_version() to convert miRNA identifiers between supported miRBase versions. miEAA also distinguishes mature and precursor miRNA identifiers; use rba_mieaa_convert_type() to convert between these identifier types.


How to Cite?

To cite miEAA (see https://ccb-compute2.cs.uni-saarland.de/mieaa/):

  • Ernesto Aparicio-Puerta, Pascal Hirsch, Georges P. Schmartz, Fabian Kern, Tobias Fehlmann, Andreas Keller, miEAA 2023: updates, new functional microRNA sets and improved enrichment visualizations, Nucleic Acids Research, Volume 51, Issue W1, 5 July 2023, Pages W319–W325, https://doi.org/10.1093/nar/gkad392

To cite rbioapi:

  • Moosa Rezwani, Ali Akbar Pourfathollah, Farshid Noorbakhsh, rbioapi: user-friendly R interface to biologic web services’ API, Bioinformatics, Volume 38, Issue 10, 15 May 2022, Pages 2952–2953, https://doi.org/10.1093/bioinformatics/btac172

Session info

#> R version 4.6.1 (2026-06-24)
#> Platform: x86_64-pc-linux-gnu
#> Running under: Ubuntu 24.04.4 LTS
#> 
#> Matrix products: default
#> BLAS:   /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3 
#> LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/libopenblasp-r0.3.26.so;  LAPACK version 3.12.0
#> 
#> locale:
#>  [1] LC_CTYPE=C.UTF-8       LC_NUMERIC=C           LC_TIME=C.UTF-8       
#>  [4] LC_COLLATE=C.UTF-8     LC_MONETARY=C.UTF-8    LC_MESSAGES=C.UTF-8   
#>  [7] LC_PAPER=C.UTF-8       LC_NAME=C              LC_ADDRESS=C          
#> [10] LC_TELEPHONE=C         LC_MEASUREMENT=C.UTF-8 LC_IDENTIFICATION=C   
#> 
#> time zone: UTC
#> tzcode source: system (glibc)
#> 
#> attached base packages:
#> [1] stats     graphics  grDevices utils     datasets  methods   base     
#> 
#> other attached packages:
#> [1] rbioapi_0.8.3.9000
#> 
#> loaded via a namespace (and not attached):
#>  [1] httr_1.4.8        cli_3.6.6         knitr_1.51        rlang_1.3.0      
#>  [5] xfun_0.60         otel_0.2.0        textshaping_1.0.5 jsonlite_2.0.0   
#>  [9] DT_0.34.0         htmltools_0.5.9   ragg_1.5.2        sass_0.4.10      
#> [13] rmarkdown_2.31    crosstalk_1.2.2   evaluate_1.0.5    jquerylib_0.1.4  
#> [17] fastmap_1.2.0     yaml_2.3.12       lifecycle_1.0.5   compiler_4.6.1   
#> [21] fs_2.1.0          htmlwidgets_1.6.4 systemfonts_1.3.2 digest_0.6.39    
#> [25] R6_2.6.1          curl_7.1.0        magrittr_2.0.5    bslib_0.12.0     
#> [29] tools_4.6.1       pkgdown_2.2.1     cachem_1.1.0      desc_1.4.3