survfit()函数不接受列表,因此我需要一种方法来取消Surv()的结果,而不从列中删除信息。例如,使用肺部数据:
library(survival)
attach(lung)
lung$survObj <- with(lung, Surv(time, status ==2))
lung.2 <- lung
mylist <- list(lung,lung.2)
以下是尝试使用我的列表中的lung
并将lung$survObj
传递给`survfit()并按第5列(性别)分组:
survfit(formula = mylist[[1]][11] ~ mylist[[1]][5], data = mylist[[1]])
invalid type (list) for variable 'mylist[[1]][11]'
但是给出了以下内容:
nrow(mylist[[1]][11])
228
和
length(unlist[[1]][11])
456
即。加倍!
我明显抱怨我正在比较不等长的列。
还注意到+
符号在取消列出后被删除,这对于survfit()至关重要。
有人设法在数据帧列表上调用了survfit吗?
感谢。
答案 0 :(得分:1)
以下是您问题的三种可能解决方案。
A)
survfit(survObj ~ sex, data=mylist[[1]])
B)
Y1 <- mylist[[1]]$survObj
x1 <- mylist[[1]]$sex
survfit(Y1 ~ x1)
C)
Y2 <- mylist[[1]][11][[1]]
x2 <- mylist[[1]][5][[1]]
survfit(Y2 ~ x2)