Skip to content

convertid

0.4.0Package record

Convert Gene IDs Between Each Other and Fetch Annotations from Biomart

2packages depend
5.8Kdownloads / year
–test coverage
13/13flavors OK

Overview

About

Gene Symbols or Ensembl Gene IDs are converted using the Bimap interface in 'AnnotationDbi' in convertId2() for the most common use cases in data analysis. The main function in the package is convert.bm() which queries BioMart using the full capacity of the API provided through the 'biomaRt' package. Presets and defaults are provided for convenience but all "marts", "filters" and "attributes" can be set by the user. Function convert.alias() converts Gene Symbols to Aliases and vice versa and function likely_symbol() attempts to determine the most likely current Gene Symbol.

Changes in 0.4.0

New features

  • convertId2() gained an output argument and can now convert to Entrez Gene IDs in addition to Gene Symbols and Ensembl Gene IDs. output = "auto" keeps the previous behaviour; "symbol", "ensembl" and "entrez" force the return type regardless of the input type. Entrez output is useful for offline, network-independent retrieval, e.g. for KEGG pathway enrichment.
  • get.bm() and convert.bm() gained a biomart.fallback argument. When the primary host fails, the Ensembl mirror sites are tried in turn. Set it to NULL to disable fallback.
  • get.bm() and convert.bm() gained a chunk.size argument. Large ID lists are split into chunks to avoid server timeouts. Set it to Inf to disable chunking.
Show all changes in 0.4.0Hide the rest of the changes in 0.4.0
  • todisp2() gained biomart.fallback and chunk.size as well, and now degrades gracefully: if every BioMart host fails it falls back to the data frame in lab, or to convertId2(), instead of aborting.
  • get.bm() now detects versioned Ensembl gene IDs (e.g. ENSG00000111199.5) in the input and stops with an informative message, since BioMart's ensembl_gene_id filter expects unversioned IDs.
  • likely_symbol() caches the HGNC table for the duration of the R session and gained a refresh argument to force a fresh download. An index_threshold argument controls when inverted indices are built for batch lookups.

Bug fixes

  • convert.alias() checked for org.Hs.eg.db even when species = "Mouse", producing a misleading error message.
  • likely_symbol() returned different results above and below index_threshold: the indexed path recorded only the first alias of a matched gene, so a query naming any later alias was returned unresolved. The query itself is now trimmed as well, so a padded symbol still matches.
  • convertId2() aborted on input consisting entirely of NA, and on empty input. It now returns an all-NA result of the same length.
  • unify_gene_ids() returned NA for every hgnc_symbol when all BioMart hosts failed but the AnnotationDbi lookup succeeded. The AnnotationDbi result was recorded in a separate column and never promoted into hgnc_symbol, so the degradation to "AnnotationDbi results only" that the documentation and the verbose output describe did not actually take place.
  • unify_gene_ids() could abort with "NAs are not allowed in subscripted assignments" when the gene symbol column contained NA.
  • The deduplication filters could fabricate a row: an NA in a row-selection condition does not drop the row but yields one filled with NA, which could then be taken for the single surviving candidate of its group. One filter could also abort outright on an NA gene name.
  • The Ensembl-placeholder fix in the deduplication step never ran in ENSG-only mode, where there is no gene symbol column.
  • convert.bm() accepts both "row.names" and "rownames" as the special value of id selecting the row names. Only the former worked, while the documentation named the latter.
  • .with_biomart_fallback() treated a NULL return value from a successful query as a failed host, and reported an unhelpful error when no host was configured at all.
  • get.bm() aborted on R >= 4.2 when biom.data.set was given as a multi-element vector of user-supplied data set names.
  • likely_symbol() aborted when a query containing | could not be resolved. Such a query is now returned unchanged, as any other unresolved symbol is.

Documentation

  • Documented the previous_symbol column of likely_symbol() and corrected the column list for output = "all".
  • Corrected the return value description of unify_gene_ids(): the intermediate lookup columns are dropped unless keep_intermediates = TRUE.

Internal

  • Extracted the deduplication filters, the AnnotationDbi lookup helpers and the HGNC field tokeniser into documented, individually testable unexported functions.
  • Test helpers no longer live in R/, and BioMart availability is probed with an actual connection rather than a port-level check.
  • AnnotationDbi moved from Depends to Imports. The package imports everything it needs from it, so nothing changes for the functions in this package, but library(convertid) no longer attaches AnnotationDbi to the search path. Code that relied on that side effect should call library(AnnotationDbi) itself.
  • The test suite uses the third edition of testthat. URL and BugReports fields were added to DESCRIPTION.

