美文网首页GEO数据库
GEO | series matrix批量高速下载

GEO | series matrix批量高速下载

作者: 生命数据科学 | 来源:发表于2022-12-30 00:03 被阅读0次

在大规模分析GEO数据库的过程中,迫切需要批量、高速下载series matrix文件,而在下载数据过程中,因为网络等原因,各种报错层出不穷,如何来解决,一块来看看~

1. 常见报错

Error in checkForRemoteErrors(val) : 
  one node produced an error: Timeout was reached: [ftp.ncbi.nlm.nih.gov] Operation timed out after 10010 milliseconds with 0 out of 0 bytes received

Error in open.connection(x, "rb") : 
Timeout was reached: [ftp.ncbi.nlm.nih.gov] Operation timed out after 10013 milliseconds with 0 out of 0 bytes received

Warning message:
In .Internal(identical(x, y, num.eq, single.NA, attrib.as.set, ignore.bytecode,  :
  closing unused connection 3 (https://ftp.ncbi.nlm.nih.gov/geo/series/GSE31nnn/GSE31733/matrix/)

2. 输入数据

仅需要一个输入文件GSE_list.txt,具体内容就是包含GSE号的一列(不需要表头!不需要表头!不需要表头!):

input_file <- "GSE_list.txt"# 可自行修改
all_GSE<-read.table(input_file,sep = "\t",header = F) # 有行名header=T,没有行名header=F
> head(all_GSE)
        V1
1 GSE42301
2 GSE43065
3 GSE44961
4 GSE43969
5 GSE43356
6 GSE42247

3. 所需R包

require(doParallel)
library(stringr)
library(GEOquery)
library(xml2)
library(parallel)
library(openxlsx)

4. 代码

13行代码实现下载,内含自动识别下载超时、下载报错问题,同时多线程并发,最大利用电脑性能进行高速下载~

source("function.R")
options(timeout=60) # set the timeout
n.cores <- detectCores()#获得最大核数,或者自行设置
input_file <- "GSE_list.txt"# 可自行修改
all_GSE<-read.table(input_file,sep = "\t",header = F) # 有行名header=T,没有行名header=F
GEO<- unique(unlist(str_match_all(all_GSE[,1],pattern = "GSE[0-9]*")))
merge<-c()
clust <- makeCluster(n.cores)
a <- parLapply(clust, GEO, fun = url,merge,getDirListing)
stopCluster(clust)
registerDoParallel(n.cores)
foreach(i=1:length(a)) %dopar% try(download_fun(a = a,i = i))
stopImplicitCluster()

5. 其他准备工作

5.1 Enjoy yourself

在上述工作做完之后,就可以点杯咖啡,刷着B站,听着歌就把今天工作完成了~

5.2 玄学问题

在大量下载过GEO文件后发现的,联通的网络下载GEO文件更快,有联通电话卡或者联通网络的小伙伴可以试试~

后台回复GSEseries即可领取本期所需文件和代码

感谢观看,如果有用还请点赞,关注,在看,转发!

相关文章

  • GEO/TCGA数据是否需要标准化的问题

    一.对于芯片数据: GEO中的Series Matrix File(s)通常是经过了标准化和对数转换的数据,但是不...

  • Affymetrix芯片数据质量控制标准化(2)

    直接下载该数据集的GEO series matrix 数据 ---- 如果是直接下载表达矩阵的话(大多数已经进行标...

  • limma

    limma的输入表达矩阵要求是经过log2处理之后的GEO中的Series Matrix File(s)通常是经过...

  • GEO数据类型缩写意义

    GEO Platform (GPL) 芯片平台 GEO Sample (GSM) 样本ID号 GEO Series...

  • 核心基因筛选流程

    核心基因筛选 本次例子为GEO 数据库筛选: 概念:1、GEO数据库中的命名:G-SE:GEO Series 系列...

  • 翻译

    Batch size 1 in series production 批量生产 Joinery business V...

  • 我的GEO练习

    GEO数据挖掘练习 搜索文献,找到GSE号 成骨细胞矿化对基因的影响(Matrix mineralizat...

  • Linux|wget

    对GEO 数据库批量下载文件需求的步骤记录。 几个问题 可否在ftp链接中,直接给出序号范围,从而实现以GEO号的...

  • 【R】getGEO运行报connection buffer错误

    最近在运行GEOquery包中的getGEO函数读取series_matrix.txt文件的时候报了如下错误。 从...

  • GEO文件 提取matrix 指针匹配

    之前提到了matrix。。见https://www.jianshu.com/p/a7e298044746[http...

网友评论

    本文标题:GEO | series matrix批量高速下载

    本文链接:https://www.haomeiwen.com/subject/yrrxcdtx.html