美文网首页生物芯片数据R
利用GEOquery下载GEO文件的各种方法

利用GEOquery下载GEO文件的各种方法

作者: drlee_fc74 | 来源:发表于2018-09-23 11:03 被阅读894次

geoqury加载数据

  1. 通过网页下载GEO数据代码:

    gset <- getGEO("GSE86822", GSEMatrix =TRUE, AnnotGPL=TRUE,destdir = "~/breast cancer" )
    show(gset)##查看下载内容
    
    
  2. 有时候网页上没有矩阵信息的时候,需要我们自己下载原始的CEL文件。下载网页上的CEL文件代码

    getGEOSuppFiles("GSE46106")  ##下载原始数据
    setwd("GSE46106/") ##进入下载目录
    dir() ##查看文件内容
    untar("GSE46106_RAW.tar") ##解压文件
    files <- dir(pattern="gz$") ##加载文件
    sapply(files, gunzip) ##合并文件
    filelist <- dir(pattern="CEL$")
    ##统一处理CEL文件
    library(affy)
    library(annotate)
    data <- ReadAffy(filenames=filelist)
    affydb<-annPkgName(data@annotation,type="db")
    require(affydb, character.only=TRUE)
    eset<-rma(data,verbose=FALSE)
    eset.e <- exprs(eset)  ##得到的矩阵文件
    library(annaffy)
    symbols<-as.character(aafSymbol(as.character(rownames(eset)),affydb))
    genes<-as.character(aafUniGene(as.character(rownames(eset)),affydb))
    
    ##一般而言芯片的矩阵是需要过滤的。可以利用下面的代码会更加严格一些
    setwd('../')
    library(affy)
    dir_cels='GSE34824_RAW'
    data <- ReadAffy(celfile.path=dir_cels)
    eset <- rma(data)
    calls <- mas5calls(data) # get PMA calls
    calls <- exprs(calls)
    absent <- rowSums(calls == 'A') # how may samples are each gene 'absent' in all
    samples
    absent <- which (absent == ncol(calls)) # which genes are 'absent' in all samples
    rmaFiltered <- eset[-absent,] # filters out the genes 'absent' in all samples 
    
  3. 如果之前已经把矩阵文件下载下来了,那么可以直接加载下载的文件即可

ver <- getGEO(filename="/home/u1363/breast cancer/verification/GSE25065_series_matrix.txt.gz", AnnotGPL = T) ##加载下载的文件

4.如果之前下载的是SOFT文件,那么首先只需要按照第二种文件的 从dir()开始处理即可。

相关文章

网友评论

    本文标题:利用GEOquery下载GEO文件的各种方法

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