DNA 甲基化年龄与表观遗传时钟分析
表观遗传时钟用一组 CpG 的甲基化水平加权求和来估计年龄或衰老状态,多数由弹性网络回归训练得到。第一代时钟以实际年龄为训练目标,如多组织 Horvath 时钟(353 个 CpG)和血液 Hannum 时钟(71 个 CpG);第二代以生理指标或死亡风险为目标,如 PhenoAge 和 GrimAge,与健康结局关联更强;DunedinPACE 估计当下的衰老速度。研究中常用的是甲基化年龄相对实际年龄的偏离,即年龄加速。典型输入是 450K 或 EPIC 的 Beta 值矩阵和样本年龄、性别。
什么时候用
- 比较疾病组与对照组的生物学年龄是否存在加速
- 评估吸烟、肥胖、心理压力等暴露与衰老速度的关联
- 干预研究中比较干预前后甲基化年龄或衰老速度的变化
- 队列研究中把年龄加速作为死亡或发病风险的预测因子
- 对 GEO 已发表甲基化数据做二次挖掘,增加衰老维度
- 比较不同组织之间的衰老速度,如病变组织与邻近正常组织
不适合的情况
- 把单个人的甲基化年龄当作健康诊断或寿命预测:时钟结果是科研统计量,个体误差可达数年
- 用血液专用时钟估计其他组织,如用 Hannum 时钟估计脑组织年龄
- 只有 RNA-seq 等其他组学数据:经典时钟依赖特定 CpG 的甲基化值,不能直接套用
需要准备的数据
- Beta 值矩阵
- 行为 CpG、列为样本的 Beta 值,不要先转成 M 值;上游过滤时注意保留时钟所需探针
- 实际年龄与样本信息
- 实际年龄需准确到年,并附性别、组织类型和批次;GrimAge 计算需要年龄和性别
- IDAT 原始文件(推荐)
- 便于按时钟作者推荐的方式重新标准化,减少与训练数据之间的系统偏差
- 血细胞比例
- 血液样本可由甲基化数据推算,用于计算校正细胞组成后的内在年龄加速
分析步骤
- 1
核对平台与缺失探针
列出所选时钟需要的 CpG,检查在 450K、EPIC 或 EPIC v2 上是否都有对应探针。缺失较多时部分工具会用训练集均值填补,需要在报告中写明每个时钟的缺失数量。
- 2
预处理与标准化
尽量从 IDAT 开始,做背景校正和 Type I、Type II 探针校正。Horvath 的在线计算器提供与训练数据对齐的标准化选项;换一种标准化方法,甲基化年龄可能整体平移。
- 3
计算多个时钟
用 R 包或在线计算器同时得到 Horvath、Hannum、PhenoAge、GrimAge 和 DunedinPACE 等结果。先看各时钟估计值与实际年龄的相关系数,一代时钟在血液中通常与实际年龄高度相关。
- 4
计算年龄加速
把甲基化年龄对实际年龄做线性回归,取残差作为年龄加速。不要直接用两者之差,差值本身仍与实际年龄相关,组间年龄分布不同时会混入年龄效应。
- 5
区分内在与外在加速
把估计的血细胞比例加入回归,得到内在年龄加速(IEAA),它尽量排除细胞构成变化;外在年龄加速(EEAA)有意保留免疫细胞衰老信号。按研究问题选择或同时报告。
- 6
组间比较与关联分析
以年龄加速为因变量建立线性模型,纳入性别、批次、吸烟等协变量,比较组间差异或与暴露的关联;纵向多次采样数据用混合效应模型处理个体内相关。
- 7
敏感性分析
换用不同时钟、剔除批次离群样本、改变标准化方法后重复分析,看结论方向是否一致。只在单一时钟上显著的结果需要谨慎解读,并在讨论中说明。
关键参数与决策
选择哪种时钟
多组织或非血液样本优先 Horvath 时钟;关注死亡和疾病风险优先 GrimAge 与 PhenoAge;纵向随访看衰老速度用 DunedinPACE;儿童颊黏膜样本可考虑 PedBE 等儿科时钟。
回归在哪些样本中拟合
残差法是主流。病例对照年龄分布差异大时,可在全体样本中拟合,也可只用对照组拟合再应用到病例,两种做法回答的问题略有不同,需在方法中说明理由。
标准化方式
不同标准化会让甲基化年龄整体偏高或偏低,同一研究所有样本必须一致处理。跨数据集时不要比较绝对甲基化年龄,只比较各数据集内部计算的年龄加速。
缺失 CpG 处理
缺少少量 CpG 影响有限,缺失较多会使估计值向训练集平均水平收缩。可用训练集参考均值或 KNN 填补,并报告每个时钟的缺失位点数,便于读者评估可靠性。
细胞组成协变量
血液样本建议同时报告校正与不校正细胞比例的结果。若组间差异在校正后消失,说明差异主要来自免疫细胞构成变化,而不是细胞内在的甲基化老化。
常见错误
- 用甲基化年龄减去实际年龄作为加速:这个差值在年轻样本中偏正、年长样本中偏负,组间年龄不匹配时会制造虚假的加速差异。
- 跨批次直接比较绝对甲基化年龄:芯片批次和标准化方法可使整批样本偏移数年,看起来像组间差异,实际是技术效应。
- 常规探针过滤删掉了时钟位点:部分时钟 CpG 会在 SNP 或交叉杂交过滤中被去除,导致缺失过多、估计值向均值收缩。
- 把 GrimAge 的年数当作剩余寿命:GrimAge 以死亡时间为目标训练,单位虽是年,含义却是相对风险,不能解读为还能活多久。
- 在肿瘤组织中照搬血液研究的解读:肿瘤甲基化重塑剧烈,甲基化年龄可能严重偏离实际年龄,反映的是肿瘤特性而非个体衰老。
结果怎么看
甲基化年龄与实际年龄散点图
每个点是一个样本,理想情况下沿对角线分布。整体偏离对角线但相关性高,多为标准化造成的系统偏移;相关性很低则要检查年龄记录、组织类型和缺失 CpG 数量。
年龄加速箱线图
比较各组残差分布,看组间中位数相差多少年以及组内离散程度。如果组间差异由少数极端值撑起,应检查这些样本的质控指标和所在批次。
多时钟相关矩阵
展示不同时钟年龄加速之间的相关系数。第一代时钟之间通常相关较高,与 GrimAge、DunedinPACE 相关较弱;若结论只在一类时钟中出现,需要说明其生物学含义的差异。
关联分析结果表
列出每个时钟的年龄加速与分组或暴露的回归系数、置信区间、P 值,以及是否校正细胞组成。系数单位为年(DunedinPACE 为速度单位),可直接表述为加速了多少年。
和相近方法怎么选
第一代与第二代时钟
Horvath、Hannum 以实际年龄为训练目标,年龄估计准确,但与健康结局的关联较弱;PhenoAge、GrimAge 以生理指标或死亡风险为目标,对疾病和死亡的预测更好。研究健康结局时以二代时钟为主,一代作为补充。
GrimAge 与 DunedinPACE
GrimAge 给出累积的生物学年龄,反映截至采样时的衰老负担;DunedinPACE 基于多年随访中生理指标的变化速度训练,估计当下的衰老速度,数值 1 约表示每过一年老化一年。干预研究更常关注速度类指标。
表观遗传时钟与差异甲基化分析
时钟用固定的位点组合得到一个综合分数,统计负担小、便于跨研究比较;差异甲基化分析逐位点检验,能定位具体基因和区域,但多重检验负担重。同一数据上两者可以同时做。
常见问题
Horvath 时钟和 Hannum 时钟有什么区别?
Horvath 时钟用多种组织和细胞类型训练,可用于血液以外的样本;Hannum 时钟只用血液样本训练,在血液中估计误差较小,但不宜用于其他组织。两者都是以实际年龄为训练目标的第一代时钟,与健康结局的关联弱于二代时钟。
GrimAge 怎么计算?
GrimAge 由甲基化估计的若干血浆蛋白水平和吸烟包年数组合而成,计算需要 Beta 值、实际年龄和性别。常用途径是作者团队提供的在线甲基化年龄计算器,也有社区开源实现;不同实现结果可能略有差异,同一研究应固定一种。
年龄加速多少算显著?
个体层面没有判定阈值。年龄加速是群体统计量,应在组间比较或回归中看效应大小和置信区间,文献常报告每增加一个标准差的年龄加速对应的风险比。单个人比实际年龄大几岁本身没有诊断意义。
EPIC 芯片能算 Horvath 时钟吗?
能。部分 Horvath 时钟的 CpG 在 EPIC 上没有对应探针,工具会用参考均值填补。缺失不多时结果与 450K 高度一致,但 450K 与 EPIC 样本合并分析时,应把平台作为协变量或分平台计算年龄加速。
唾液或口腔拭子样本能算甲基化年龄吗?
Horvath 多组织时钟可以用于唾液和颊黏膜,但这些样本的细胞组成与血液差异大,绝对年龄可能偏移;儿童颊黏膜样本可考虑专门训练的 PedBE 时钟。只用血液训练的时钟不建议用于这类样本。
在 Codar 里怎么做
在 Codar 的生信模式中说明样本类型、芯片平台和研究问题,Codar 会先确认要计算的时钟和协变量,再读取本地甲基化数据或下载公开数据,计算多种甲基化年龄和衰老速度指标,用残差法得到年龄加速并做组间或暴露关联比较。交付散点图、年龄加速箱线图、结果表、分析报告和可复现脚本。
我从 GEO 下载了 EPIC 全血数据,想算 Horvath、PhenoAge、GrimAge 和 DunedinPACE,比较抑郁症组和对照组的年龄加速。