# epiSeeker 1.0.0 (Bioconductor)

epiSeeker: an R package for Annotation, Comparison and Visualization of multi-omics epigenetic data

[Record of Bioconductor 3.23](/bioc/epiSeeker/v/3.23.md) | Compare: [With another package](/compare/epiSeeker.md#add), [Downloads](/downloads/compare/epiSeeker.md#add) | [Licences](/bioc/epiSeeker/licences.md) | [SBOM](/bioc/epiSeeker/sbom.md)

Install from Bioconductor: `BiocManager::install("epiSeeker")`

- Bioconductor build: OK (release 3.23)
- Distinct IPs a month: 375 (Rank 2,325 in its category)
- Dependent packages: 0 (none suggest it)
- Bioconductor releases: 1 (since 2026)
- Advisories: None published (for Bioconductor)

## About

[Method](/about/licenses.md)

This package implements functions to analyze multi-omics epigenetic data. Data of fragment type and base type are supported by epiSeeker.

**Full description**

This package implements functions to analyze multi-omics epigenetic data. Data of fragment type and base type are supported by epiSeeker. It provides functions to retrieve the nearest genes around the peak, annotate genomic region of the peak, statistical methods to estimate the significance of overlap among peak data sets, and motif analysis. It incorporates the GEO database for users to compare their own dataset with those deposited in the database. The comparison can be used to infer cooperative regulation and thus can be used to generate hypotheses. Several visualization functions are implemented to summarize the coverage of the peak experiment, average profile and heatmap of peaks binding to TSS regions, genomic annotation, distance to TSS, overlap of peaks or genes, and the single-base resolution epigenetic data by considering the strand, motif, and additional information.

- Maintainer: Guangchuang Yu
- Licence: [Artistic-2.0](/licences/Artistic-2.0.md)
- Last updated: 28 Apr 2026
- First release: Bioconductor 3.23, 29 Apr 2026

- [Bioconductor page](https://bioconductor.org/packages/epiSeeker)
- [Source repository](https://github.com/yulab-smu/episeeker)
- [Issues](https://github.com/YuLab-SMU/epiSeeker/issues)
- [Source of every release](https://github.com/bioc/epiSeeker)

[Compare with another package](/compare/epiSeeker.md#add)

**More details**

- Releases: 1 of 49 Bioconductor releases
- Category: software
- Needs R: >= 4.6.0
- LazyData: false
- RoxygenNote: 7.3.3

**biocViews (8)**

- [Annotation](/topics/bioc/Annotation.md)
- [ChIPSeq](/topics/bioc/ChIPSeq.md)
- [Software](/topics/bioc/Software.md)
- [Visualization](/topics/bioc/Visualization.md)
- [MultipleComparison](/topics/bioc/MultipleComparison.md)
- [Coverage](/topics/bioc/Coverage.md)
- [MotifAnnotation](/topics/bioc/MotifAnnotation.md)
- [GeneRegulation](/topics/bioc/GeneRegulation.md)

**Cite**

#### Package

Run in R for the authors' entry:

`citation("epiSeeker")`

The package provides a citation file, so `citation()` returns the authors' own entry.

It points to 10.1002/cpz1.585, 10.1093/bioinformatics/btv145.

#### R Observatory

For a number measured here: a download total, a coverage figure, an archival date.

APA: Balamuta, J. J. (2026). R Observatory: Metrics for epiSeeker version 1.0.0 [Data set]. HJJB, LLC. Data release v2026-10-28. https://doi.org/10.5281/zenodo.21843040

BibTeX:

```
@misc{robservatoryepiSeeker,
  author    = {Balamuta, James Joseph},
  title     = {{R} {Observatory}: Metrics for {epiSeeker} version 1.0.0},
  year      = {2026},
  publisher = {HJJB, LLC},
  doi       = {10.5281/zenodo.21843040},
  url       = {https://r-observatory.thecoatlessprofessor.com/bioc/epiSeeker},
  note      = {Data set. Data release v2026-10-28}
}
```

From data release v2026-10-28, which the citation names so these numbers can be found later.

## Health

[Method](/about/checks-health.md)

Release 3.23: OK 26 Oct 2026

6 build steps: 6 OK.

**Machines (2)**

| Machine | Install | Build | Check |
| --- | --- | --- | --- |
| kunpeng2 | OK | OK | OK |
| nebbiolo1 | OK | OK | OK |

**Devel 3.24: OK**

10 build steps: 10 OK.

| Machine | Install | Build | Check | Build binary |
| --- | --- | --- | --- | --- |
| lconway | OK | OK | OK | OK |
| nebbiolo2 | OK | OK | OK |  |
| taishan | OK | OK | OK |  |

**Built files (4)**

| Platform | Kind | File |
| --- | --- | --- |
| macOS (Intel) | binary | `epiSeeker_1.0.0.tgz` |
| macOS (Apple Silicon) | binary | `epiSeeker_1.0.0.tgz` |
| source | source | `epiSeeker_1.0.0.tar.gz` |
| Windows | binary | `epiSeeker_1.0.0.zip` |

## Downloads

[Method](/about/downloads.md)

- Downloads in the latest complete month: 2,531 (It comes from Bioconductor alone.)

Bioconductor alone: rank in its category, by distinct IPs a month: 2,325 of 3,170.

| Channel | Downloads in the latest complete month | In the total | Rank in that channel | Change |
| --- | ---: | --- | --- | --- |
| Bioconductor | 2,531 | yes |  |  |

- Bioconductor: Distinct IP addresses average 375 a month over 12 months, which is a different measure and is never added.

Other windows: [Last 12 complete months](/bioc/epiSeeker.md?win=12_months#downloads).

Downloads over time are drawn for CRAN packages only.

[Compare downloads](/downloads/compare/epiSeeker.md#add)

## Dependencies

[Method](/about/reverse-dependencies.md)

- Needs: 33
- Dependent packages: 0 (0 on CRAN, 0 on Bioconductor)
- Suggested by: 0

**Needs (33)**

- [AnnotationDbi](/bioc/AnnotationDbi.md)
- [aplot](/cran/aplot.md)
- [BiocGenerics](/bioc/BiocGenerics.md)
- [Biostrings](/bioc/Biostrings.md)
- [boot](/cran/boot.md)
- [bsseq](/bioc/bsseq.md)
- [dplyr](/cran/dplyr.md)
- [enrichplot](/bioc/enrichplot.md)
- [GenomeInfoDb](/bioc/GenomeInfoDb.md)
- [GenomicFeatures](/bioc/GenomicFeatures.md)
- [GenomicRanges](/bioc/GenomicRanges.md)
- [ggplot2](/cran/ggplot2.md)
- graphics
- grDevices
- grid
- [IRanges](/bioc/IRanges.md)
- [magrittr](/cran/magrittr.md)
- methods
- parallel
- [plotrix](/cran/plotrix.md)
- [RColorBrewer](/cran/RColorBrewer.md)
- [rlang](/cran/rlang.md)
- [RSQLite](/cran/RSQLite.md)
- [rtracklayer](/bioc/rtracklayer.md)
- [S4Vectors](/bioc/S4Vectors.md)
- [scales](/cran/scales.md)
- stats
- [SummarizedExperiment](/bioc/SummarizedExperiment.md)
- [tibble](/cran/tibble.md)
- [tidyr](/cran/tidyr.md)
- [tidyselect](/cran/tidyselect.md)
- utils
- [yulab.utils](/cran/yulab.utils.md)

- Needed in total: 176 packages

**Optional extras (27)**

- [ape](/cran/ape.md)
- [BSgenome](/bioc/BSgenome.md)
- [BSgenome.Hsapiens.UCSC.hg38](/bioc/BSgenome.Hsapiens.UCSC.hg38.md)
- [clusterProfiler](/bioc/clusterProfiler.md)
- [data.table](/cran/data.table.md)
- [GEOmetadb](/bioc/GEOmetadb.md)
- [GEOquery](/bioc/GEOquery.md)
- [gggenes](/cran/gggenes.md)
- [ggimage](/cran/ggimage.md)
- [gginnards](/cran/gginnards.md)
- [ggiraph](/cran/ggiraph.md)
- [ggplotify](/cran/ggplotify.md)
- [ggtree](/bioc/ggtree.md)
- [ggupset](/cran/ggupset.md)
- [ggVennDiagram](/cran/ggVennDiagram.md)
- [gridBase](/cran/gridBase.md)
- [gtools](/cran/gtools.md)
- [JASPAR2024](/bioc/JASPAR2024.md)
- [knitr](/cran/knitr.md)
- [org.Hs.eg.db](/bioc/org.Hs.eg.db.md)
- [prettydoc](/cran/prettydoc.md)
- [ReactomePA](/bioc/ReactomePA.md)
- [rmarkdown](/cran/rmarkdown.md)
- [testthat](/cran/testthat.md)
- [TFBSTools](/bioc/TFBSTools.md)
- [TxDb.Hsapiens.UCSC.hg38.knownGene](/bioc/TxDb.Hsapiens.UCSC.hg38.knownGene.md)
- [universalmotif](/bioc/universalmotif.md)

## Code

[Method](/about/code-metrics.md)

Selected function: `getBioRegion`

- Kind: Public R function
- File: R/tagMatrix.R, line 125
- Lines: 69
- Complexity: 9

Called by 2: [`getTagMatrix.internal`](/bioc/epiSeeker.md?fn=getTagMatrix.internal&view=focus#code), [`getPromoters`](/bioc/epiSeeker.md?fn=getPromoters&view=focus#code)

Calls 6: [`.epiSeekerEnv`](/bioc/epiSeeker.md?fn=.epiSeekerEnv&view=focus#code), [`getGene`](/bioc/epiSeeker.md?fn=getGene&view=focus#code), [`loadTxDb`](/bioc/epiSeeker.md?fn=loadTxDb&view=focus#code), [`extend_gr`](/bioc/epiSeeker.md?fn=extend_gr&view=focus#code), [`get_exonList`](/bioc/epiSeeker.md?fn=get_exonList&view=focus#code), [`get_intronList`](/bioc/epiSeeker.md?fn=get_intronList&view=focus#code)

Paths: 2 steps each way.

Called by 2:

- [`getTagMatrix.internal`](/bioc/epiSeeker.md?fn=getTagMatrix.internal&view=focus#code), called by 1
  - [`getTagMatrix`](/bioc/epiSeeker.md?fn=getTagMatrix&view=focus#code)
- [`getPromoters`](/bioc/epiSeeker.md?fn=getPromoters&view=focus#code)

Calls 6:

- [`.epiSeekerEnv`](/bioc/epiSeeker.md?fn=.epiSeekerEnv&view=focus#code), calls 1
  - [`get_env_genome`](/bioc/epiSeeker.md?fn=get_env_genome&view=focus#code)
- [`getGene`](/bioc/epiSeeker.md?fn=getGene&view=focus#code), calls 1
  - [`.epiSeekerEnv`](/bioc/epiSeeker.md?fn=.epiSeekerEnv&view=focus#code), calls 1
- [`loadTxDb`](/bioc/epiSeeker.md?fn=loadTxDb&view=focus#code)
- [`extend_gr`](/bioc/epiSeeker.md?fn=extend_gr&view=focus#code), calls 1
  - [`check_extension`](/bioc/epiSeeker.md?fn=check_extension&view=focus#code)
- [`get_exonList`](/bioc/epiSeeker.md?fn=get_exonList&view=focus#code)
- [`get_intronList`](/bioc/epiSeeker.md?fn=get_intronList&view=focus#code)

The open file in the files map is `R/tagMatrix.R`.

- Functions: 8
- Lines: 712
- Calls that stay inside it: 7
- Calls to other files: 11, to 1
- Calls from other files: 0

It calls: `R/utilities.R` (11 calls)

| Function in tagMatrix.R | Calls in other files |
| --- | --- |
| [`getBioRegion`](/bioc/epiSeeker.md?fn=getBioRegion&view=focus#code) selected | [`.epiSeekerEnv`](/bioc/epiSeeker.md?fn=.epiSeekerEnv&view=focus#code), [`getGene`](/bioc/epiSeeker.md?fn=getGene&view=focus#code), [`get_exonList`](/bioc/epiSeeker.md?fn=get_exonList&view=focus#code), [`get_intronList`](/bioc/epiSeeker.md?fn=get_intronList&view=focus#code) and 1 more |
| [`getTagMatrix.internal`](/bioc/epiSeeker.md?fn=getTagMatrix.internal&view=focus#code) | [`check_windows`](/bioc/epiSeeker.md?fn=check_windows&view=focus#code), [`loadPeak`](/bioc/epiSeeker.md?fn=loadPeak&view=focus#code) |
| [`extend_gr`](/bioc/epiSeeker.md?fn=extend_gr&view=focus#code) | [`check_extension`](/bioc/epiSeeker.md?fn=check_extension&view=focus#code) |
| [`getTagMatrix_body`](/bioc/epiSeeker.md?fn=getTagMatrix_body&view=focus#code) | [`check_bin`](/bioc/epiSeeker.md?fn=check_bin&view=focus#code) |
| [`getTagMatrix_body_internal`](/bioc/epiSeeker.md?fn=getTagMatrix_body_internal&view=focus#code) | [`bin_vector`](/bioc/epiSeeker.md?fn=bin_vector&view=focus#code) |

**More functions (3)**

| Function in tagMatrix.R | Calls in other files |
| --- | --- |
| [`getTagMatrix_site`](/bioc/epiSeeker.md?fn=getTagMatrix_site&view=focus#code) | [`check_bin`](/bioc/epiSeeker.md?fn=check_bin&view=focus#code) |
| [`getPromoters`](/bioc/epiSeeker.md?fn=getPromoters&view=focus#code) | nothing outside this file |
| [`getTagMatrix`](/bioc/epiSeeker.md?fn=getTagMatrix&view=focus#code) | nothing outside this file |


10 files with no calls to or from another: `R/dplyr-verb.R`, `R/GEO.R`, `R/getMotifMatrix.R`, `R/plotBmProf.R`, `R/plotGeneTrack.R`, `R/plotMotifProf.R`, `R/upsetplot.R`, `R/vennpie.R`, `R/vennplot.R`, `R/zzz.R`.

The whole package has 142 function names in 29 files and 146 calls between them. Most calls between files: `R/tagMatrix.R` and `R/utilities.R` (11 calls), `R/getGenomicAnnotation.R` and `R/utilities.R` (6 calls), `R/getBmMatrix.R` and `R/utilities.R` (6 calls), `R/annotateSeq.R` and `R/utilities.R` (5 calls), `R/enrichOverlap.R` and `R/utilities.R` (5 calls).

Graph: the whole call graph has 127 function names that take part in a call and 146 calls between them, set out in 8 layers with callers before what they call. 15 function names have no calls and are left out. Called by the most functions: `getGene` (4), `loadTxDb` (4), `get_gsminfo` (4), `.epiSeekerEnv` (4), `readPeakFile` (4). Calling the most functions: `annotateSeq` (10), `getGenomicAnnotation` (7), `getBioRegion` (6), `getTagMatrix.internal` (5), `enrichAnnoOverlap` (5).

Most connected functions: [`annotateSeq`](/bioc/epiSeeker.md?fn=annotateSeq&view=focus#code) 11, [`getBioRegion`](/bioc/epiSeeker.md?fn=getBioRegion&view=focus#code) 8, [`getGenomicAnnotation`](/bioc/epiSeeker.md?fn=getGenomicAnnotation&view=focus#code) 8, [`getTagMatrix.internal`](/bioc/epiSeeker.md?fn=getTagMatrix.internal&view=focus#code) 6, [`readPeakFile`](/bioc/epiSeeker.md?fn=readPeakFile&view=focus#code) 6, [`.epiSeekerEnv`](/bioc/epiSeeker.md?fn=.epiSeekerEnv&view=focus#code) 5

To select another function, add ?fn=NAME to this address.

The call graph also has an address of its own: /bioc/epiSeeker/graph.md?fn=getBioRegion&view=focus

- Functions: 142
- Public exports: 41
- Lines of R code: 8,558
- Median complexity: 3

**Functions (142)**

| Function (sorted, low to high) | Kind | File | Lines | Complexity |
| --- | --- | --- | ---: | ---: |
| [`.`](/bioc/epiSeeker.md?fn=.#code) | Public | R/utilities.R | 3 | 1 |
| [`annotateSeq`](/bioc/epiSeeker.md?fn=annotateSeq#code) | Public | R/annotateSeq.R | 278 | 35 |
| [`as.GRanges`](/bioc/epiSeeker.md?fn=as.GRanges#code) | Public | R/csAnno.R | 6 | 2 |
| [`bmData`](/bioc/epiSeeker.md?fn=bmData#code) | Public | R/bmData-class.R | 114 | 11 |
| [`combine_csAnno`](/bioc/epiSeeker.md?fn=combine_csAnno#code) | Public | R/csAnno.R | 95 | 13 |
| [`downloadGEObedFiles`](/bioc/epiSeeker.md?fn=downloadGEObedFiles#code) | Public | R/GEO.R | 4 | 1 |
| [`downloadGSMbedFiles`](/bioc/epiSeeker.md?fn=downloadGSMbedFiles#code) | Public | R/GEO.R | 5 | 1 |
| [`dropAnno`](/bioc/epiSeeker.md?fn=dropAnno#code) | Public | R/annotateSeq.R | 10 | 2 |
| [`enrichAnnoOverlap`](/bioc/epiSeeker.md?fn=enrichAnnoOverlap#code) | Public | R/enrichOverlap.R | 88 | 9 |
| [`enrichPeakOverlap`](/bioc/epiSeeker.md?fn=enrichPeakOverlap#code) | Public | R/enrichOverlap.R | 76 | 9 |
| [`getAnnoStat`](/bioc/epiSeeker.md?fn=getAnnoStat#code) | Public | R/csAnno.R | 6 | 2 |
| [`getBioRegion`](/bioc/epiSeeker.md?fn=getBioRegion#code) | Public | R/tagMatrix.R | 69 | 9 |

This page lists 1 to 12 of 142 functions. [Next](/bioc/epiSeeker.md?sort=name&order=asc&fpage=2#functions)

**Size and composition**

#### Lines by kind (13,614)

| Kind | Lines | Share |
| --- | ---: | ---: |
| R code | 8,558 | 63% |
| Tests | 937 | 7% |
| Documentation | 3,259 | 24% |
| Guides | 860 | 6% |

#### Lines by language

| Language | Lines | Share |
| --- | ---: | ---: |
| R | 9,495 | 70% |
| Rd | 3,259 | 24% |
| Vignettes | 672 | 5% |
| Other | 188 | 1% |

Languages are counted from file extensions.

- Files: 165
- R functions: 142
- Object systems: S3: 6 methods, S4: 2 classes, S4: 6 generics, S4: 14 methods

**Complexity**

- Median: 3
- Mean: 5.24
- Highest: 35
- Median lines per function: 24.5

_About complexity: Cyclomatic complexity counts the independent paths through a function: 1 is a straight line, higher is harder to test. R functions only._

**Call graph figures**

- R functions: 142
- Calls: 146
- Unconnected: 15
- Groups: 9

## Tests

[Method](/about/coverage.md)

Test coverage is measured for CRAN packages only. Nothing is known for Bioconductor packages, which is not the same as no coverage.

- Test cases: 58
- Lines of tests: 937
- Exports named in tests: 61%

- Has tests: Yes
- Test frameworks: testthat
- Test lines per line of code: 0.11

## Documentation

[Method](/about/code-metrics.md)

- Exports documented: 100%
- Arguments documented: 99.7%
- Return value documented: 100%
- Help pages with examples: 56%
- Examples run in checks: 100%

**Guides (1)**

- [epiSeeker.html](https://bioconductor.org/packages/3.23/bioc/vignettes/epiSeeker/inst/doc/epiSeeker.html)

**Other documentation**

- README: Yes, 209 words
- Release notes file: Yes
- Help pages: 84
- Lines of documentation: 3,259

## Datasets

[Method](/about/objects.md)

12 datasets, 9 can be loaded by name

| Dataset | Size | Columns |
| --- | --- | --- |
| [demo_bisseq](/bioc/epiSeeker/data/demo_bisseq.md) | 50 × 4 | chr, pos, Cov, Methylation |
| [demo_bmdata](/bioc/epiSeeker/data/demo_bmdata.md), demo base modification data |  |  |
| [demo_peak](/bioc/epiSeeker/data/demo_peak.md), demo peak file |  |  |
| [gsminfo](/bioc/epiSeeker/data/gsminfo.md), Information Datasets, also in 1 other package | 103,398 × 14 | series_id, gsm, gpl, organism, title, characteristics and 8 more |
| [peakAnno](/bioc/epiSeeker/data/peakAnno.md), Example data of peak annotation |  |  |
| [peakAnnoList](/bioc/epiSeeker/data/peakAnnoList.md), Example data of a list of peak annotation | length 5 |  |
| [processedGSM](/bioc/epiSeeker/data/processedGSM.md) | length 1,973,025 |  |
| [pwm_obj](/bioc/epiSeeker/data/pwm_obj.md), motif reference for Homo sapiens |  |  |
| [sample_peaks](/bioc/epiSeeker/data/sample_peaks.md) | 150 × 9 | chr, start, end, length, summit, tags and 3 more |
| [seq2gene_result](/bioc/epiSeeker/data/seq2gene_result.md), Result of seq2gene | length 193 |  |
| [tagMatrix](/bioc/epiSeeker/data/tagMatrix.md), Example data of tagMatrix | 664 × 500 |  |
| [ucsc_release](/bioc/epiSeeker/data/ucsc_release.md), Information Datasets, also in 1 other package | 112 × 4 | species, ucsc_version, release_date, release_name |

## People

[Method](/about/author-identity.md)

- [Guangchuang Yu](/people/Guangchuang+Yu.md): Maintainer, author. ORCID https://orcid.org/0000-0002-6485-8781
- [Chun-Hui Gao](/people/Chun-Hui+Gao.md): Contributor
- [Michael Kluge](/people/Michael+Kluge.md): Contributor
- [Ming Li](/people/Ming+Li.md): Contributor
- [Hervé Pagès](/people/Herv%C3%A9+Pag%C3%A8s.md): Contributor
- [Thomas Schwarzl](/people/Thomas+Schwarzl.md): Contributor
- [Qianwen Wang](/people/Qianwen+Wang.md): Contributor
- [Zhougeng Xu](/people/Zhougeng+Xu.md): Contributor
- [Yun Yan](/people/Yun+Yan.md): Contributor

Funded by Guangchuang Yu

## Repository

[Method](/about/repo-signals.md#figures)

[YuLab-SMU](/repos/YuLab-SMU.md) / [episeeker](https://github.com/yulab-smu/episeeker) on github.com

- Stars: 0
- Forks: 2
- Open issues: 0
- Last commit: 5 Oct 2026

**Activity**

- Commits: 86
- Open pull requests: 0
- Tagged releases: 0
- Latest tagged release: –
- Issues closed in: –
- Pull requests closed in: 2 days (median)
- Pull requests merged: 100%
- Created: 18 Sep 2025
- Licence file reads as: –

**Development practices (6)**

| Kind | Found |
| --- | --- |
| Governance and community | Code of conduct, Issue templates |
| Docs source | README.Rmd GitHub Pages site last deployed 2026-10-10 |
| Reproducibility and dev environment | data-raw/, Makefile |

[Across YuLab-SMU](/repos/YuLab-SMU.md#practices)

[Bioconductor git](https://git.bioconductor.org/packages/epiSeeker)

## History

[Method](/about/archive.md)

The line runs from the first Bioconductor release of epiSeeker on 29 Apr 2026 to 28 Oct 2026 and marks the 1 Bioconductor release it was in.

| Release | Released | R |
| --- | --- | ---: |
| [3.23](/bioc/epiSeeker/v/3.23.md) current | 29 Apr 2026 | 4.6 |

- Entered Bioconductor: Release 3.23, 29 Apr 2026

---

R Observatory is independent of the R Project, CRAN and Bioconductor. The same page for people is at /bioc/epiSeeker, and every address is listed at /llms.txt.
