分享

R数据分析:竞争风险模型的做法和解释二

 CodewarCodewar 2021-02-07

找了好久,中文的竞争风险模型的学习资料好少哦,再加上帮粉丝做了一个竞争模型的分析,今天顺带就给大家写一个竞争风险回归的例子。也是接着上一篇文章的续R数据分析:竞争风险模型的做法和解释

实例描述

我们有177例干细胞移植的急性白血病患者,我们关心这些病人的白血病复发情况,但是记住,因为白细胞移植,其移植相关死亡风险也加大。那么死亡和复发存在竞争关系,毕竟病人有可能还没等到复发就死了嘛,所以做数据分析的时候要考虑。对于这样的数据我们应该用风险竞争模型。

同时我们更关心协变量比如说病人性别,白血病类型,移植时期,干细胞来源等等这些变量是如何影响病人白血病复发风险的。

我们的数据长这样:

其中ftime为时间变量,status为删失或者竞争事件,我们要用到的预测变量包括Age, Sex, D, Phase, and Source共4个,分别代表病人的年龄,性别,疾病类型,阶段,干细胞来源。

首先我们必须将预测变量中的因子类型转化为哑变量,我们需要构建一个哑变量转化函数:

factor2ind <- function(x, baseline)
{
xname <- deparse(substitute(x))
n <- length(x)
x <- as.factor(x)
if(!missing(baseline)) x <- relevel(x, baseline)
X <- matrix(0, n, length(levels(x)))
X[(1:n) + n*(unclass(x)-1)] <- 1
X[is.na(x),] <- NA
dimnames(X) <- list(names(x), paste(xname, levels(x), sep = ":"))
return(X[,-1,drop=FALSE])
}

factor2ind()这个函数就可以很方便的将因子转化为n-1列的矩阵,同时规定参考水平。

接下来要做的就是把所有预测变量进行绑定,形成预测变量矩阵:

x <- cbind(Age,factor2ind(Sex,'M'),
factor2ind(D,'ALL'),
factor2ind(Phase,'Relapse'),
factor2ind(source))

有了这个预测变量矩阵我们就可以开始拟合我们竞争风险模型了,主要要用到crr这个函数,这个函数最简单的模式就是你把随访事件喂给它,把结局事件喂给它,再把自变量喂给他,要注意删失数据编码为0,主要事件编码为1,竞争事件为2:

mod1 <- crr(ftime,Status,x)
summary(mod1)

可以看到,我们的竞争回归模型就拟合好了。

结果的第一部分首先给出了各个变量的系数和相对风险relative risk exp(β̂j),标准误,z值和p值,在我们的结果中,可以看出只有Phase这个变量是显著的。

结果的第二部分就给出各个变量的相对风险the relative risk for each term, exp(β̂j), and a 95% confidence interval和置信区间。

如何解释呢?

The relative risk or subdistribution hazard ratio for a categorical covariate is the ratio of subdistribution hazards for the actual group with respect to the baseline, with all other covariates being equal. If the covariate is continuous then the relative risk refers to the effect of a one unit increase in the covariate, with all other covariates being equal. In our data, exp(−0.0352)=0.965 is the relative risk of a female with respect to a male, and exp(−0.0185)=0.982 is the relative risk for a 1 year increase in age.

对于分类变量来说,相对风险就是相对于参考水平,该水平的风险是多少。对于连续变量来说,相对风险解释为自变量每增加一个单位产生的效果。在我们的例子中就有女性相对于男性的风险为exp(−0.0352)=0.965;病人的年龄每增加一岁白血病复发的风险相对于不增加为exp(−0.0185)=0.982。

小结

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多