概述
在GenomeStudio
软件中,当我们计算探针的甲基化水平时,提供了两个关键的预处理操作
Normalizetion
Subtract Background
Normalization 可选的值有none
和control
, none 表示不进行归一化,control 代表的时利用control 探针进行归一化。subtract Background 表示背景降噪。
归一化的算法
# 计算原始的红绿双通路信号强度Green <- getGreen(rgSet)
Red <- getRed(rgSet) # 提取450K芯片中用于Normalization的探针IDAT.controls <- getControlAddress(rgSet, controlType = c("NORM_A", "NORM_T"))
CG.controls <- getControlAddress(rgSet, controlType = c("NORM_C", "NORM_G"))# 以第一个样本为参照,计算其他样本相对该样本的差异倍数Green.avg <- colMeans(Green[CG.controls, , drop = FALSE])
Red.avg <- colMeans(Red[AT.controls, , drop = FALSE])
reference <- 1ref <- (Green.avg + Red.avg)[reference]/2Green.factor <- ref/Green.avg
Red.factor <- ref/Red.avg# 计算每个样本的系数,将原始的信号强度乘以这个系数,作为归一化的结果Green <- sweep(Green, 2, FUN = "*", Green.factor)
Red <- sweep(Red, 2, FUN = "*", Red.factor)# 将原始的信号强度替换成归一化之后的信号强度assay(rgSet, "Green") <- Green
assay(rgSet, "Red") <- Red
从上面的代码可以看出来,control 的归一化算法实际上就是利用NORM系列探针,对每一个样本计算一个偏倚系数, 然后将原始的信号强度乘以这个系数,作为归一化的结果。
这个算法的思想比较简单,比如两个重复样本A和B, 其信号强度理论上是相同的,但是实际情况并不会完全相同,而是存在倍数关系,比如B 是A的1.5倍,为了将二者归一化到同一水平,将A 的信号强度乘以1.5就可以了。
在实际处理的时候,利用NOMR系列control 探针,以某一个样本为参照,计算其他样本相对ref的信号强度的差异倍数,然后除以差异倍数就将所有样本归一化到同一个水平了。
从这个算法的思想也可以看出,它可以很好的消除技术重复之间的差异。
背景矫正的算法
# 计算原始的红绿双通路信号强度Green <- getGreen(rgSet)
Red <- getRed(rgSet)# 提取450K芯片中的 NEGATIVE control探针IDNegControls <- getControlAddress(rgSet, controlType = "NEGATIVE")# 以Negative探针Green.bg <- apply(Green[NegControls, , drop = FALSE], 2, function(xx) sort(xx)[31])
Red.bg <- apply(Red[NegControls, , drop = FALSE], 2, function(xx) sort(xx)[31])
Green <- pmax(sweep(Green, 2, Green.bg), 0)
Red <- pmax(sweep(Red, 2, Red.bg), 0)# 将原始的信号强度替换成矫正之后的信号强度assay(rgSet, "Green") <- Green
assay(rgSet, "Red") <- Red
背景降噪的算法,本质上都是从原始的信号强度中减去噪声的信号强度,GenomeStudio
使用NEGATIVE
探针的某个信号强度作为需要减去的噪声强度,上面的代码通过对NEGATIVE探针的信号强度排序之后,随机挑选了第31位点的信号强度作为噪声,然后在原始的信号强度中减去这部分噪声强度。
在减去噪声强度的同时,可能会出现最终的值小于零的情况,这里将最终小于零的值变成了0。
GenomeStudio
的背景降噪算法的核心是利用NEGATIVE
探针的信号强度计算出一个统一的噪声强度,然后在原始的信号强度的基础上减去该噪声强度。
只有经过了包括背景降噪和归一化在内的预处理步骤直接,才可以进行后续的差异分析。
最后
以上就是大胆水池为你收集整理的GenomeStudio 中的背景校正和归一化算法的全部内容,希望文章能够帮你解决GenomeStudio 中的背景校正和归一化算法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复