sva ComBat去除GEO数据批次效应

批次效应

批次效应是测量结果中的一部分,它们因为实验条件的不同而具有不同的表现形式,并且与我们研究的变量没有关系。不同平台的数据,同一平台的不同时期的数据,同一个样品不同试剂的数据,以及同一个样品不同时间的数据等等都会产生一种 batch effect。校正批次效应的目的是减少batch之间的差异,从而更好的获取不同生物学状态之间的差异。

载入包、GEO数据

数据为GEO芯片与RNAseq数据。

BiocManager::install("sva")
BiocManager::install("bladderbatch")
library(sva)
library(bladderbatch)
load("GeoData.rda")
#原始数据
FPKM[1:5,1:5]
                GSE102746_UC_1 GSE102746_UC_2 GSE102746_UC_3 GSE102746_UC_4 GSE102746_UC_5
ENSG00000008300       0.795651       12.74320        12.8748       0.296484        1.70187
ENSG00000044574      83.731600      167.95100        29.3973      85.368700       49.98990
ENSG00000067082      78.742500      130.74000        64.4235      68.536000       80.07060
ENSG00000071575       9.407460        8.30127        30.0466       9.541390        7.68865
ENSG00000089159      29.575000       59.32220        17.5021      27.272200       22.99260
#批次信息
sample_infor[1:5,]
                  sample_name  GSE_name Batch_GSE data_type disease
GSE102746_UC_1 GSE102746_UC_1 GSE102746         1 test_data      UC
GSE102746_UC_2 GSE102746_UC_2 GSE102746         1 test_data      UC
GSE102746_UC_3 GSE102746_UC_3 GSE102746         1 test_data      UC
GSE102746_UC_4 GSE102746_UC_4 GSE102746         1 test_data      UC
GSE102746_UC_5 GSE102746_UC_5 GSE102746         1 test_data      UC

PCA可视化不同GEO数据

library("FactoMineR")
library("factoextra")
pca.plot = function(dat,col){

  df.pca <- PCA(t(dat), graph = FALSE)
  fviz_pca_ind(df.pca,
               geom.ind = "point",
               col.ind = col ,
               addEllipses = TRUE,
               legend.title = "Groups"
  )
}
pca.plot(FPKM,factor(sample_infor$GSE_name))
image.png

批次校正

#设置model(可选)
mod = model.matrix(~as.factor(disease), data=sample_infor)
#校正其实就一步
combat_FPKM <- ComBat(dat = as.matrix(log2(FPKM+1)), batch = sample_infor$Batch_GSE,mod = mod,
                            par.prior = F)
pca.plot(combat_FPKM,factor(sample_infor$GSE_name))

经校正后不同批次处于同一水平上,校正前后具有明显差异


image.png

你可能感兴趣的:(sva ComBat去除GEO数据批次效应)