From NEWS.md in the release

Install

Health

CRAN checks
13OK
Slowest check: 5.2 min · r-oldrel-macos-x86_64
Status changes
  • OK13 OK2026-09-04
  • ERROR12 OK, 1 ERROR2026-08-31
  • OK13 OK2026-08-27
  • ERROR12 OK, 1 ERROR2026-08-25
  • OK13 OK2026-08-05
Show 9 earlier changesHide 9 earlier changes
  • NOTE12 OK, 1 NOTE2026-08-01
  • OK13 OK2026-06-27
  • ERROR12 OK, 1 ERROR2026-06-21
  • OK13 OK2026-06-09
  • ERROR12 OK, 1 ERROR2026-06-08
  • OK12 OK2026-04-25
  • NOTE13 OK, 1 NOTE2026-04-13
  • ERROR12 OK, 1 NOTE, 1 ERROR2026-04-12
  • NOTE13 OK, 1 NOTE2026-03-10
Advisories

none known

Documentation

In release 0.4.0
READMENoVignettesNoNEWSYes · 67% structured · mentions 0.4.0Citation fileNoWebsitenot declared in DESCRIPTION
Help pages
42 (35 internal)includes a package overview page
Examples that run
0%1 only when donttest examples are enabled (R CMD check --as-cran) · 11 never run
Exported functions with examples
100%
Documented parameters
95%
Return-value docs
100%
Help pages citing references
0%

Downloads

5.8K
CRAN downloads in the past year
Rank #5,964 · ~16/day · ~480/mo
Daily download trend is not available in this view yet.
49030 days
1.4K90 days
5.8K1 year
Compare downloads with other packages →
Also on210 r2u

Repository

1Stars
0Forks
0Open issues
0Open PRs
0Releases
111Commits
1Commit identities
License file reads as GPL-3.0 · 111 commits · Last activity 2026-08-24
Responsiveness
not measured

Commits over time

2026-08-30 · 1112026-09-15 · 111
PracticesBeta

Checks run against github.com/vfey/convertid on 2026-10-18.

No development-tooling practices detected in the upstream repository.

How this is detected·Detection ruleset v3 (2026-09-26)

Dependencies

Declared dependencies
15 external dependencies (excludes base and recommended)

Installing convertid adds 21 packages (16 with compiled code, 19 MB of source tarballs). Heaviest: stringi 11 MB, Rcpp 1.8 MB, openssl 1.1 MB. 3 more not on CRAN are not measured.

Depends (1)
R >= 3.5.0
LinkingTo (0)
none
Enhances (0)
none
Reverse dependencies
2direct
0indirect
Imports 2
Depends, Imports or LinkingTo, most downloaded first

People & History

People (2)
Author, Maintainer since 0.1.1 (2021)
Releases (14)

Pick two releases to compare their code metrics.

Show 4 earlier eventsHide 4 earlier events
  • 0.1.3
    record
    2021-09-13 · diff ↗
  • 0.1.2
    record
    2021-09-02 · diff ↗ ·
    added 1 export
    likely_symbol
  • 0.1.1
    record
    2021-08-21
  • R
    R 4.1.0 released · 2021-05-18

Package metadata

First published
2021-08-21
Total releases
14 / 5 yrs
License
GPL-3 OSI
Minimum R
≥ 3.5.0
Download size
57 KB

Cite

Cite this package

Run in R for the authors' preferred citation:

citation("convertid")
Fey, V., & Edgren, H. (2026). convertid: Convert Gene IDs Between Each Other and Fetch Annotations from Biomart (Version 0.4.0) [Computer software]. https://doi.org/10.32614/CRAN.package.convertid

This package has no citation file, so citation() returns this entry built from DESCRIPTION.

Cite the 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 convertid version 0.4.0 [Data set]. HJJB, LLC. Data release v2026-10-22. https://doi.org/10.5281/zenodo.21843040

From data release v2026-10-22, which the citation names so these numbers can be found later. More on citing and the projects behind them.

Report a problem with this page →

Privacy choices

These apply to this browser and are stored on this device only. Nothing about your choice is sent to us.

Read the privacy policy