2

在我目前的工作中,我经常使用 survfit() 来计算生存数据的 Kaplan-Meier 估计值,并使用 survdiff() 进行对数秩检验。

我想知道如何从 survfit() 调用中提取公式和子集信息并将其直接输入到 survdiff() 中。我通常使用

survdiff(formula(survfit.object)) 

但这不会识别我的 survfit 调用中提供的任何子集参数。

例如:

library(survival)

fail.time <- 12*rexp(100)
group <- factor(sample(1:3,100,replace=TRUE),1:3,c('a','b','c'))
fail.status <- rbinom(100,1,0.4)

srv<-survfit(Surv(fail.time,fail.status)~group,subset=group!="a")
survdiff(formula(srv))

这不是我想要的,而是我想要的

survdiff(formula(srv),subset=group!="a")

但我希望找到一种方法,让我不必再次添加子集信息。

谢谢!

4

1 回答 1

2

R 中的大多数模型拟合对象存储整个调用:

survdiff(formula(srv),subset = srv$call$subset)

要不就:

eval(srv$call)

它将完整地重新运行原始调用。

于 2014-03-31T15:30:57.823 回答