zoukankan      html  css  js  c++  java
  • Ensemble ID及转换

    Ensemble ID

    Ensemble ID 是Ensembl 数据库使用的ID标识符,用于标识不同的分子特征,如基因,转录本,外显子,蛋白。大多数据库都有一套自己的ID命名。ID 主要是为消除歧义,在特征注释或数据库更新时也能保持一致。不像人为命名的分子名字,如基因名字那样可能发生改变。就类似于我们的身份证号, 名字方便于平常的交流使用,ID是独一无二的。

    ID 格式

    Ensemble ID 个格式是

    ENS[物种符号][分子特征][独一无二的11位数字]
    

    ENS[物种符号]

    • Ensemble ID 基本上是以ENS开头,后接表示物种的符号, ENSMUS: 表示Mus musculus (Mouse)
    • Homo sapiens 直接以ENS表示
    • 少部分的,以其他开头

    分子特征

    特征符号 特征
    G gene
    T transcript
    E exon
    P protein
    R regulatory feature
    FM Ensembl protein family
    GT gene tree

    根据以上规则,当看到一个Ensemble ID时,我们就可以判断出它来自什么物种,属于什么特征。
    比如:

    ENSMUSG00000000031: 小鼠基因
    ENSMUST00000000031: 小鼠转录本
    ENSMUSP00000000031: 小鼠蛋白
    ENSG00000000031: 人基因
    

    详细的物种符号表示,可以见:

    http://asia.ensembl.org/info/genome/stable_ids/prefixes.html
    

    版本号
    通常,我们还会遇到类似这种ENSMUSG00000000031.2 ,id末尾有小数的情况。这是特征的版本号。当ID所表示的特征有变化时,版本号就会增加。版本号增加规则,详见:

    http://asia.ensembl.org/info/genome/stable_ids/index.html
    

    ID 转换

    ID 转换借助Y叔的clusterProfiler中的bitr(Biological Id TRanslator)。

    ### 安装 clusterProfiler
    if (!requireNamespace("BiocManager", quietly = TRUE))
        install.packages("BiocManager")
    
    BiocManager::install("clusterProfiler")
    

    此外还需要对应物种的基因注释包。注释包可以去下面链接找对应物种安装(有20个):

    http://bioconductor.org/packages/release/BiocViews.html#___OrgDb
    

    以小鼠的的为例,安装:

    if (!requireNamespace("BiocManager", quietly = TRUE))
        install.packages("BiocManager")
    
    BiocManager::install("org.Mm.eg.db")
    

    下面是代码了

    library(clusterProfiler)
    library(org.Mm.eg.db)
    
    ### 以这3个ID为例
    gene.ens.id <- c("ENSMUSG00000028901.1", "ENSMUSG00000051910.2", "ENSMUSG00000051390.3")
    
    ## 有版本号,直接转不行的, 这句代码是去除版本号的
    gene.ens.id <- gsub("\..*", "",  gene.ens.id))
    
    gene.symbol <- bitr(geneID = gene.ens.id, 
                        fromType = "ENSEMBL",
                        toType = c("ENTREZID", "SYMBOL", "GENENAME"),
                        OrgDb = org.Mm.eg.db)
    ---------------------------------------------------------------------------------------------------------
    > gene.symbol
                 ENSEMBL ENTREZID SYMBOL                                            GENENAME
    1 ENSMUSG00000028901    56809  Gmeb1 glucocorticoid modulatory element binding protein 1
    2 ENSMUSG00000051910    20679   Sox6                SRY (sex determining region Y)-box 6
    3 ENSMUSG00000051390    81630 Zbtb22            zinc finger and BTB domain containing 22
    
    • geneID ,需要转换的ID
    • fromType ,当前ID类型
    • toType, 转换成什么ID
    • OrgDb, 注释数据库

    使用keytypes可以查看注释包的所有 ID 类型。

    > keytypes(org.Mm.eg.db)
     [1] "ACCNUM"       "ALIAS"        "ENSEMBL"      "ENSEMBLPROT"  "ENSEMBLTRANS" "ENTREZID"     "ENZYME"       "EVIDENCE"    
     [9] "EVIDENCEALL"  "GENENAME"     "GO"           "GOALL"        "IPI"          "MGI"          "ONTOLOGY"     "ONTOLOGYALL" 
    [17] "PATH"         "PFAM"         "PMID"         "PROSITE"      "REFSEQ"       "SYMBOL"       "UNIGENE"      "UNIPROT"
    
    • ENSEMBL 是 Ensemble gene ID
    • ENSEMBLTRANS 是 Ensemble transcript ID
    • ENSEMBLPROT 是 Ensemble protein ID

    参考

    http://asia.ensembl.org/info/genome/stable_ids/index.html
    http://yulab-smu.top/clusterProfiler-book/chapter5.html#go-over-representation-test

    ps: 欢迎关注

  • 相关阅读:
    好想和这俩妹子一起晒晒太阳
    APP里如何添加本地文本
    Xcode静态检查分析代码
    漫谈iOS程序的证书和签名机制
    CrashMonkey4IOS App测试
    iOS 通信常用小功能
    iOS开发之如何跳到系统设置里的各种设置界面
    从APP跳转到WI-FI
    iOS 微信支付总结
    iOS支付宝支付总结
  • 原文地址:https://www.cnblogs.com/huanping/p/14338230.html
Copyright © 2011-2022 走看看