ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

BioAge 生物年龄计算教程:从血液指标到 KDM、表型年龄与稳态失调

BioAge 生物年龄计算教程:从血液指标到 KDM、表型年龄与稳态失调 BioAge 生物年龄计算教程从血液指标到 KDM、表型年龄与稳态失调【免费下载链接】BioAgeBiological Age Calculations Using Several Biomarker Algorithms项目地址: https://gitcode.com/gh_mirrors/bi/BioAgeBioAge 是一个 R 包用来从血液化学和器官功能指标计算三种生物年龄指标KDM 生物年龄、Levine 表型年龄和稳态失调。内置 NHANES 调查数据跑通示例不需要你准备任何文件。适合手里有体检指标和随访数据、想做人群衰老研究的 R 用户。为什么用它场景很具体你拿到一批血常规、肝肾功能和血脂指标想知道每个人的生物学年龄比实际年龄快还是慢。自己实现这些算法要处理标准化、分性别建模和缺失值工作量不小。BioAge 把三套已发表的算法封装成函数输入指标名输出每人一行的结果列。它的边界也很清楚只做基于血液和器官功能指标的计算不涉及甲基化或基因组数据。第一次跑通用内置 NHANES 数据算出第一个结果先装 R3.5 及以上。BioAge 不在 CRAN 上从源码安装# 克隆仓库后在 BioAge 目录执行 R CMD INSTALL .这段在终端里完成源码安装成功后 R 里就能library(BioAge)。然后直接用内置数据算 KDM 生物年龄library(BioAge) kdm - kdm_nhanes(biomarkers c(albumin, alp, lncrp, totchol, lncreat, hba1c, sbp, bun, uap, lymph, mcv, wbc)) phenoage - phenoage_nhanes(biomarkers c(albumin_gL, alp, lncrp, totchol, lncreat_umol, hba1c, sbp, bun, uap, lymph, mcv, wbc))这段调用内置 NHANES III 训练、向 NHANES IV 投影。预期得到一个data列表元素里面每人一行新增kdm、kdm_advance等结果列。kdm_nhanes、phenoage_nhanes、hd_nhanes三个函数结构一样都只接收一个biomarkers参数注意后者的标志物字段名带单位后缀如albumin_gL、lncreat_umol。三个结果各自是列表用data取数据、fit取模型参数。把三次的data按sampleID依次 merge 成一个数据集后面绘图和做表都基于它data - merge(hd$data, kdm$data) data - merge(data, phenoage$data)三个生物年龄指标怎么选、结果怎么看先看指标本身的差异再决定用哪个函数结果列数值含义适合场景kdm_nhaneskdm、kdm_advance预测的等效年龄年及其与实际年龄的差想表达老了几年/年轻几岁phenoage_nhanesphenoage、phenoage_advance基于死亡风险模型的等效年龄年及差值结局是死亡或生存事件时hd_nhaneshd、hd_log指标组合偏离健康年轻参考人群的马氏距离无年单位关注多指标整体失衡程度选择逻辑一句话研究衰老加速用*_advance差值列研究系统失衡用hd。plot_ba生成散点矩阵要求数据里有age和gender两列plot_ba(data, c(kdm, phenoage, hd, hd_log), c(KDM, Levine\nPhenotypic Age, Homeostatic\nDysregulation, Log HD))每个面板是一个指标对实际年龄的散点按性别着色右下角标注相关系数 r。r 越接近 1该指标越随年龄近似线性增长越适合当等效年龄解读r 偏低的指标更适合按程度分而非年龄来用。plot_baa生成指标间的相关矩阵下三角是散点、上三角是 Pearson 相关其中 KDM 和表型年龄使用的是差值列plot_baa(data, c(kdm_advance, phenoage_advance, hd, hd_log), c(kdm_advance KDM Adv., phenoage_advance Levine Adv., hd HD, hd_log Log HD))这张图回答这些指标是不是在测同一件事对角线附近相关越接近 1指标间信息重叠越多。换用自己的数据前要注意什么这一节讲用*_calc系列函数在自己的队列上计算时的四个常见坑。字段名必须逐字一致。biomarkers里写什么数据里就必须有同名变量。带单位后缀的是不同字段albumin与albumin_gL、creat与creat_umol、lncreat与lncreat_umol换单位前先核对字段。量纲要统一。同一标志物在训练集和预测集里必须同单位、同方向KDM 用的是逐指标线性回归单位错了系数直接失真。缺失值处理是内建的。hd_calc会剔除含缺失的行na.omitkdm_calc对缺失超过 2 项标志物的个体把结果置为 NA。跑之前先看各指标的缺失比例缺失过高的标志物建议从组合里去掉而不是整行删。训练人群有内置约束。内置流程里hd_nhanes用 20–30 岁、未孕、BMI 小于 30 且指标在临床正常范围内的年轻人群当参考KDM 按性别分别用 30–75 岁未孕人群训练表型年龄训练样本为 20–84 岁。用自己的数据训练*_calc传fit NULL时参考人群的质量决定投影质量人数太少或人群不健康结果会偏。参考人群的分性别样本量建议至少上百具体阈值以官方文档为准。进阶用法换标志物组合。三个函数都接受biomarkers参数组合可以任意调整。同一数据集里KDM 和表型年龄对同一标志物可能要求不同后缀如lncreat对lncreat_umol传参时分别核对。自定义参考人群。不用内置 NHANES III 时直接调hd_calc(data, reference, biomarkers)自己指定参考队列。想按年轻健康定义参考人群就自己先过滤年龄和临床范围。接结局分析。table_surv生存结局的 Cox 风险比表、table_health健康特征回归表、table_ses社会经济因素表接收同一个 merge 后的数据集和agevar、label参数一次出整张表。返回的列表里可取table和n等元素方便直接进论文或汇报。常见问题能商用吗许可证是 GPL-3允许商业使用但再分发时要遵守开源条款。我的数据缺失很多函数会报错吗一般不会崩但hd_calc是逐行删除含缺失的观测删除量大时结果偏性会明显。先用代码统计缺失矩阵再决定用哪些标志物。跑得很慢怎么办hd_calc对每个观测逐个算马氏距离样本大时是主要瓶颈。可以分性别分批处理或先过滤无关行。能贡献代码吗向官方仓库提 issue 或 pull request 即可维护者会处理。资源入口函数源码在 R/内置 NHANES 数据在 data/完整可复现示例见 vignettes/ 目录下的 examples.Rmd各函数的参数细节看 man/ 下的帮助文档。先跑通内置数据再换成自己的队列基本就是这个包的用法上限。【免费下载链接】BioAgeBiological Age Calculations Using Several Biomarker Algorithms项目地址: https://gitcode.com/gh_mirrors/bi/BioAge创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表