trSurvfit
estimates survival curves under dependent truncation and independent censoring via a structural transformation model.
trSurvfit(
trun,
obs,
delta = NULL,
tFun = "linear",
plots = FALSE,
control = trSurv.control(),
...
)
left truncation time satisfying trun
<= obs
.
observed failure time, must be the same length as trun
, might be right-censored.
an optional 0-1 vector of censoring indicator (0 = censored, 1 = event) for obs
.
If this vector is not specified, cKendall
assumes no censoring and all observed failure time
denote events.
a character string specifying the transformation function or a user specified function indicating the relationship
between \(X\), \(T\), and \(a\).
When tFun
is a character, the following are permitted:
linear transformation structure;
log-linear transformation structure;
exponential transformation structure.
an optional logical value; if TRUE, a series of diagnostic plots as well as the survival curve for the observed failure time will be plotted.
controls the lower and upper bounds when trans
is an user specified function.
for future methods.
The output contains the following components:
surv
is a data.frame
contains the survival probabilities estimates.
byTau
a list contains the estimator of transformation parameter:
par
is the best set of transformation parameter found;
obj
is the value of the inverse probability weighted Kendall's tau corresponding to 'par'.
byP
a list contains the estimator of transformation parameter:
par
is the best set of transformation parameter found;
obj
is the value of the inverse probability weighted Kendall's tau corresponding to 'par'.
qind
a data frame consists of two quasi-independent variables:
trun
is the transformed truncation time;
obs
is the corresponding uncensored failure time.
A structural transformation model assumes there is a latent, quasi-independent truncation time that is associated with the observed dependent truncation time, the event time, and an unknown dependence parameter through a specified funciton. The dependence parameter is chosen to either minimize the absolute value of the restricted inverse probability weighted Kendall's tau or maximize the corresponding \(p\)-value. The marginal distribution for the truncation time and the event time are completely left unspecified.
The structure of the transformation model is of the form: $$h(U) = (1 + a)^{-1} \times (h(T) + ah(X)),$$ where \(T\) is the truncation time, \(X\) is the observed failure time, \(U\) is the transformed truncation time that is quasi-independent from \(X\) and \(h(\cdot)\) is a monotonic transformation function. The condition, \(T < X\), is assumed to be satisfied. The quasi-independent truncation time, \(U\), is obtained by inverting the test for quasi-independence by either minimizing the absolute value of the restricted inverse probability weighted Kendall's tau or maximize the corresponding \(p\)-value.
At the current version, three transformation structures can be specified. trans = "linear"
corresponds to $$h(X) = 1;$$
trans = "log"
corresponds to $$h(X) = log(X);$$
trans = "exp"
corresponds to $$h(X) = exp(X).$$
Martin E. and Betensky R. A. (2005), Testing quasi-independence of failure and truncation times via conditional Kendall's tau, Journal of the American Statistical Association, 100 (470): 484-492.
Austin, M. D. and Betensky R. A. (2014), Eliminating bias due to censoring in Kendall's tau estimators for quasi-independence of truncation and failure, Computational Statistics & Data Analysis, 73: 16-26.
Chiou, S., Austin, M., Qian, J. and Betensky R. A. (2018), Transformation model estimation of survival under dependent truncation and independent censoring, Statistical Methods in Medical Research, 28 (12): 3785-3798.
# NOT RUN {
data(channing, package = "boot")
chan <- subset(channing, sex == "Male" & entry < exit)
## No display
(fit <- with(chan, trSurvfit(entry, exit, cens)))
## With diagnostic plots and the survival estimate
with(chan, trSurvfit(entry, exit, cens, plots = TRUE))
## Plots survival estimate
plot(fit)
# }
Run the code above in your browser using DataLab