我希望在历史数据上运行竞争风险模型,并在特定时期内预测新数据集中每种类型死亡的可能性(假设一个时期)。到目前为止,我已查看comp.risk
包中的timereg
和crr
中的cmprsk
,但我们无法确定如何使用其预测方法来返回这些可能性。
使用bmt
数据集(来自timereg
包)和comp.risk
作为示例,我想做类似的事情:
m <- comp.risk(Surv(time, cause>0)~platelet+age+tcell, data=bmt,
bmt$cause, causeS=1, resample.iid=1)
ndata <- data.frame(platelet=c(1,0,0), age=c(0,1,0), tcell=c(0,0,1),
start.time=c(1, 1, 1), end.time=c(2, 2, 2))
out <- predict(m, newdata=ndata)
这将理想地预测t=1
和t=2
之间每种类型死亡的可能性,但预测函数会返回其他类型的结果。
最后一行不起作用,因为模型不是使用开始/停止Survival
对象类型构建的,comp.risk
似乎不采用左截断数据。为了说明,下面的模型语句(包括开始时间)返回comp.risk(Surv(start.time, time, cause > 0) ~ platelet + age +
中的错误错误:
只有正确的审查数据。
m <- comp.risk(Surv(rep(0, nrow(bmt)), time, cause>0)~platelet+age+tcell, data=bmt,
bmt$cause, causeS=1, resample.iid=1)