使用survival包coxph()时,如何显示系数的分组对比基线信息?
解决coxph()输出显示分组对比基线的问题
要让coxph()的输出明确显示变量的分组对比基线(包括多分类变量),可以用以下几种方法:
1. 使用summary()函数查看详细结果
coxph()的默认打印输出只展示核心系数信息,不会标注参考基线,但summary()函数的输出会明确给出对比的参考水平。运行以下代码:
summary(res.cox)
在输出的Coefficients板块中,sex对应的行标注为sex=2,这代表它是以sex=1(男性)作为基线进行对比的——lung数据集里sex的定义为1=男性,2=女性。对于多分类变量,summary()会逐个展示非参考组相对于参考组的系数与对比关系。
2. 使用gtsummary包生成直观格式化输出
gtsummary包的tbl_regression()函数能生成可读性极强的回归结果表格,直接标注参考组。操作步骤如下:
先安装并加载包:
install.packages("gtsummary") library(gtsummary)
再生成表格:
tbl_regression(res.cox, exponentiate = TRUE)
输出的表格会清晰显示每个变量的参考组,以及其他分组相对于参考组的HR值、置信区间等信息,多分类变量的对比关系也一目了然。
3. 提前将变量转为因子并指定参考水平
如果想让coxph()的默认输出也隐含明确的基线信息,可提前把变量转为因子并指定参考组。比如处理sex变量:
lung$sex <- factor(lung$sex, levels = c(1, 2), labels = c("男性(基线)", "女性")) res.cox <- coxph(Surv(time, status) ~ sex, data = lung) res.cox
此时默认输出里的sex女性就明确表示是和男性(基线)对比的结果,多分类变量同理,只要在转因子时指定好参考水平即可。
内容的提问来源于stack exchange,提问作者Village.Idyot
相关产品推荐
相关产品推荐

