1.安装GPL相应的R包
不同的GPL进行注释所需要用到的R包是不同的,我们首先要明白我们的GPL应该用什么R包
去Bioconductor官网查询,有各种GPL对应的R包的名称,找到对应关系之后直接在R中安装相应R包
platformMap.txt这个文件通过检索引擎直接搜索就可以在各个网站上下载。这里我在公众号后台也专门提供了这个文件的下载方式,后台回复“PM"即可直接获取下载链接。
platformMap.txt是某位大神整理的,里面包含了各种GPL与其对应的R包,我们可以从这个文件中检索到我们需要用到的R包是什么。
使用方法:
#先用R读取platformMap.txt文件
platformMap <- platformMap <- data.table::fread( "C:/Users/Luotianyu/Documents/platformMap.txt", data.table = F)
#数据储存在文件的bioc_package这一列中
paste0(platformMap$bioc_package[grep(index, platformMap$gpl)], ".db")
不过这个方法有个缺点,就是这个文件最后更新的日期是在2020年,不知道以后还会不会有更新,如果未及时更新,可能有些GPL对应的R包在这个文件中无法收录到。
#安装R包,可以直接安装,这里用了判断
if(!requireNamespace("hugene10sttranscriptcluster.db")){
options(BioC_mirror="https://mirrors.ustc.edu.cn/bioc/")
BiocManager::install("hugene10sttranscriptcluster.db",update = F,ask = F)
}
#加载R包
library(hugene10sttranscriptcluster.db)
#查看有哪些对应关系
ls("hugene10sttranscriptcluster.db")
#获取探针和基因的对应关系:这是探针注释的关键步骤
probe2symbol <- toTable(get("hugene10sttranscriptclusterSYMBOL"))
#另一种写法:probe2symbol <- toTable(hgu133plus2SYMBOL)
#除了注释SYMBOl还能注释ENTREZID
probe2entrezid <- toTable(hgu133plus2ENTREZID)
#合并
probe2id <- merge(probe2symbol2, probe2entrezid, by="probe_id")
#看一下探针有多少个
length(unique(probe2symbol_df$probe_id)) #结果:19870个。
#看一下这么多行中,基因名称是否有重复
length(unique(probe2symbol_df$symbol)) #结果:18859行。