Dear All, is there a convenient way to combine Surv objects? Imagine two Surv objects as in the following example. Is it possible to combine them into one _Surv_ object? I tried rbind(), cbind(), c(), merge(), but none of these function does, what I would like. So I drafted a method for rbind.Surv (see below), but I would be happy about a better solution. Ideas? Comments? Thanks, Heinz R version 2.4.0 Patched (2006-11-03 r39792) Windows XP library(survival) ## create example data so1 <- Surv(1:5, c(0, 0, 1, 0, 1)) so2 <- Surv(6:8, c(1, 0, 0)) ### "combinefunction"(so1, so2) ## desired result: [1] 1+ 2+ 3 4+ 5 6 7+ 8+ ### Surv method for rbind - untested rbind.Surv <- function(..., deparse.level = 1) { so <- list(...) ## check objects for number of columns so.dims <- sapply(so, dim)[2, ] # colums of each so min.so.cols <- min(so.dims) max.so.cols <- max(so.dims) ## if max range == 3 insert zero column in so with only 2 columns if (min.so.cols == 2 & max.so.cols == 3) for (i in seq(along=so)) { if (dim(so[[i]])[2] == 2) so[[i]] <- cbind(0, so[[i]]) } ## function to get column in list element elco <- function(element,column) {element[,column]} if (max.so.cols == 2) return(Surv(unlist(sapply(so, elco, 1)), unlist(sapply(so, elco, 2)))) else return(Surv(unlist(sapply(so, elco, 1)), unlist(sapply(so, elco, 2)), unlist(sapply(so, elco, 3)))) } rbind(so1, so2)