用R和BioConductor进行基因芯片数据分析(五):芯片间归一化
上次进行了芯片内的归一化,但是我们的数据来自于10张芯片,为了让这10张芯片之间有可比性,需要进行芯片间归一化。
具体原理就不介绍了。
这里用到Bioconductor的一个package,叫做limma,以及其中的函数normalizeBetweenArrays()
由于normalizeBetweenArrays()需要log intensity或log ratio作为输入,于是先进行log转化:
#log transformation
norm_log<-matrix(data = NA, nrow =dim(normed)[1], ncol = dim(normed)[2], byrow = TRUE, dimnames = NULL)
for (i in 1:dim(normed)[1]){
for (j in 1:dim(normed)[2]){
norm_log[i,j]<-log(normed[i,j])/log(2)
}
}
然后利用函数进行芯片间归一化:
source("http://bioconductor.org/biocLite.R")
biocLite("limma")
library(limma)
norm_log_btw_array<-normalizeBetweenArrays(norm_log,method='scale')
normalizeBetweenArrays()函数有许多方法,具体请看帮助。
下面看看效果吧
plot(density(norm_log[,1]),ylim=c(0,1.35),xlab='log intensity')
for (i in 2:20){
lines(density(norm_log[,i]),type='l')
}
lines(density(norm_log_btw_array[,1]),type='l',col='green')
for (i in 2:20){
lines(density(norm_log_btw_array[,i]),type='l',col='green')
}
text(1.5,c(0.8,1.0),labels=c('BEFORE normalization','AFTER normalization'),col=c('black','green'))
from : http://azaleasays.com/tag/r/
转载于:https://www.cnblogs.com/huzs/p/3742008.html
- 点赞
- 收藏
- 分享
- 文章举报
- 用R和BioConductor进行基因芯片数据分析(四):芯片内归一化
- 用R和BioConductor进行基因芯片数据分析(五):芯片间归一化
- 用R和BioConductor进行基因芯片数据分析(五):芯片间归一化
- 用R和BioConductor进行基因芯片数据分析(四):芯片内归一化
- 用R和BioConductor进行基因芯片数据分析(二):缺失值填充
- 用R和BioConductor进行基因芯片数据分析(六):差异表达基因
- 用R和BioConductor进行基因芯片数据分析(三):计算median
- 用R和BioConductor进行基因芯片数据分析(二):缺失值填充
- 用R和BioConductor进行基因芯片数据分析(三):计算median
- 用R和BioConductor进行基因芯片数据分析(六):差异表达基因
- 用R和BioConductor进行基因芯片数据分析(一):R和BioConductor简介
- 基因芯片(Affymetrix)分析2:芯片数据预处理
- 基因芯片(Affymetrix)分析2:芯片数据预处理
- 基因芯片(Affymetrix)分析2:芯片数据预处理
- 基因芯片数据分析
- (转)基因芯片数据GO和KEGG功能分析
- 基因芯片(Affymetrix)分析2:芯片数据预处理
- 基因数据处理34之使用samtools和bcftools进行变异分析
- 利用Python进行数据分析——数据规整化:清理、转换、合并、重塑(七)(1)
- 采用scikit-learn进行银行贷款拖欠数据分析