在甲基化晶片中,一次檢測的是很多細胞的甲基化狀態。對於某個CpG 位點來說,有些細胞的這個位點是甲基化的,而另外的細胞是非甲基化的。
對於探針的甲基化水平,最常見的定量方式包括beta 值和M 值兩種。
beta 值計算公式為
M / (M + U + offset)
U 代表非甲基化信號強度,M 代表甲基化的信號強度, offset 是偏移量。 offset 是為了防止分母為0的情況出現。beta值實際上是甲基化信號強度的百分比。
在minfi中,使用getBeta函數計算探針的beta 值
> head(getMeth(mSet)[1, 1:3]) 5640269011_R01C01 5640269011_R01C02 5640269011_R02C01cg00050873 5284 137 214> head(getUnmeth(mSet)[, 1:3]) 5640269011_R01C01 5640269011_R01C02 5640269011_R02C01cg00050873 6645 148 246> head(getBeta(mSet)[, 1:3]) 5640269011_R01C01 5640269011_R01C02 5640269011_R02C01cg00050873 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)。
M值計算公式為
log2 (M / U)
U 代表甲基化信號強度,M 代表非甲基化的信號強度
在minfi中,使用getM函數計算探針的M 值
> head(getM(mSet)[1, 1:3]) 5640269011_R01C01 5640269011_R01C02 5640269011_R02C01cg00050873 -0.3306387 -0.11142128 -0.2010475
探針cg00050873在樣本5640269011_R01C01中的甲基化信號強度為 5284,非甲基化信號強度為 6645, log2 (5284 / 6645) 正好就是M值。
beta 值是最常用的甲基化水平的定量方式,主要用於差異分析,而M值適用於樣本間的特徵比較,比如基於M值的矩陣,通過MDS的方法來分析樣本間的關係。