首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >GEO数据挖掘—处理Affymetrix的表达量芯片的cel文件2

GEO数据挖掘—处理Affymetrix的表达量芯片的cel文件2

原创
作者头像
sheldor没耳朵
发布2025-12-02 10:45:10
发布2025-12-02 10:45:10
330
举报
文章被收录于专栏:数据挖掘数据挖掘

GEO数据挖掘—处理Affymetrix的表达量芯片的cel文件2

近几个月的工作主要在空间转录组、实验室项目方面,已经很久没做基础的GEO数据挖掘了,都感觉有些陌生了。

今天需要做一个数据集GSE6410,正好需要处理CEL原始文件,就写篇帖子记录下。

关于处理CEL文件,之前我已经在GEO数据挖掘—处理Affymetrix的表达量芯片的cel文件,这篇帖子中记录过,本篇帖子的内容类似。

拿到这个编号首先按照正常的处理流程走

代码语言:r
复制
#01_start_GEO.R
rm(list = ls())
options(timeout = 100000) 
options(scipen = 20)
#传统下载方式
library(GEOquery)
eSet = getGEO("GSE6410", destdir = '.', getGPL = F)
#2.试试geoChina,只能下载2019年前的表达芯片数据
#library(AnnoProbe)
#eSet = geoChina("GSE6410") #选择性代替第8行
#研究一下这个eSet
class(eSet)
length(eSet)
eSet = eSet[[1]] 
class(eSet)
#(1)提取表达矩阵exp
exp <- exprs(eSet)
dim(exp)
range(exp)#看数据范围决定是否需要log,是否有负值,异常值,如有负值,结合箱线图进一步判断
#
#exp = log2(exp+1) #需要log才log,不需要log要注释掉这一句
#⭐第三个要检查的地方👇
boxplot(exp,las = 2) #看是否有异常样本

可以看出,表达矩阵中exp含有负值

此种情况就需要处理原始的CEL文件,

按照以下代码,预处理

代码语言:r
复制
#step0 cel.R
rm(list = ls())

library(oligo)
celFiles<-list.celfiles('GSE6410_RAW/',listGzipped=T,
                          full.name=TRUE)
celFiles
options(BioC_mirror="https://mirrors.westlake.edu.cn/bioconductor")
exon_data<-oligo::read.celfiles(celFiles)
dim(exprs(exon_data))
exprs(exon_data)[1:4,1:4]
###标准化(一步完成背景校正、分位数校正标准化和RMA(robustmultichipaverage)表达整合)
exon_data_rma<-oligo::rma(exon_data)
exp_probe<-Biobase::exprs(exon_data_rma)
exp_probe[1:4,1:4]

dat=exp_probe
dim(dat)#看一下dat这个矩阵的维度
dat[1:4,1:4]#查看dat这个矩阵的1至4行和1至4列,逗号前为行,逗号后为列

exp <- dat
range(exp)
boxplot(exp,las = 2)

summary(as.vector(exp))
save(dat,file = "step0.cel.Rdata")

重新处理后的表达矩阵就是正常的了

后续在脚本01_start_GEO.R中,获取表达矩阵的代码替换为以下代码即可

代码语言:r
复制
load("step0.cel.Rdata")
colnames(dat)
exp <- dat

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • GEO数据挖掘—处理Affymetrix的表达量芯片的cel文件2
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档