Detect Annotation Releases and Repair Gene Names

Detects the species and the 'Ensembl' < https://www.ensembl.org> or 'GENCODE' < https://www.gencodegenes.org> annotation release associated with a set of gene or transcript identifiers by scoring them against a bundled fingerprint of each release. Identifiers are then converted to gene names using the matching release. Gene symbols that spreadsheet software turned into dates or numbers ('SEPT9' to '9-Sep') are restored to the spelling of the chosen release. Also retrieves genes by class (mitochondrial, sex-linked, protein-coding, ribosomal, transfer RNA, long non-coding RNA), exon-union gene lengths, 'Entrez' cross-references, and orthologs in another species from 'Ensembl Compara'.


genevintage

R-CMD-check

Genevintage supports easy conversion between gene ids and gene names for any genome and GTF build.

ids <- c("ENSG00000141510.16", "ENSG00000284733", "ENSG00000012048")

Using a reverse index, genevintage can detect the actual release:

head(DetectRelease(ids), 3)
#>        species  source release assembly feasible   dist n_index
#> 1 homo_sapiens gencode      26       38     TRUE 9.6486   58219
#> 2 homo_sapiens gencode      27       38     TRUE 9.6505   58288
#> 3 homo_sapiens gencode      28       38     TRUE 9.6534   58381

Gene names can be retrieved with a single command:

GeneID2Name(ids)
#> Best fingerprint match: homo_sapiens, gencode release 26 (assembly 38) -- 79 candidates score within 10%
#> [1] "TP53"            "ENSG00000284733" "BRCA1"

Also does

DetectSpeciesNames(c("TP53", "BRCA1", "MYC"), idx)    # idx <- BuildSymbolIndex(...); detect from symbols
m <- GeneID2Name(m)                                   # rownames(m), id -> name
CorrectGeneNames(c("9-Sep", "1-Dec"), species = "human", release = 116) # undo Excel's date/float autocorrect
GeneIDs(c("TP53", "BRCA1"), species = "human")        # name -> id, and back
AnnotateGenes(rownames(counts))                       # full record: symbol, biotype, coords
MitoGenes(rownames(counts)); SexGenes(species = "human"); RibosomalGenes(species = "human")
SexGenes(species = "chicken", which = "W")            # per-clade: X/Y, Z/W, or none (yeast)
GenesByBiotype("lncRNA", species = "mouse")           # any Ensembl/GENCODE biotype
HemoglobinGenes(species = "human"); MHCGenes(species = "mouse")
CompareReleases("human", from = 110, to = 116)        # added / removed / renamed genes
Orthologs(ids, to = "mouse")                          # common names resolve too

Every function above is also available under its snake_case name (GeneID2Name() is also geneid2name(), MitoGenes() is also mito_genes(), and so on) for callers who prefer that style.

Install

# install.packages("remotes")
remotes::install_github("saketlab/genevintage")

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("genevintage")

0.1.3 by Saket Choudhary, 5 hours ago


https://genevintage.saketlab.org/R/, https://github.com/saketlab/genevintage


Report a bug at https://github.com/saketlab/genevintage/issues


Browse source code at https://github.com/cran/genevintage


Authors: Saket Choudhary [aut, cre] (ORCID:


Documentation:   PDF Manual  


MIT + file LICENSE license


Imports stats, tools, utils

Suggests curl, Matrix, knitr, methods, rmarkdown, spelling, testthat, withr


See at CRAN