Learn R Programming

survival (version 2.38-3)

survSplit: 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)

Value

  • New, longer, data frame.

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.

See Also

Surv, cut, reshape

Examples

Run this code
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)

Run the code above in your browser using DataLab