GPL頁面表格奇奇怪怪的更新
0.因數(shù)據(jù)庫和R包更新導(dǎo)致的問題
從GPL頁面上下載注釋表格,是獲取探針注釋的方法之一合瓢,通常是找不到注釋包的第二選擇坦胶。
更新之前的下載方式是(2022年之前我們的直播課堂上是這樣講的,2022年以及之后的課上已經(jīng)更新好了):
library(GEOquery)
a = getGEO("GPL570",destdir = ".")
b = a@dataTable@table
ids2 = b[,c("ID","Gene Symbol")]
更新之前:運(yùn)行g(shù)etGEO這句代碼晴楔,函數(shù)會(huì)自動(dòng)讀取“GPL570.soft”文件顿苇,得到一個(gè)GPL對(duì)象。
更新之后: GPL570.soft文件從原來的75M變成了現(xiàn)在的幾十G税弃,而且所有的平臺(tái)soft都被壓縮成了gz格式纪岁。壓縮一下倒是不影響下載,但導(dǎo)致了工作目錄下確實(shí)有GPL570.soft文件的情況下则果,函數(shù)也不識(shí)別幔翰,而是從網(wǎng)頁上去下載GPL570.soft.gz漩氨,幾十G,實(shí)在是duck不必遗增。
1.小的文件才菠,方法不變
當(dāng)然,GPL570表格文件是本來就大(表格的大小在網(wǎng)頁上有寫)贡定,對(duì)于比較小的表格文件可以繼續(xù)使用原來的方法:
library(GEOquery)
a2 = getGEO("GPL7759",destdir = ".")
class(a2)
## [1] "GPL"
## attr(,"package")
## [1] "GEOquery"
2.針對(duì)大文件的新方法
針對(duì)這種比較大的注釋文件赋访,需要更改一下策略:
從GPL570的網(wǎng)頁上拉到最后,有一個(gè)文件:
從網(wǎng)頁上把它下載下來缓待,放在工作目錄蚓耽,本地讀取。
b = read.table("GPL570-55999.txt",header = T,
? ? ? ? ? ? ? ? quote = "\"",sep = "\t",check.names = F)
ids2 = b[,c("ID","Gene Symbol")]
colnames(ids2) = c("probe_id","symbol")
head(ids2)
##? ? probe_id? ? ? ? ? symbol
## 1 1007_s_at DDR1 /// MIR4640
## 2? 1053_at? ? ? ? ? ? RFC2
## 3? ? 117_at? ? ? ? ? ? HSPA6
## 4? ? 121_at? ? ? ? ? ? PAX8
## 5 1255_g_at? ? ? ? ? GUCA1A
## 6? 1294_at MIR5193 /// UBA7
3.備用方法
只要不是特別大的文件旋炒,可以先試試getgeo下載步悠,如果網(wǎng)絡(luò)不好導(dǎo)致失敗,就從網(wǎng)頁下載soft格式的文件瘫镇。
點(diǎn)開上面箭頭所指的地方鼎兽,就能網(wǎng)頁下載soft文件了,文件大小還可以接受铣除,不至于有幾個(gè)G的谚咬。
b2 = getGEO(filename = "GPL7759_family.soft.gz",destdir = ".")
class(b2)
## [1] "GPL"
## attr(,"package")
## [1] "GEOquery"
GEO數(shù)據(jù)挖掘