| Title: | Transformation-Based Regression under Dependent Truncation |
| Version: | 1.2.4 |
| Description: | A latent, quasi-independent truncation time is assumed to be linked with the observed dependent truncation time, the event time, and an unknown transformation parameter via a structural transformation model. The transformation parameter is chosen to minimize the conditional Kendall's tau (Martin and Betensky, 2005) <doi:10.1198/016214504000001538> or the regression coefficient estimates (Jones and Crowley, 1992) <doi:10.2307/2336782>. The marginal distribution for the truncation time and the event time are completely left unspecified. The methodology is applied to survival curve estimation and regression analysis. |
| License: | GPL (≥ 3) |
| URL: | https://github.com/stc04003/tranSurv |
| BugReports: | https://github.com/stc04003/tranSurv/issues |
| Encoding: | UTF-8 |
| RoxygenNote: | 7.3.2 |
| Imports: | rootSolve, truncSP, survival, SQUAREM, methods |
| Suggests: | MASS, boot |
| NeedsCompilation: | yes |
| Packaged: | 2025-09-22 13:51:50 UTC; schiou |
| Author: | Sy Han (Steven) Chiou [aut, cre], Jing Qian [aut] |
| Maintainer: | Sy Han (Steven) Chiou <schiou@smu.edu> |
| Repository: | CRAN |
| Date/Publication: | 2025-09-22 14:20:02 UTC |
tranSurv:Transformation Model Based Survival Curve Estimation with Dependent Left Truncation
Description
A package that estimates survival curve under a dependent truncation and independent right censoring via a structural transformation method. The package also includes hypothesis test of quasi-independence based on the conditional Kendall's tau of Martin and Betensky (2005) and two versions of the inverse probability weighted Kendall's tau of Austin and Betensky (2014).
Author(s)
Maintainer: Sy Han (Steven) Chiou schiou@smu.edu
Authors:
Jing Qian qian@schoolph.umass.edu
References
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. (2016), Transformation model estimation of survival under dependent truncation and independent censoring, Statistical Methods in Medical Research, 28 (12): 3785-3798.
See Also
Useful links:
This is the Surv function imported from survival
Description
This function is imported from the survival package,
used to create survival objects to be fitted with trReg()
and trSurvfit. See Surv for the
documentation on Surv.
Value
a Surv object representing left-truncated and right-censored data, as defined in the 'survival' package.
Conditional Kendall's tau
Description
Computes the conditional Kendall's tau and inference
Usage
cKendall(
trun,
obs,
delta = NULL,
method = "MB",
weights = NULL,
a = 0,
trans = "linear",
...
)
Arguments
trun |
left truncation time satisfying |
obs |
observed failure time, must be the same length as |
delta |
an optional 0-1 vector of censoring indicator (0 = censored, 1 = event) for |
method |
a character string specifying the different version of conditional Kendall's tau to be computed. The following are permitted:
|
weights |
an optional vector of sampling weights used when |
a |
a numeric transformation parameter. The default value is 0, which applies no transformation.
This parameter must be greater than |
trans |
a character string specifying the transformation structure. The following are permitted:
|
... |
for future methods. |
Details
This function performs statistical test for quasi-independence between truncation time and failure time. The hypothesis test is based on the conditional Kendall's tau of Martin and Betensky (2005) and the two versions of the inverse probability weighted Kendall's tau of Austin and Betensky (2014).
The output contains the following components:
- PE
consistent point estimate of the conditional Kendall's tau.
- SE
asymptotic standard error of the conditional Kendall's tau estimator.
- STAT
the value of the normal test statistic.
- p.value
the (Wald) p-value of the test.
- trans
the transformation model (if applied).
- a
the estimated transformation parameter.
Value
A numeric value representing the unconditional Kendall's tau.
References
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.
See Also
Examples
data(channing, package = "boot")
chan <- subset(channing, sex == "Male" & entry < exit)
attach(chan)
cKendall(entry, exit, cens)
cKendall(entry, exit, cens, method = "IPW1")
cKendall(entry, exit, cens, method = "IPW2")
detach(chan)
Goodness of fit based on left-truncated regression model
Description
Provide goodness-of-fit diagnostics for the transformation model.
Usage
gof(x, B = 200, P = 1)
Arguments
x |
an object of class |
B |
an integer value specifies the bootstrap size for the left-truncated regression model. A value greater than 2 is required. |
P |
an integer value specifies number of breakpoints to test the linearity of the transformation model.
When |
Details
The goodness of fit assessment of the transformation model focus on the structure of the transformation model, which has 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.
With the condition, T < X, assumed to be satisfied,
the structure of the transformation model implies
X - T = -(1 + a) E(U) + (1 + a) X - (1 + a) \times [U - E(U)] := \beta_0 + \beta_1X + \epsilon.
The regression estimates can be obtained by the left-truncated regression model (Karlsson and Lindmark, 2014).
To evaluate the goodness of fit of the transformation model,
the gof() function directly test the linearity in X by considering larger model that are nonlinear in X.
In particular, we expand the covariates X to P piecewise linearity terms and test for equality of the associated coefficients.
Value
A list containing the following elements
- coefficients
the regression coefficients of the left-truncated regression model.
- pval
the p-value for the equality of the piecewise linearity terms in the expanded model. See Details.
- input
the class of the inputted object,
x.- dat.gof
a data frame used in fitting the inputted model
x.
References
Karlsson, M., Lindmark, A. (2014) truncSP: An R Package for Estimation of Semi-Parametric Truncated Linear Regression Models, Journal of Statistical Software, 57 (14), pp 1–19.
Examples
data(channing, package = "boot")
chan <- subset(channing, entry < exit)
fit <- trReg(Surv(entry, exit, cens) ~ sex, data = chan)
gof(fit, B = 10)
Kendall's tau
Description
Computes the unconditional Kendall's tau
Usage
kendall(x, y = NULL)
Arguments
x |
a numeric vector. |
y |
a numeric vector with compatible length to |
Details
This function computes the unconditional Kendall's tau (the Kendall rank correlation coefficient) for two variables.
The returned value is equivalent to that from cor with method = "kendall", but kendall is
implemented in C.
Value
The output is a numeric value for the unconditional Kendall's tau.
A numeric value representing the unconditional Kendall's tau.
References
Kendall, M. G. (1938), A new measure of rank correlation, Biometrika, 81–93.
See Also
Examples
library(MASS)
set.seed(1)
dat <- mvrnorm(5000, c(0, 0), matrix(c(1, .5, .5, 1), 2))
## True kendall's tau is 2 * asin(.5) / pi
system.time(print(kendall(dat)))
system.time(print(cor(dat, method = "kendall")))
Plot the survival estimation based on the structural transformation model
Description
Plot the survival estimation for an trSurvfit/trReg object.
Usage
## S3 method for class 'trSurvfit'
plot(x, ...)
Arguments
x |
an object of class |
... |
graphical parameters to be passed to methods. |
Value
A ggplot object.
Examples
data(channing, package = "boot")
chan <- subset(channing, entry < exit)
plot(trReg(Surv(entry, exit, cens) ~ 1, data = chan))
Product-Moment Correlation Coefficient
Description
pmcc computes the conditional product-moment correlation coefficient proposed by Chen et al. (1996).
The conditional product-moment correlation coefficient uses only the uncensored events.
Usage
pmcc(trun, obs, a = 0, trans = "linear")
Arguments
trun |
left truncation time satisfying |
obs |
observed failure time, must be the same length as |
a |
a numeric transformation parameter. The default value is 0, which applies no transformation.
This parameter must be greater than |
trans |
a character string specifying the transformation structure. The following are permitted:
|
Value
A numeric value representing the product-moment correlation coefficient.
#' @seealso trSurvfit
Examples
data(channing, package = "boot")
chan <- subset(channing, sex == "Male" & entry < exit & cens == 1)
with(chan, pmcc(entry, exit)) ## cannot handle right censored data
Fitting regression model via structural transformation model
Description
trReg fits transformation model under dependent truncation and independent censoring via a structural transformation model.
Usage
trReg(
formula,
data,
subset,
tFun = "linear",
method = c("kendall", "adjust"),
B = 0,
control = list()
)
Arguments
formula |
a formula expression, of the form |
data |
an optional data frame in which to interpret the variables occurring
in the |
subset |
an optional vector specifying a subset of observations to be used in the fitting process. |
tFun |
a character string specifying the transformation function or a user specified function indicating the relationship between
|
method |
a character string specifying how the transformation parameter is estimated. The available options are |
B |
a numerical value specifies the bootstrap size for estimating the standard error.
When |
control |
a list of control parameters. The following arguments are allowed:
|
Details
The main assumption on the structural transformation model is that it 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 function. 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 one of the following methods:
method = "kendall"by minimizing the absolute value of the restricted inverse probability weighted Kendall's tau or maximize the corresponding
p-value. This is the same procedure used in thetrSUrvfit()function.method = "adjust"includes a function of latent truncation time,
U, as a covariate. A piece-wise function is constructed based on (Q + 1) indicator functions on whetherUfalls in theQth and the (Q+1)th percentile, whereQis the number of cutpoints used. Seecontrolfor details. The transformation parameter,a, is then chosen to minimize the significance of the coefficient parameter.
Value
A trReg object containing the following components:
PEA named numeric matrix of point estimates and related statistics (e.g., coefficient, exponentiated coefficient, standard error, z-score, and p-value).
varNamesCharacter string giving the name(s) of the covariates.
SEA numeric vector contains the bootstrap standard error.
aEstimated transformation parameter.
CallThe matched call to the fitting function.
B,Q,PModel parameters;
Bis the bootstrap sapmle,Qis the number of cutpoints, andPis the number of break points. See Details.tFunA function defining the transformation model.
vNamesCharacter vector of covariate names.
methodCharacter string specifying the estimation method (e.g.,
"kendall"or"adjust")..dataA data frame used in fitting.
See Also
Examples
data(channing, package = "boot")
chan <- subset(channing, entry < exit)
trReg(Surv(entry, exit, cens) ~ sex, data = chan)
Auxiliary for Controlling trSurvfit Fitting
Description
Auxiliary function as user interface for trSurvfit fitting.
Usage
trSurv.control(
interval = c(-1, 20),
lower = min(interval),
upper = max(interval)
)
Arguments
interval |
a vector containing the end-points of the interval to be searched the transformation parameter. |
lower |
the lower end-point of the interval to be searched. |
upper |
the upper end-point of the interval to be searched. |
Value
A list containing the upper and lower bounds in fitting.
See Also
Estimating survival curves via structural transformation model
Description
trSurvfit estimates survival curves under dependent truncation and independent censoring via a structural transformation model.
Usage
trSurvfit(
trun,
obs,
delta = NULL,
tFun = "linear",
plots = FALSE,
control = trSurv.control(),
...
)
Arguments
trun |
left truncation time satisfying |
obs |
observed failure time, must be the same length as |
delta |
an optional 0-1 vector of censoring indicator (0 = censored, 1 = event) for |
tFun |
a character string specifying the transformation function or a user specified function indicating the relationship
between
|
plots |
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. |
control |
controls the lower and upper bounds when |
... |
for future methods. |
Details
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).
Value
The output contains the following components:
survis a
data.framecontains the survival probabilities estimates.byTaua list contains the estimator of transformation parameter:
paris the best set of transformation parameter found;
objis the value of the inverse probability weighted Kendall's tau corresponding to 'par'.
byPa list contains the estimator of transformation parameter:
paris the best set of transformation parameter found;
objis the value of the inverse probability weighted Kendall's tau corresponding to 'par'.
qinda data frame consists of two quasi-independent variables:
trunis the transformed truncation time;
obsis the corresponding uncensored failure time.
References
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.
Examples
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)
Weighted conditional Kendall's tau
Description
This is function computes the perturbed version of the conditional Kendall's tau.
Usage
wKendall(trun, obs, delta = NULL, weights = NULL)
Arguments
trun |
left truncation time satisfying |
obs |
observed failure time, must be the same length as |
delta |
an optional 0-1 vector of censoring indicator (0 = censored, 1 = event) for |
weights |
an optional perturbation weights. |
Value
A numeric value representing the weighted conditional Kendall's tau.
Examples
data(channing, package = "boot")
chan <- subset(channing, sex == "Male" & entry < exit)
## When weights is not specified, this function reduces to condKendall()
with(chan, wKendall(entry, exit, cens))
mean(replicate(1000, with(chan, wKendall(entry, exit, cens, rexp(nrow(chan))))))