我有一个类似的问题并这样解决:
正如其中所述survival
帮助文件 http://stat.ethz.ch/R-manual/R-devel/library/survival/html/Surv.html你需要指定time
and time2
.
你可以想到左审查数据来自-infinity
直到time
你测量了,并且右删失的去从time
您测量(可能是最后一次随访)直到+infinity
。无穷大最好用以下方式编码NA
.
解决我的问题的是创建两个向量:一个起始向量time
和一个停止向量time2
.
For time
你想要所有这些值左审查 to be NA
. 右截尾观测值填入测量时间,就像Events.
For time2
事实恰恰相反。
然而我并没有真正得到你的数据。如果受试者已经发生过该事件,你为什么要跟进他们?这就是您对主题 4 和 5 所做的操作,即 AF-time 为 8 和 3,但 Followup_time 为 15 和 7。
为了提供帮助,我假设如下:
您有 5 名患者患有
AF_at_baseline<-c(1,0,1,0,0) #where 1 indicates left censoring
后续时间是事件时间(或左右删失的最后一次后续时间)
所以对于左审查您的 Followup_time 数据如下所示:
Followup_time <- c(NA, 3, NA, 15, 7)
For the 右删失 data:
Followup_time2 <- c(11, NA, 8 ,15, 7)
#Since you indicated that only subject 2 didn't experience the event
现在您可以致电 Surv
Surv.Obj <- Surv(Followup_time, Followup_time2, type = 'interval2')
Surv.Obj
[1] 11- 3+ 8- 15 7 # with '-' indicating left censoring and '+' right censoring
然后你可以打电话survfit
并绘制 Kaplan-Meier 曲线:
km <- survfit(Surv.Obj ~ 1, conf.type = "none")
km
Call: survfit(formula = Surv.Obj ~ 1, conf.type = "none")
n events median 0.95LCL 0.95UCL
5 4 7 7 NA
enter code here
summary(km)
Call: survfit(formula = Surv.Obj ~ 1, conf.type = "none")
time n.risk n.event survival std.err lower 95% CI upper 95% CI
7.0 4 3.00e+00 0.25 0.217 0.0458 1
7.5 1 4.44e-16 0.25 0.217 0.0458 1
15.0 1 1.00e+00 0.00 NaN NA NA
plot(km, conf.int = FALSE, mark.time = TRUE)
到目前为止,我还没有找到如何用区间数据做Cox PH。看我的问题here https://stackoverflow.com/questions/42069425/interval-censored-data-cox-proportional-hazard-and-surival-difference-in-r.