GPL13607平台的LINC01666的探针到底应该是哪个

你只需要去查询gencode数据库,就可以看到LINC01666的的坐标是已知的, ENSG00000279579 chr21 8759077 8761335,长度也就是2kb多一点而已,所以在上面设计探针的话应该是不会太多的。请大家记住这个坐标:chr21:8759077-8761335

最近有粉丝反映在挖掘一个公共数据的时候,发现这个芯片平台的LINC01666的探针注释可能是错的,平台如下所示:

使用annoprobe包拿到该平台的注释信息

为了方便大家对表达芯片的探针ID进行注释,我写一个精简包。也在:芯片探针ID的基因注释以前很麻烦 和 :芯片探针序列的基因注释已经无需你自己亲自做了, 里面详细介绍了。如果你想使用的话,最好是先看看哈!

其实最重要的是idmap函数,安装方法说到过:芯片探针序列的基因注释已经无需你自己亲自做了, 使用起来也非常简单:

library(AnnoProbe)
ids=idmap('GPL570',type = 'soft')
head(ids)

仅仅是一句话,就拿到了这个平台的探针的注释信息。需要注意的是,这个函数的type参数,其实是有3个选择,这里我演示的是选择soft这个来源的基因注释信息。

并不是所有的平台都是有soft注释,也不是所有的平台都被我的这个工具囊括哦。

# Agilent-028004 SurePrint G3 Human GE 8x60K Microarray (Feature Number version)
# https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GPL13607
rm(list = ls())
library(AnnoProbe)
# 如果GPL平台提供注释,就使用这个方法
library(GEOquery)
i='GPL13607'
gpl <- getGEO( i , destdir=".")
save(gpl,file = 'GPL13607.Rdata' ) 
load('GPL13607.Rdata')
library(GEOquery)
colnames(Table(gpl))
head(Table(gpl))
tmp=Table(gpl)
write.table(tmp,file = 'GPL13607.txt',sep = '\t',quote=F,row.names = F)
ids=Table(gpl)[,c(1,6)]
ids2=ids
head(ids2)

## 如果GPL平台没有提供,就使用我的注释
ids3=idmap(gpl='GPL13607',type = 'pipe')
head(ids3)
length(unique(ids2[,1]))
length(unique(ids3[,1]))

检查发现LINC01666的探针的确是冲突的

比如我注释A_19_P00803024代表的序列 AGTTCTTCCCTGGAAACTAGGTCTCGTATAAACTTCTGTAAATGCGACCCAGGAGGACTA 按照道理应该是可以注释到LINC01666这个基因的。但是GPL里面的信息如下:

7121 A_19_P00803024 0 
lincRNA:chr1:142789202-142921002_F 
lincRNA:chr1:142789202-142921002 forward strand 
hs|chr1:142890398-142890457 
AGTTCTTCCCTGGAAACTAGGTCTCGTATAAACTTCTGTAAATGCGACCCAGGAGGACTA 
lincRNA

这个就是很诡异了,GPL里面显示的是 lincRNA:chr1:142789202-142921002 ,那么这个探针序列,应该是可以比对到这个坐标吧,可是我blat了一下,分析:

image-20200201100307616

目瞪狗呆!一个探针序列,就60个碱基,比对到了那么多位置,而且都是100%的比对情况,哔了狗了!可以看到gencode数据库的LINC01666的基因坐标 chr21:8759077-8761335 是包含了上面的第3个比对情况的,所以我们把这个探针注释到LINC01666基因是没有错误的!

但是,为什么gpl里面显示它这个探针是 lincRNA:chr1:142789202-142921002 ,几乎可以肯定gpl里面的信息是错的!

探针A_19_P00811275

再看另外一个探针 A_19_P00811275 , 我的注释结果是:AC138776.1 transcribed_unprocessed_pseudogene ENSG00000286406 chr22 11827523 11910358 ,但是GPL里面的信息是:

29278 A_19_P00811275 0 
lincRNA:chr1:142789202-142921002_R 
lincRNA:chr1:142789202-142921002 reverse strand 
hs|chr1:142790275-142790216 
TAGAATTCGCCCTACTACTACCCTTACTGTGAGCCCTTCAAACAATCTGATACTAATAAT 
lincRNA

同样的道理,我们看看blat比对结果:

image-20200201100455629

没啥好说的,我仍然是对的!

探针A_33_P3416922

最后看看探针A_33_P3416922,在GPL注释好奇怪,是chrUn开头的,通常这样的话,这个探针就可以剔除了,因为都不在常规染色体上面,到时候即使分析出来,这个探针很重要,后续实验验证,或者生物学解释都是苍白无力的!

55797 A_33_P3416922 0 
A_33_P3416922 Unknown 
hs|chrUn_gl000240:000037946-000038005 ACACCTTTCCTTCTATCCAAGCCCTCATATTATGCTCTGACAATAAATTGGGCTTTTCCA 
A_33_P3416922

那么,同样的,我给它的注释是LINC01666的基因坐标 chr21:8759077-8761335 ,blat可以看到,也是合理的!

image-20200201100550182

总结一下

从一个lncRNA的角度,人工审核了3个探针,发现GPL注释是有问题的,相比起来,我的R包注释要准确可靠的多!

欢迎大家继续试用体验哈。

为了方便大家对表达芯片的探针ID进行注释,我写一个精简包。也在:芯片探针ID的基因注释以前很麻烦 和 :芯片探针序列的基因注释已经无需你自己亲自做了, 里面详细介绍了。如果你想使用的话,最好是先看看哈!

其实最重要的是idmap函数,安装方法说到过:芯片探针序列的基因注释已经无需你自己亲自做了, 使用起来也非常简单。

芯片探针ID注释免费做

GEO数据库挖掘,我写了大量教程,其实卡脖子的就两个地方,首先是样本进行合理的分组,需要生物学背景和编程技能。另外一个就是探针序列的基因注释啦,这个我可以帮助大家。本次活动我可以帮你免费做一次 表达芯片的探针ID注释

我们推文里面提到的各种各样的数据分析环节都是我非常有经验的,比如我在lncRNA的一些基础知识 ,和lncRNA芯片的一般分析流程 介绍过的那些图表,以及下面的目录的分析内容 对我来说是举手之劳,希望可以帮助到你!

还是老规矩,发送数据分析要求,以及简短的项目描述到我的邮箱 jmzeng1314@163.com

邮件正文最好是加上你是啥时候认识生信技能树的哦,或者其它一些寒暄的话,自我介绍也行。主要是考虑到可能想免费分析数据的朋友很多,所以会根据你的来信,我主观判定一个优先级哦。目前我有20多个愿意长期在我的指导下进行数据探索的学徒,等我的团队扩大到200人,我们应该是可以做到数据分析全部免费,敬请期待哈!

Comments are closed.