美文网首页
gene name和gene ID之间的转换

gene name和gene ID之间的转换

作者: 坐看云起时zym | 来源:发表于2019-10-25 21:23 被阅读0次

    在实际应用中,我们经常需要在gene name和gene ID之间进行转换。当需要处理的基因数量很少时,我们可以直接从NCBI(https://www.ncbi.nlm.nih.gov)上搜索,但当要处理的基因很多时,这显然不是一个明智的选择。最近我发现一个叫clusterProfiler的package可以很好的处理这个问题。

    首先我们先安装这个包,安装这个包的时候需要用Biomanager。

    BiocManager::install('clusterProfiler')
    

    我们尝试从gene name转为gene ID
    首先读入gene name文件

    library(clusterProfiler)
    
    Tibetan_selected = read.table('genename.txt',header = FALSE,sep="\n")
    genename = vector(mode="character",length=0)
    
    for(i in 1:dim(Tibetan_selected)[1]){
      genename[i] = as.character(Tibetan_selected[i,1])
    }
    
    ![genename_geneID.png](https://img.haomeiwen.com/i16785064/14306861cd35e17c.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

    进行转换,如果是人的基因的话,数据库选择org.Hs.eg.db。对于其他物种,可以参考http://bioconductor.org/packages/release/BiocViews.html#___OrgDb。比如Mouse对应的就是"org.Mm.eg.db", 接下来我们安装mouse的package即可。

    BiocManager::install('org.Mm.eg.db')
    

    如果是从gene name转为gene ID的话,fromType和toType分别设定为SYMBOL和ENSEMBL。反之亦然。

    #人的数据库 org.Hs.eg.db
    name_ID = bitr(genename, fromType="SYMBOL", toType="ENSEMBL", OrgDb="org.Hs.eg.db")
    
    genename_geneID.png

    ps:匹配的成功率并不是100%,对于没有匹配上的基因可能就需要手动搜索了。

    保存数据

    #save the data
    write.csv(name_ID,'root/name_ID.csv')
    

    ps: 对于从gene name向gene ID部分gene匹配失败的问题,可能是因为gene name并不是HGNC的Official Symbol。这时可以手动去NCBI上查找。比如“ATPIF1”在HGNC中的Official Symbol应该是ATP5IF1。

    相关文章

      网友评论

          本文标题:gene name和gene ID之间的转换

          本文链接:https://www.haomeiwen.com/subject/pzhsvctx.html