You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从coxph输出结果计算风险比(Hazard Ratio)?

嘿,我来帮你搞定这个问题!从coxph的汇总结果里计算风险比(HR)其实非常直观,不管是手动计算还是用R直接生成目标结果都没问题,下面给你详细拆解:

一、手动计算风险比(HR)

你在coxph输出里看到的系数(Coefficient),本质上是对数风险比(log HR)。所以只要对这个系数取自然指数(也就是e的幂次),就能得到对应的风险比啦。

  • 计算公式:HR = exp(系数值)
  • 举个实际例子:如果某个变量的系数是0.3,那HR就是exp(0.3)≈1.35,意思是该变量每增加1单位,研究对象的风险会升高约35%。

要是你需要HR的95%置信区间,同样的逻辑:对系数的95%置信区间上下限分别取自然指数就行,公式是HR置信区间 = [exp(置信区间下限), exp(置信区间上限)]。

二、用R直接生成HR结果

完全不用手动算,R里有好几种便捷方法:

  • 方法1:直接看summary()输出
    运行summary(你的coxph模型对象)后,结果里的exp(coef)列就是HR,exp(lower .95)和exp(upper .95)就是HR的95%置信区间,直接读取就行。
  • 方法2:用基础函数提取计算
    如果你想单独提取结果,可以用下面的代码(假设你的模型叫fit):
    # 计算HR
    hr_values <- exp(coef(fit))
    # 计算HR的95%置信区间
    hr_ci_values <- exp(confint(fit))
    # 整合为清晰的表格
    cbind(风险比HR = hr_values, hr_ci_values)
    
  • 方法3:用broom包生成整洁输出
    安装并加载broom包后,一行代码就能得到格式化的HR结果,包含p值和置信区间:
    library(broom)
    tidy(fit, exponentiate = TRUE, conf.int = TRUE)
    
    这个输出会直接把指数化后的结果(也就是HR)展示出来,非常适合后续整理或报告。

内容的提问来源于stack exchange,提问作者Carson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 09:36:08