survSplit              package:survival              R Documentation

Split a survival data set at specified times

Description:

     Given a survival data set and a set of specified cut times, split
     each record into multiple subrecords at each cut time.  The new
     data set will be in `counting process' format, with a start time,
     stop time, and event status for each record.

Usage:

     survSplit(data, cut, end, event, start, id = NULL, zero = 0,
       episode=NULL)

Arguments:

    data: data frame

     cut: vector of timepoints to cut at

     end: character string with name of event time variable 

   event: character string with name of censoring indicator 

   start: character string with name of start time variable (will be
          created if it does not exist) 

      id: character string with name of new id variable to create
          (optional)

    zero: If 'start' doesn't already exist, this is the time that the
          original records start. May be a vector or single value.

 episode: character string with name of new episode variable (optional)

Details:

     The function also works when the original data are in
     counting-process format, but the 'id' and 'episode' options are of
     little use in this context.

Value:

     New, longer, data frame.

See Also:

     'Surv', 'cut', 'reshape'

Examples:

     aml3<-survSplit(aml,cut=c(5,10,50),end="time",start="start",
           event="status",episode="i")

     summary(aml)
     summary(aml3)

     coxph(Surv(time,status)~x,data=aml)
     ## the same
     coxph(Surv(start,time,status)~x,data=aml3)

     aml4<-survSplit(aml3,cut=20,end="time",start="start", event="status")
     coxph(Surv(start,time,status)~x,data=aml4)

