biomaRt R包使用

将基因名转换为 Ensembl 基因 ID

#加载biomaRt库
library(biomaRt)
listMarts()#显示一下可以连接的数据库
               biomart                version
1 ENSEMBL_MART_ENSEMBL      Ensembl Genes 111
2   ENSEMBL_MART_MOUSE      Mouse strains 111
3     ENSEMBL_MART_SNP  Ensembl Variation 111
4 ENSEMBL_MART_FUNCGEN Ensembl Regulation 111
datasets<-listDatasets(useMart("ensembl")) #查看一下我们要连接的数据库中有哪些数据集
 head(datasets,3)
                       dataset                           description     version
1 abrachyrhynchus_gene_ensembl Pink-footed goose genes (ASM259213v1) ASM259213v1
2     acalliptera_gene_ensembl      Eastern happy genes (fAstCal1.2)  fAstCal1.2
3   acarolinensis_gene_ensembl       Green anole genes (AnoCar2.0v2) AnoCar2.0v2
#连接到ENSEMBL数据库,选择人类基因的数据集
#注意:这里使用的是当前的ENSEMBL数据库版本
mart <- useMart("ensembl", dataset = "hsapiens_gene_ensembl")
#useMart 函数用于建立一个到 BioMart 数据库的连接,在这里是到 Ensembl 数据库的连接。
#第一个参数 "ensembl" 指定了 BioMart 的数据库名称。
#dataset = "hsapiens_gene_ensembl" 参数指定了在数据库中要查询的特定数据集,这里是人类的基因数据集
#将基因名转换为ENSEMBL基因ID
genes <- c("ZNF91")  #这里可以添加一个或多个基因名
gene_ids <- getBM(attributes = c('hgnc_symbol', 'ensembl_gene_id'), 
                  filters = 'hgnc_symbol', 
                  values = genes, 
                  mart = mart)
#连接到Ensembl数据库,选择人类基因的数据集
mart <- useMart("ensembl", dataset = "hsapiens_gene_ensembl")
#列出数据集中的所有可用属性,这样我们就知道attributes中可以选择哪些属性了
attributes <- listAttributes(mart)
#打印结果
print(gene_ids)
  • getBMbiomaRt 包中用于检索数据的函数。
  • attributes 参数指定了我们想要检索的数据列,这里我们请求 HGNC(人类基因命名委员会)的符号和对应的 Ensembl 基因 ID。
  • filters 参数用于指定查询的过滤条件,这里我们告诉 getBM 我们提供的值是 HGNC 的符号。
  • values 参数是一个列表,包含我们要查询的值,这里是我们之前定义的 genes 向量。
  • 最后,mart 参数是我们之前用 useMart 函数创建的 BioMart 数据库连接对象。

整个 getBM 函数的调用是根据 HGNC 符号查询对应的 Ensembl 基因 ID。查询结果会被存储在 gene_ids 变量中,这是一个数据框(data.frame),可以使用 R 的标准函数查看或处理这个数据框

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值