今天新学会了clusterprofiler,把学习过程记录下来。
Clusterprofiler是Y叔开发的一个R包,功能强大,常更新,还有美观的可视化图片。
安装
source("http://www.bioconductor.org/biocLite.R")
biocLite("clusterProfiler")
browseVignettes("clusterProfiler") #查看关于clusterprofiler包的使用文档
library(clusterProfiler) #加载R包
biocLite("org.At.tair.db") #下载物种注释包
library(org.At.tair.db)
下载物种注释包,不同物种要用不同的注释包,支持19个物种的注释
http://bioconductor.org/packages/release/BiocViews.html
利用bitr函数进行基因ID转换
因为clusterprofiler中用的都是EntrezID的基因命名方法(不懂可以去搜索entrezID查一下),要把我们常用的AT2G07678 换为815354这种形式。
有一点需要注意,bitr函数在转换基因id时,提供基因列表的方式应该是向量,而不是列表或数据框,否则会报错
keytypes(org.At.tair.db) #查看注释包中支持的ID转换类型
[1] "ARACYC" "ARACYCENZYME" "ENTREZID" "ENZYME" "EVIDENCE"
[6] "EVIDENCEALL" "GENENAME" "GO" "GOALL" "ONTOLOGY"
[11] "ONTOLOGYALL" "PATH" "PMID" "REFSEQ" "SYMBOL" "TAIR"
x = read.table("tair.txt")
gene = as.vector(as.matrix(x["V1"])) #将数据转化为向量或字符串
gene_ver=bitr(gene,fromType="TAIR",toType="ENTREZID",OrgDb="org.At.tair.db")
head(gene_ver)
write.table(gene_ver, file="EntrezID.txt", append=T, col.names=F, row.names =F)
#将结果保存在文档中,若不需要列表形式,可以改为t(gene_ver),其他不变
(进行ID转换,geneID:输入的geneID, fromType:输入的ID类型, toType:输出的ID类型,OrgDb:注释对象的信息,Drop:去除空值与否)
参考文章:https://mp.weixin.qq.com/s?src=11×tamp=1544585457&ver=1283&signature=KXmQIFl1mrqjfvHyep14UfXPwgT-u9GqPoXYbbDrRcqftLhPsOOwkuf2lMoqoK4rgpDojgbetJ7G7V12FfXtEyYA8SGgiz0Hu7nevFBk8k2Dq2jh6nJABpXyPN7gwW&new=1
https://mp.weixin.qq.com/s?src=11×tamp=1544585457&ver=1283&signature=NKikwejxL692LRMJ2pyFX0s8PS9svpWi6c6ElfNNC4Tyojp3YZieXLPYTgvCMcsDL1n6gP8wbvTjP-k892zo2JB-POC3ZcuCy8FC2ueztM7123sK2R2qnoMUDl2Q&new=1