其他分享
首页 > 其他分享> > RNAseq-GO、biomaRt转换ID

RNAseq-GO、biomaRt转换ID

作者:互联网

O.Sativa选用MSU或者RAPDB这两个数据库的genome和gtf文件,介绍一下MSU的ID,RAPDB的同理。The Rice Annotation Project (RAP)(https://rapdb.dna.affrc.go.jp/index.html)和Rice Genome Annotation Project (RGAP7,MSU)(http://rice.plantbiology.msu.edu/index.shtml)RAP格式为“Os-Chr-g-number”,MSU格式为“LOC_Os-Chr-g-number”。

1 AGRIGO2 http://systemsbiology.cau.edu.cn/agriGOv2/ 支持多种ID,包括MSU
2 RIGW http://rice.hzau.edu.cn/cgi-bin/rice2/enrichment 只支持水稻的转录本ID,可做KEGG
3 PlantGSEA http://structuralbiology.cau.edu.cn/PlantGSEA/analysis.php 只支持MSU ID
4 PANTHER http://www.pantherdb.org/ 可视化漂亮。支持Uniprot ID。MSU ID转换为 Uniprot ID(PlantGSEA)
5 CARMO:http://bioinfo.sibs.ac.cn/carmo/result.php?job_id=1625924324108758969 只更新到 2015年,支持 LOC ID


ID转化

biomaRt

#1.Installation
BiocManager::install("biomaRt")
library(biomaRt)
#2.Data Import
a <- read.csv('testgene.txt',sep = '\t')
#3.getBM做ID转换
#getBM函数,四个参数。 getBM函数唯一用处,做各种ID转换。
#1.filter来控制根据什么东西来过滤,可是不同数据库的ID,也可以是染色体定位系统坐标。
#2.Attributes来控制我们想获得什么,一般是不同数据库的ID。
#3.Values是我们用来检索的关键词向量。
#4.Mart是我们前面选择好的数据库。

#3.1建立与ensemble数据库的链接
#在ensemble plants上能看到所有已提交的物种信息
ensembl = useMart(biomart = "plants_mart",host = "http://plants.ensembl.org")
#查看ensemble plants都有哪些物种信息,并设置为该物种信息。
dataset <- listDatasets(mart = ensembl)
head(dataset)
ensembl = useMart(biomart = "plants_mart",host = "http://plants.ensembl.org",dataset="osativa_eg_gene")
#查看该dataset上都有哪些属性,方便后面做添加
attributes <- listAttributes(ensembl)

a=c(“LOC_Os07g34570”,“LOC_Os05g12630”,“LOC_Os12g31000”,“LOC_Os09g37910”)无结果
RAP:

3.2 正式做ID转换及信息添加
一般Ensemble ID以E开头的,RAP号是水稻的Ensemble ID。参数external_gene_name是平时称呼的基因名字。

supplement <- getBM(attributes =c("ensembl_gene_id",'external_gene_name',"description"),filters = "ensembl_gene_id",values = a,mart = ensembl)

转换成GO ID并附上GO描述

supplements <- getBM(attributes =c("ensembl_gene_id",'go_id','goslim_goa_description'),
 filters = "ensembl_gene_id",values = a,mart = ensembl)

转换成NCBI ID

supplements <- getBM(attributes =c("ensembl_gene_id",'entrezgene_id'),
 filters = "ensembl_gene_id",values = a,mart = ensembl)

ClusterProfile

list_de_gene_clusters <- split(de_gene_clusters$ENTREZID, 
                               de_gene_clusters$cluster)


# Run full GO enrichment test
formula_res <- compareCluster(
  ENTREZID~cluster, 
  data=de_gene_clusters, 
  fun="enrichGO", 
  OrgDb="org.Mm.eg.db",
  ont          = "BP",
  pAdjustMethod = "BH",
  pvalueCutoff  = 0.01,
  qvalueCutoff  = 0.05
)

# Run GO enrichment test and merge terms 
# that are close to each other to remove result redundancy
lineage1_ego <- simplify(
  formula_res, 
  cutoff=0.5, 
  by="p.adjust", 
  select_fun=min
)

https://www.jianshu.com/p/bcdbf80701e2
https://www.jianshu.com/p/480c46ec1629

标签:RNAseq,LOC,http,biomaRt,MSU,数据库,RAP,GO,ID
来源: https://blog.csdn.net/geekfocus/article/details/121381330