Biomedical Knowledge Mining Toolkit

Author

Guangchuang Yu

Published

November 18, 2025

Welcome

Introduction

Biomedical knowledge mining is not a single test and it is not a collection of unrelated R packages. It is a workflow that turns molecular evidence into organized, inspectable biological knowledge:

experiment → identifiers and evidence → enrichment → knowledge sources
          → evidence integration → figures → biological interpretation

This book documents that workflow as a toolkit. The packages remain visible because they provide the implementation, but the main navigation follows the decisions a researcher makes rather than the history of package development.

The toolkit at a glance

The system has six cooperating layers:

  1. Prepare the evidence — gene vectors, ranked lists, backgrounds, identifiers, and custom annotations.
  2. Choose an analysis engine — ORA, GSEA, comparison, network-aware, weighted, or multi-omics enrichment.
  3. Connect biological knowledge — GO, KEGG, Reactome, disease, MeSH, pathway collections, and user-defined gene sets.
  4. Organize the evidence — result objects, semantic similarity, redundancy reduction, representative terms, and PPI networks.
  5. Communicate the result — summary plots, gene–term networks, GSEA views, pathway views, and comparative figures.
  6. Interpret and report — evidence-guided biological interpretation, reproducible reports, and optional AI assistance.

The common objects passed between these layers are deliberately simple: a vector of identifiers, a named numeric ranking, a TERM2GENE table, a GSON knowledge object, or an enrichment result object.

Start with the route that matches your question

If you have… Start with… The question it answers
A differential-gene list A complete first workflow How do I run and inspect a first ORA/GSEA analysis?
A list but are unsure how to prepare it The data contract Which IDs, ranking, background, and annotation format are required?
Several possible analysis designs Choose a route Should I use ORA, GSEA, compareCluster, network, or custom enrichment?
Several biological databases GSON knowledge packaging How can I combine knowledge sources without changing the statistical engine?
An existing enrichment result Organize and integrate evidence How do I reduce redundancy, compare terms, and find supporting genes?
A figure or report to make Visualize and communicate results Which plot answers which biological question?
A package or function name Package and capability map Where does this function fit in the system?

The first complete workflow

A useful first pass is deliberately short:

prepare IDs and universe
        ↓
choose ORA or GSEA
        ↓
connect GO, KEGG, or another knowledge source
        ↓
inspect the result object
        ↓
plot the strongest themes
        ↓
check evidence before writing a biological conclusion

The first workflow chapter uses stable demonstration data and links each step to the deeper chapters. It is the recommended entry point for readers who want to get a result before learning every available method.

Package roles in the system

Role in the workflow Main packages or modules What the reader gets
High-level workflow and knowledge-aware entry points clusterProfiler Consistent functions and result objects
Statistical enrichment engine enrichit ORA, GSEA, network-aware, weighted, and multi-omics methods
Knowledge representation and exchange gson Versioned, metadata-aware knowledge objects and combined knowledge bases
Specialized knowledge connectors DOSE, ReactomePA, meshes Disease, Reactome, and MeSH analysis
Semantic similarity GOSemSim, DOSE, meshes Similarity among terms, genes, and gene clusters
Result visualization enrichplot Reusable plots for ORA, GSEA, comparison, and networks
Genomic-coordinate entry point ChIPseeker Peak annotation and genomic coordination enrichment
Optional interpretation layer interpret() and supported model providers Evidence synthesis and narrative drafting, with explicit uncertainty

The packages are therefore modules in one tool system. A user can enter through a package-specific function, but should still be able to follow the same path from input to result, figure, and interpretation.

Version badges

Book structure

  • Part 0 — Start here: data contract, first workflow, and route selection.
  • Part 1 — Choose the analysis engine: ORA, GSEA, comparison, network-aware, weighted, and multi-omics enrichment.
  • Part 2 — Connect biological knowledge: GSON, GO, KEGG, Reactome, disease, MeSH, pathway collections, and custom annotations.
  • Part 3 — Organize and integrate evidence: result objects, semantic similarity, term selection, and PPI networks.
  • Part 4 — Visualize and communicate: summary plots, networks, GSEA views, comparisons, and publication-ready figures.
  • Part 5 — Interpret and report: evidence-guided interpretation and optional AI-assisted reporting.
  • Part 6 — Recipes and reference: task-oriented workflows, troubleshooting, capability maps, and reference material.

Citation

If you use this software suite in published research, cite the papers most relevant to the methods and packages used:

  1. G Yu*. Background bias in functional enrichment analysis: Insights from clusterProfiler. The Innovation Life. 2026, 4(1):100181.
  2. G Yu*. Thirteen years of clusterProfiler. The Innovation. 2024, 5(6):100722.
  3. S Xu#, E Hu#, Y Cai#, Z Xie#, X Luo#, L Zhan, W Tang, Q Wang, B Liu, R Wang, W Xie, T Wu, L Xie, G Yu*. Using clusterProfiler to characterise Multi-Omics Data. Nature Protocols. 2024, 19(11):3292–3320.
  4. Q Wang#, M Li#, T Wu, L Zhan, L Li, M Chen, W Xie, Z Xie, E Hu, S Xu, G Yu*. Exploring epigenomic datasets by ChIPseeker. Current Protocols. 2022, 2(10):e585.
  5. T Wu#, E Hu#, S Xu, M Chen, P Guo, Z Dai, T Feng, L Zhou, W Tang, L Zhan, X Fu, S Liu, X Bo*, G Yu*. clusterProfiler 4.0: A universal enrichment tool for interpreting omics data. The Innovation. 2021, 2(3):100141. doi:10.1016/j.xinn.2021.100141
  6. G Yu*. Gene Ontology Semantic Similarity Analysis Using GOSemSim. In: Kidder B. (eds) Stem Cell Transcriptional Networks. Methods in Molecular Biology. 2020, 2117:207–215.
  7. G Yu*. Using meshes for MeSH term enrichment and semantic analyses. Bioinformatics. 2018, 34(21):3766–3767. doi:10.1093/bioinformatics/bty410
  8. G Yu, QY He*. ReactomePA: an R/Bioconductor package for reactome pathway analysis and visualization. Molecular BioSystems. 2016, 12(2):477–479. doi:10.1039/C5MB00663E
  9. G Yu*, LG Wang, and QY He*. ChIPseeker: an R/Bioconductor package for ChIP peak annotation, comparison and visualization. Bioinformatics. 2015, 31(14):2382–2383. doi:10.1093/bioinformatics/btv145
  10. G Yu*, LG Wang, GR Yan, QY He*. DOSE: an R/Bioconductor package for Disease Ontology Semantic and Enrichment analysis. Bioinformatics. 2015, 31(4):608–609. doi:10.1093/bioinformatics/btu684
  11. G Yu, LG Wang, Y Han and QY He*. clusterProfiler: an R package for comparing biological themes among gene clusters. OMICS: A Journal of Integrative Biology. 2012, 16(5):284–287. doi:10.1089/omi.2011.0118
  12. G Yu, F Li, Y Qin, X Bo*, Y Wu, S Wang*. GOSemSim: an R package for measuring semantic similarity among GO terms and gene products. Bioinformatics. 2010, 26(7):976–978. doi:10.1093/bioinformatics/btq064

Contributing

The source code is hosted at https://github.com/YuLab-SMU/biomedical-knowledge-mining-book/. Feedback, bug reports, examples, and improvements to the workflow are welcome through issues and pull requests.