我试图用R中的生存软件包进行生存分析。
我有这样的数据集,可以用折叠代码创建。
event <- c(1,0,0,1,0,1)
time <-c(8,50,100,200,300, 1)
id <- c(1,2,3,4,5, 6)
sex<-c(1,0,1,0,1,0)
mydat <- data.frame(id, time, event)
library(survival)
library(survminer)
fit<-survfit(Surv(time,event)~sex, mydat)
ggsurvplot(fit, size = 1, # change line size
#palette = c("#E7B800", "#2E9FDF"), # custom color palette
conf.int = TRUE, # Add confidence interval
pval = TRUE, # Add p-value
risk.table = TRUE, # Add risk table
risk.table.col = "strata", # Risk table color by groups
)然而,mydat本身并不能作为生存分析的输入。
由于输出如下所示
在这里输入图像描述
我希望能提供任何帮助,使之适合使用生存包进行生命分析。
提前谢谢。
发布于 2016-09-02 15:49:06
我认为您的数据是作为生存分析的输入(一旦sex中的错误得到纠正),我认为它们只是没有显示您所期望的。
在执行survfit()时,或者在绘制生存图或ggsurv图时,都不会返回错误。这两种方法都反映了您所拥有的数据。
summary(fit)为您的模型匹配返回一个有意义的结果:
summary(fit)
Call: survfit(formula = Surv(time, event) ~ sex, data = mydat)
sex=0
time n.risk n.event survival std.err lower 95% CI upper 95% CI
1 3 1 0.667 0.272 0.3 1
200 1 1 0.000 NaN NA NA
sex=1
time n.risk n.event survival std.err lower 95% CI upper 95% CI
8.000 3.000 1.000 0.667 0.272 0.300 1.000 在你的数据中有三个事件,一个在时间1的性行为== 0,一个在时间8的性== 1和一个在时间200的性== 0。这就是图表所显示的。阴影置信区间非常宽,因为你很少观察到。

https://stackoverflow.com/questions/39295070
复制相似问题