欢迎光临散文网 会员登陆 & 注册

一把钥匙配一把锁,专属GPL16686芯片的ID转换

2023-01-05 09:50 作者:小云爱生信  | 我要投稿

尔云间  一个专门做科研的团队

原创 小果 生信果

小果今天遇到了一个特别的事情,就是找数据的时候,发现GPL16686的探针号不能直接转换为基因symbol,小果去搜了一下,发现原来这个芯片需要专门的转换方式


下面就让我们一起来看一下这个代码吧

代码如下:


rm(list = ls())
options(stringsAsFactors = F)

#读入soft文件
library(GEOquery)
gse83452 <- getGEO(filename = "GSE83452_family.soft.gz",destdir = ".") #这个文件需要自己去手动下载,一般会比较大,小云的这个是75.9M,这是压缩后的体积呦。
dim(gse83452) #这里小云在做的时候,得到的其实是NULL,但是不影响后面的结果

y <- gse83452@gpls$GPL16686@dataTable@table #这一步就是把需要的部分提取出来。
dim(y)

head(y)
y[1:4,1:8]

#### id conversion
library(org.Hs.eg.db) #启动程序包,ID转换的信息就是从这里来的。
library(clusterProfiler)
ENTREZID<- bitr(y[,6], fromType = "ACCNUM",
                toType=c("SYMBOL","ENSEMBL","ENTREZID"),
                OrgDb = org.Hs.eg.db) #这一步就是在进行ID转换了。
ls(package:clusterProfiler)

dim(ENTREZID)
ENTREZID[1:5,1:4]

save(y,ENTREZID,file = "ids.Rdata") #保存一下我们的结果

#ids过滤探针
table(y$GB_ACC %in% ENTREZID$ACCNUM)
y1 <- y[y$GB_ACC %in% ENTREZID$ACCNUM,]
y1[1:5,1:8]
y2 <- y1[,c(1,6)]
names(y2) <- c("probe_id","ACCNUM")

#合并y2与ENTREZID
ids <- merge(y2,ENTREZID,by ="ACCNUM",all=F) #继续合成新文件

ids[1:5,1:5]

dim(ids)

这个是ENTREZID,它们长下面这样,这一步是把原文件里的注释转换成了symbol这种大家都能看得懂的通用ID

图片

这个是ids,这一步加上的是表达矩阵里的ID号,这样就可以直接进行ID的转换了。


这就是今天的主要内容了,虽然比较有局限性,但是也能反应我问处理ID转换时的一些规则,虽然不一定用得到,但也可以先了解一下,毕竟技多不压身嘛。小伙伴们有什们问题欢迎来和小果交流讨论啊。




shengxinguoer

生信果


生信硬核知识解答

和小果一起学生信


一把钥匙配一把锁,专属GPL16686芯片的ID转换的评论 (共 条)

分享到微博请遵守国家法律