biomaRt 包学习,在做转录组分析中常见的就是 ID 转换,最基本的 gene id,各个数据库又存在不同的 ID,如 Entrez ID 等等。
biomaRt 是基因所有类型转换工具。
基本操作
## 第一步:提前设置想要使用的数据库
useMart(biomart, dataset, host="www.ensembl.org",
path="/biomart/martservice", port=80, archive=FALSE, ssl.verifypeer =
TRUE, ensemblRedirect = NULL, version, verbose = FALSE)
# Biomart:指定连接的BioMart数据库名称 listMarts()查看存在哪些数据库
# dataset:进一步选择上一个数据库里面的子数据集 listDatasets()函数查看
mart = useMart(’ensembl’) ###制定选择的数据库
listDatasets(mart) ###查看所有的子集
searchDatasets(mart = ensembl, pattern = "hsapiens") ####查找人类的数据库
## 得到检索结果
getBM(attributes, filters = "", values = "", mart, curl = NULL,
checkFilters = TRUE, verbose = FALSE, uniqueRows = TRUE, bmHeader = FALSE,
quote = "\"")
biomaRt包实现不同物种之间同源基因转换
listMarts() # 查看数据库
listDatasets(human) # 查询当前数据库所含的基因组注释
convertMouseGeneList <- function(x){
require("biomaRt")
human <- useMart('ensembl',dataset = "hsapiens_gene_ensembl")
mouse <- useMart('ensembl',dataset = "mmusculus_gene_ensembl")
genesV2 <- getLDS(attributes = c("mgi_symbol"),
filters = "mgi_symbol",
values = x, mart = mouse,
attributesL = c("hgnc_symbol"),
martL = human, uniqueRows = T)
humanx <- unique(genesV2[,2])
print(head(humanx))
return(humanx)
}