从生存包生成风险表

问题描述

是否有一个内置函数在生存程序包中生成风险表?我想按时间间隔报告“风险中的数量”,“事件数量”和“审查者数量”。如果不可用,有没有办法有效地生产这张桌子?我看过其他具有某些内置功能的软件包,但更喜欢使用生存软件包。

解决方法

据我所知,survival软件包中没有没有内置函数可以生成风险表,但是您可以编写一个简单的函数来生成它。以下是使用survival包中的 veteran 数据的示例代码,用于带有风险集的Kaplan-Meier图

library(survival)
data(veteran)

RiskSetCount <- function(timeindex,survivaltime) {
  atrisk <- NULL
  for (t in timeindex)
  atrisk <- c(atrisk,sum(survivaltime >= t))
  return(atrisk)
}

fit <- survfit(Surv(time,status) ~ trt,data=veteran) 
par(mfrow=c(1,1),mar = c(7,6,2,2)) # defining plot parameters
plot(fit,xlab="Time",ylab="Survival probability",lwd=2,mark.time=T,col=c(1,2),xlim=c(0,500))
legend("topright",legend=c("Control","Intervention"))
mtext("Risk set:",1,line=4,at=-90)
grid <- seq(0,500,by=100)
mtext(RiskSetCount(grid,veteran$time[veteran$trt==1]),side=1,at=grid)
mtext(RiskSetCount(grid,veteran$time[veteran$trt==2]),line=5,at=grid)

这是K-M图,

K-M plot

您可以在程序中添加更多计数,例如事件数,审查观察数等。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...