我在尝试使用Weibull分布在R中运行生存分析时遇到上述错误消息。
我的数据有点棘手,因为它包含左右删失的观察结果。
我按照https://stat.ethz.ch/R-manual/R-devel/library/survival/html/Surv.html上的说明操作:
“区间删失数据可以用两种方式表示。第一次使用type =”interval“和上面显示的代码。在该用法中,除非event = 3,否则忽略time2参数的值。第二种方法是将每个观察值视为左边删失的(-infinity,t),右边删失的(t,无穷大),精确的(t,t)和间隔的(t1,t2)。这是使用的方法对于type = interval2。无限值可以用实际无穷大(Inf)或NA来表示。第二种形式已被证明是更有用的。“
我决定按照第二种形式,用以下标题对数据进行编码:
t1,t2(开始和结束时间),状态(0,1,2),factor1,factor2
要运行我的模型,我用R:
写 model1 <- survreg(Surv(t1, t2, status, type='interval2')~factor(factor1) + factor(factor2), dist='weibull', data=data)
但是,它始终给我错误消息:
Error in Surv(paduration, status, type = "interval") : Wrong number of args for this type of survival data
我不知道我做错了什么,因为surv()对象只有5个可能的参数,而origin参数与我的情况无关。当我试图使用较少的参数时,它仍然给我相同的错误信息。我试过这样做 “类型=间隔” 相反,但仍然得到相同的错误消息。
请帮忙。