Learn R Programming

flexsurv (version 0.6)

Survspline: Royston/Parmar spline survival distribution

Description

Probability density, distribution, quantile, hazard and cumulative hazard function for the Royston/Parmar spline model.

Usage

dsurvspline(x, gamma, beta=0, X=0, knots=c(-10,10), scale="hazard",
            offset=0, log=FALSE)
psurvspline(q, gamma, beta=0, X=0, knots=c(-10,10), scale="hazard",
            offset=0, lower.tail=TRUE, log.p=FALSE)
qsurvspline(p, gamma, beta=0, X=0, knots=c(-10,10), scale="hazard",
            offset=0, lower.tail=TRUE, log.p=FALSE)
rsurvspline(n, gamma, beta=0, X=0, knots=c(-10,10), scale="hazard",
            offset=0)
hsurvspline(x, gamma, beta=0, X=0, knots=c(-10,10), scale="hazard",
            offset=0)
Hsurvspline(x, gamma, beta=0, X=0, knots=c(-10,10), scale="hazard",
            offset=0)

Arguments

x,q
Vector of times.
p
Vector of probabilities.
n
Number of random numbers to simulate.
gamma
Parameters describing the baseline spline function, as described in flexsurvspline. This may be supplied as a vector with number of elements equal to the length of knots,
beta
Vector of covariate effects (deprecated).
X
Matrix of covariate values (deprecated).
knots
Locations of knots on the axis of log time, supplied in increasing order. Unlike in flexsurvspline, these include the two boundary knots. If there are no additional knots, the bounda
scale
"hazard", "odds", or "normal", as described in flexsurvspline. With the default of no knots in addition to the boundaries, this model reduces to the
offset
An extra constant to add to the linear predictor $\eta$.
log,log.p
Return log density or probability.
lower.tail
logical; if TRUE (default), probabilities are $P(X \le x)$, otherwise, $P(X > x)$.

Value

  • dsurvspline gives the density, psurvspline gives the distribution function, hsurvspline gives the hazard and Hsurvspline gives the cumulative hazard, as described in flexsurvspline. qsurvspline gives the quantile function, which is computed by crude numerical inversion (using qgeneric). rsurvspline generates random survival times by using qsurvspline on a sample of uniform random numbers. Due to the numerical root-finding involved in qsurvspline, it is slow compared to typical random number generation functions.

References

Royston, P. and Parmar, M. (2002). Flexible parametric proportional-hazards and proportional-odds models for censored survival data, with application to prognostic modelling and estimation of treatment effects. Statistics in Medicine 21(1):2175-2197.

See Also

flexsurvspline.

Examples

Run this code
## reduces to the weibull
regscale <- 0.786; cf <- 1.82
a <- 1/regscale; b <- exp(cf)
dweibull(1, shape=a, scale=b)
dsurvspline(1, gamma=c(log(1 / b^a), a)) # should be the same

## reduces to the log-normal
meanlog <- 1.52; sdlog <- 1.11
dlnorm(1, meanlog, sdlog) 
dsurvspline(1, gamma = c(-meanlog/sdlog, 1/sdlog), scale="normal")
# should be the same

Run the code above in your browser using DataLab