【问题标题】:Convert GENCODE IDs to Ensembl - Ranged SummarizedExperiment将 GENCODE ID 转换为 Ensembl - Ranged SummarizedExperiment
【发布时间】:2017-07-03 20:32:26
【问题描述】:

我有一个表达式集矩阵,其中行名是我认为是格式的 GENCODE ID,例如 “ENSG00000000003.14” “ENSG00000000457.13” “ENSG00000000005.5”等等。 我想将这些转换为gene_symbol,但我不确定最好的方法,特别是因为我认为是版本的“.14”或“.13”。我是否应该首先修剪点后的所有 ID,然后使用 biomaRt 进行转换?如果是这样,最有效的方法是什么?有没有更好的方法来获取gene_symbol?

非常感谢您的帮助

【问题讨论】:

  • 也许,这就是你要找的东西:stackoverflow.com/questions/28543517/…。如果您在此处发布,您可能会在这里获得更多帮助:biostars.org
  • 这些是 ensembl id,biomart 可能是您的最佳选择。这是之前的问题,您只需要相应地更改attributes。 biomart教程很有帮助\
  • 感谢您的回复。我试过 biomaRt,但它不能将其识别为 Ensembl 基因 ID,因为 ensembl 基因 ID 末尾的“点号”(例如“ENSG00000000003**.14**”)

标签: r annotations biomart


【解决方案1】:

如前所述,这些是 ENSEMBL ID。首先,您需要检查您的表达式集对象并确定它用于注释的数据库。有时,ID 可能会映射到较新(更新的)注释数据库中的不同基因符号。

不管怎样,假设ID是属于人类的,你可以使用这段代码很容易地得到基因符号。

library(org.Hs.eg.db)       ## Annotation DB
library(AnnotationDbi)

ids <- c("ENSG00000000003", "ENSG00000000457","ENSG00000000005")
gene_symbol <- select(org.Hs.eg.db,keys = ids,columns = "SYMBOL",keytype = "ENSEMBL")

您可以尝试使用 org.Hs.eg.db 或您的表达式集使用的确切 db(如果该信息可用)。

【讨论】:

    【解决方案2】:

    感谢您的帮助。我的问题是去掉每个 ensembl 基因 id 末尾的 .XX 版本。我认为有一种更直接的方法可以从具有版本号(基因代码基本注释)的整体基因 id 到基因符号。最后我做了以下事情,似乎正在工作:

    df$ensembl_gene_id <- gsub('\\..+$', '', df$ensembl_gene_id)
    
    library(biomaRt)
    mart <- useDataset("hsapiens_gene_ensembl", useMart("ensembl"))
    genes <- df$ensembl_gene_id
    symbol <- getBM(filters = "ensembl_gene_id",
                    attributes = c("ensembl_gene_id","hgnc_symbol"),
                    values = genes, 
                    mart = mart)
    df <- merge(x = symbol, 
                  y = df, 
                  by.x="ensembl_gene_id",
                  by.y="ensembl_gene_id")
    

    【讨论】:

      猜你喜欢
      • 2020-09-25
      • 1970-01-01
      • 2015-04-17
      • 1970-01-01
      • 2017-02-28
      • 1970-01-01
      • 1970-01-01
      • 2020-01-27
      • 1970-01-01
      相关资源
      最近更新 更多