R语言:竞争风险模型多因素分析

使用的是cmprsk包,本例子仍然使用casebase包自带的bmtcrr数据集,将复发(Status = 1)定义为结局事件,将因为移植不良反应死亡,定义为竞争风险事件(Status = 2)。数据包如下:

第一步:加载包并读取数据

library(cmprsk) # 加载包
library(survminer) # 加载包
library(tidyverse)
library(readxl)
bmtcrr <- read_excel("/Users/xujun/Downloads/bmtcrr.xlsx") # 导入数据

第二步:预览数据,并转换

View(bmtcrr) # 预览数据集
bmtcrr$sex <- factor(bmtcrr$sex, levels = c(0,1),
                     labels = c("male", "female"))
#首先,将分类变量因子化,设置为哑变量。
bmtcrr$sex <- factor(bmtcrr$sex) #将Sex变量因子化
bmtcrr$disease <- factor(bmtcrr$disease) #将Sex变量因子化
bmtcrr$age <- factor(bmtcrr$age)  #将D变量因子化
bmtcrr$phase <- factor(bmtcrr$phase) #将Phase变量因子化
bmtcrr$source <- factor(bmtcrr$source) #将Source变量因子化

第三步:所有自变量放在一个数据框里

covs <- subset(bmtcrr, select = - c(ftime, status)) #对数据进行筛选,只保留ftime和Status之外的变量

covs[, c(1:3, 5)] <- lapply(covs[, c(1:3, 5)], as.integer) #将第1-3和第5列变量强制转为整数型
str(covs)  #检查数据框中的变量

第四步:建立多因素分析模型

#指定failcode=1, cencode=0, 分别代表结局事件1与截尾0,其他默认为竞争风险事件2。
f2 <- crr(bmtcrr$ftime, bmtcrr$status, covs, failcode = 1, cencode = 0) #建立多因素分析模型
summary(f2) #展示结果
R语言:竞争风险模型多因素分析

结果解读:在控制了竞争事件后,phase变量(疾病阶段),是患者复发的独立影响因素(P值 = 0.00052),HR值为1.514,95%CI为1.198-1.91。

    原创文章(本站视频密码:66668888),作者:xujunzju,如若转载,请注明出处:https://zyicu.cn/?p=18543

    (0)
    打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
    xujunzju管理者
    上一篇 2024年5月19日 17:07
    下一篇 2024年5月19日 19:13

    相关推荐

    发表回复

    登录后才能评论
    联系我们
    邮箱:
    xujunzju@gmail.com
    公众号:
    xujunzju6174
    捐赠本站
    捐赠本站
    分享本页
    返回顶部