GEO数据库学习总结(一)数据下载

非常感谢jimmy大神与生信技能树一直以来的无私分享,自己学习的同时也伴随着记录,如有错误的,欢迎大家指正~~~~

1.数据下载


Ⅰ、R代码直接下载数据

建议以Rdata形式保存数据,以防网络狗的时候,用不了的时候(-_-|),害.....

rm(list = ls())#清空控制台
options(stringsAsFactors = F)#关掉选择更新R包的函数
#https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE42872
library(GEOquery)
eSet <- getGEO("GSE42872", #下载的GSE编号,根据需求更换
               destdir = '.', 
               getGPL = F)
save(eSet,file = 'GSE19826_eSet.Rdata')
<关于参数>
  1. destdir 设置当前目录
  2. getGPLAnnotGPL都设置TRUE,可以下载和获得平台的注释文件
    但是如果只要表达矩阵,没有其他需求 getGPL = F,可以提高下载速度
  3. GEO Platform (GPL) 平台(测序平台/芯片平台)——可以提供注释文件
    GEO Sample (GSM) 样本
    GEO Series (GSE)系列
    GEO Dataset (GDS) 数据集
  • 一个GSE里面可以有一个或者多个GSM样本
  • 多个研究的GSM样本可以根据研究目的整合为一个GDS。

Ⅱ、网站下载数据及R读取

  • 正确利用连接找到GSE
    https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE42872
    只需要改GSE后编号数便可下载文件,后读入文件
  • 关于网站下载的GSE与GPL文件可见——>https://www.jianshu.com/p/19d6db819c32

GSE的.gz读取——可直接读取表达矩阵exp

exp = read.table('GSE42872_series_matrix.txt.gz',
             sep='\t',quote = "",fill = T,
             comment.char="!",header=T)
#也可以解压后,直接读取txt文件
exp =read.table('GSE42872_series_matrix.txt',
             sep='\t',quote = "",fill = T,
             comment.char="!",header=T)
  • 关于参数
    comment.char="!" ——不读取文件中“!”后的内容
    header=T——列名

GPL的soft文件读取

##注意 函数 getGEO
GPL6244=getGEO(filename = 'GSE42872_family.soft')

GPL文件也可以直接代码下载

library(GEOquery)
GPL6244<- getGEO('GPL6244', destdir=".") 
GPL6244=Table( GPL6244)#得到我们想要的信息及格式
  • 注意 函数 getGEO()基于R包GEOquery

2.提取表达矩阵exp(基于方法Ⅰ的R代码)

exp <- exprs(eSet[[1]])
#若表达矩阵表达量整体过大,对矩阵进行 log2,为了防止log无意义---exp加1
exp = log2(exp+1)#该步骤可省略,若表达量不需要log2
#log0无意义

3.获取临床信息(主要要用于ID转换和生存分析)

  • 基于方法Ⅰ的R代码
pdata <- pData(eSet[[1]])

有时候临床信息很多,当有一列的每一行是完全一样,一般来说没有什么意义,反而会影响我们的阅读,可以适当缩小其范围

pdata <- pData(eSet[[1]])
pdata <- pdata[,apply(pdata, 2, function(x){
  length(unique(x))>1})]  #缩小范围
dim(pd1)
apply(pdata,table)
  • 基于方法Ⅱ的R代码
library(GEOquery)
GPL6244<- getGEO('GPL6244', destdir=".") 
GPL6244=Table( GPL6244)#得到我们想要的信息及格式

欢迎大家多多骚扰~~~~~

你可能感兴趣的:(GEO数据库学习总结(一)数据下载)