Create a survival object, usually used as a response variable in a model formula.

```
SurvS4(time, time2, event, type =, origin = 0)
is.SurvS4(x)
```

time

for right censored data, this is the follow up time. For interval data, the first argument is the starting time for the interval.

x

any R object.

event

The status indicator, normally 0=alive, 1=dead. Other choices are
`TRUE`

/`FALSE`

(`TRUE`

= death) or 1/2 (2=death). For
interval censored data, the status indicator is 0=right censored,
1=event at `time`

, 2=left censored, 3=interval censored.
Although unusual, the event indicator can be omitted, in which case
all subjects are assumed to have an event.

time2

ending time of the interval for interval censored or counting
process data only. Intervals are assumed to be open on the left and
closed on the right, `(start, end]`

. For counting process
data, `event`

indicates whether an event occurred at the end of
the interval.

type

character string specifying the type of censoring. Possible values
are `"right"`

, `"left"`

, `"counting"`

,
`"interval"`

, or `"interval2"`

. The default is
`"right"`

or `"counting"`

depending on whether the
`time2`

argument is absent or present, respectively.

origin

for counting process data, the hazard function origin. This is most often used in conjunction with a model containing time dependent strata in order to align the subjects properly when they cross over from one strata to another.

An object of class `SurvS4`

(formerly `Surv`

).
There are methods for `print`

, `is.na`

, and
subscripting survival objects. `SurvS4`

objects are
implemented as a matrix of 2 or 3 columns.

In the case of `is.SurvS4`

, a logical value
`TRUE`

if `x`

inherits from class
`"SurvS4"`

, otherwise a `FALSE`

.

Typical usages are

SurvS4(time, event) SurvS4(time, time2, event, type=, origin=0)

In theory it is possible to represent interval censored data without a third column containing the explicit status. Exact, right censored, left censored and interval censored observation would be represented as intervals of (a,a), (a, infinity), (-infinity,b), and (a,b) respectively; each specifying the interval within which the event is known to have occurred.

If `type = "interval2"`

then the representation given
above is assumed, with NA taking the place of infinity.
If `type="interval" `event`

must be given.
If `event`

is `0`

, `1`

, or `2`

,
the relevant information is assumed to be contained in
`time`

, the value in `time2`

is ignored, and the
second column of the result will contain a placeholder.

Presently, the only methods allowing interval
censored data are the parametric models computed by
`survreg`

, so the distinction between
open and closed intervals is unimportant. The distinction
is important for counting process data and the Cox model.

The function tries to distinguish between the use of 0/1
and 1/2 coding for left and right censored data using
`if (max(status)==2)`

. If 1/2 coding is used and all
the subjects are censored, it will guess wrong. Use 0/1
coding in this case.

`SurvS4-class`

,
`cens.poisson`

,
`survreg`

,
`leukemia`

.

```
# NOT RUN {
with(leukemia, SurvS4(time, status))
class(with(leukemia, SurvS4(time, status)))
# }
```

Run the code above in your browser using DataCamp Workspace