一般来说,GEO数据库的每个GPL平台都有对应的网页,而且可以获取其详细信息的txt文本文件,比如:https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GPL6244
就是如下所示:

下载一个txt文本文件
如果大家点击上面的链接,就会下载一个txt文本文件,相当于是 https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?mode=raw&is_datatable=true&acc=GPL6244&id=17930&db=GeoDb_blob144 里面的链接下载内容。
但是有一些 平台可能是没有这样的鼠标可以点击的地方,比如:https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GPL16956

没有这样的鼠标可以点击的地方
主要是因为它是 Agilent-045997 Arraystar human lncRNA microarray V3 ,其实里面的信息本来就没有基因名字。。。。
这个时候有一个办法是使用 idmap 函数 :
library(GEOquery)
gpl <- getGEO('GPL16956', destdir=".")
colnames(Table(gpl))
ids=idmap('GPL16956','pipe')
head(ids)
ids=ids[ids$symbol != '',]
cg = annoGene(ids$symbol,'SYMBOL','human')
head(cg)
ids=merge(ids,cg,by.x='symbol',by.y = 'SYMBOL')
head(ids)
tail(sort(table(ids$biotypes)))
ids=ids[ids$biotypes=='protein_coding',]
dat=pd_dat
ids=ids[,c(2,1)]
table(group_list)
save(dat,ids,group_list,file = 'probeM.Rdata')
我注意到,大家没办法在里面跟前面的GPL6244平台一样的下载GPL16956平台的txt文本文件,主要是因为没有鼠标点击的地方,但是实际上我们的网页链接下载的网页是有规律的, https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?mode=raw&is_datatable=true&acc=GPL6244&id=17930&db=GeoDb_blob144
GEO (Gene Expression Omnibus) 是由美国国立生物技术信息中心 (NCBI) 维护的一个公开的基因表达数据库。在 GEO 中,数据主要被组织为三种类型的记录:平台 (GPL)、样本 (GSM) 和系列 (GSE)。
在 GEO 的网站上,你可以通过 URL 直接访问这些记录。URL 的格式如下:
在以上的 URL 中,"xxx" 需要被替换为你想要查看的记录的具体编号。例如,如果你想要查看 GPL96 这个平台,你可以访问 https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GPL96 。
前面的规律很容易理解,但是我们想要的是GEO数据库的每个GPL平台对应的详细信息获取txt文本文件的规律,就让人费解了,因为 https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?mode=raw&is_datatable=true&acc=GPL6244&id=17930&db=GeoDb_blob144 里面有一些很难解释的地方,所以我求助了我们《生信技能树》的元老“甲鱼”,帮我解析了它的规律。
果然,在 https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi 就可以看到:
所以,很容易构建:
这个时候仅仅是需要替换里面的GPL的信息即可,当然了,前提是,网络得好,因为是geo数据库,在海外。。。。