在甲基化芯片中,一次检测的是很多细胞的甲基化状态。对于某个CpG 位点来说,有些细胞的这个位点是甲基化的,而另外的细胞是非甲基化的。
对于探针的甲基化水平,最常见的定量方式包括beta 值和M 值两种。
计算公式为
M / (M + U + offset)
U 代表非甲基化信号强度,M 代表甲基化的信号强度, offset 是偏移量。 offset 是为了防止分母为0的情况出现。beta值实际上是甲基化信号强度的百分比。
在minfi
中,使用getBeta
函数计算探针的beta 值
> head(getMeth(mSet)[1, 1:3])
5640269011_R01C01 5640269011_R01C02 5640269011_R02C01
cg00050873 5284 137 214
> head(getUnmeth(mSet)[, 1:3])
5640269011_R01C01 5640269011_R01C02 5640269011_R02C01
cg00050873 6645 148 246
> head(getBeta(mSet)[, 1:3])
5640269011_R01C01 5640269011_R01C02 5640269011_R02C01
cg00050873 0.442954145 0.4807018 0.4652174
探针cg00050873
在样本5640269011_R01C01
中的甲基化信号强度为 5284,非甲基化信号强度为 6645, 5284 /(5284 + 6645)
正好就是beta
值。
从这里也可以看出,minfi
中的getBeta 函数默认的offset 值为0。在GenomeStudio
软件中,计算beta值时offset = 100。 在minfi
中,如果想要和GenomeStudio
软件的beta值保持一致,需要设置getBeta
的offset 参数,比如 getBeta(mSet, offset = 100)
。
计算公式为
log2 (M / U)
U 代表甲基化信号强度,M 代表非甲基化的信号强度
在minfi
中,使用getM
函数计算探针的M 值
> head(getM(mSet)[1, 1:3])
5640269011_R01C01 5640269011_R01C02 5640269011_R02C01
cg00050873 -0.3306387 -0.11142128 -0.2010475
探针cg00050873
在样本5640269011_R01C01
中的甲基化信号强度为 5284,非甲基化信号强度为 6645, log2 (5284 / 6645)
正好就是M
值。
beta 值是最常用的甲基化水平的定量方式,主要用于差异分析,而M值适用于样本间的特征比较,比如基于M值的矩阵,通过MDS的方法来分析样本间的关系。