BioMart

参考

R语言biomaRt工具包学习笔记

使用实例

if (!requireNamespace("BiocManager", quietly = TRUE))
  install.packages("BiocManager")
## 由于BioMart由R 3.X构建,而我本地R是4.X,因此这里进行R版本控制
BiocManager::install(version = '3.14')
BiocManager::install("biomaRt")
library(biomaRt)
### 设置查询数据库和数据集,以小鼠为例
ensembl <- useEnsembl(biomart = "genes",   dataset = "mmusculus_gene_ensembl")

运行时最后一行报错

Ensembl site unresponsive, trying useast mirror
Error in bmRequest(request = request, httr_config = httr_config, verbose = verbose) : 
  Gateway Timeout (HTTP 504).

查询后似乎是ensembl.org网址不可用,该包也支持换其他数据库,但我这里没有再进行尝试。希望知道方法的大神帮忙指导。

clusterProfiler

参考

Ensemble ID格式及转换

使用实例

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

BiocManager::install(version = '3.14')
BiocManager::install("clusterProfiler")
BiocManager::install("org.Mm.eg.db")

library(clusterProfiler)
library(org.Mm.eg.db) # 小鼠数据库

### 从rawcount.txt文件读取数据
data <- read.table("rawcounts.txt",head=TRUE)

gene.ens.id<- data['ensemblid']
gene.ens.id<- c(t(gene.ens.id))

## 有的ensembl id有版本号,直接转不行的, 这句代码是去除版本号的
gene.ens.id <- gsub("\\..*", "",  gene.ens.id)
gene.symbol <- bitr(geneID = gene.ens.id, 
                    fromType = "ENSEMBL",
                    toType = c("SYMBOL"),
                    OrgDb = org.Mm.eg.db)
gene.symbol
# 将转化结果保存到文件result.csv
write.table(gene.symbol,"result.csv",row.names=FALSE,col.names=TRUE,sep=",")

此处有33%Ensembl ID未找到对应Symbol

In bitr(geneID = gene.ens.id, fromType = "ENSEMBL", toType = c("SYMBOL"),  :
  33.01% of input gene IDs are fail to map...
Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