Package 'tLagPropOdds'

Title: Proportional Odds Model with Censored, Time-Lagged Categorical Outcome
Description: Implements a semiparametric estimator for the odds ratio model with censored, time-lagged, ordered categorical outcome in a randomized clinical trial that incorporates baseline and time-dependent information. Tsiatis, A. A. and Davidian, M. (2021) <arXiv:2106.15559>.
Authors: Marie Davidian [aut], A. A. Tsiatis [aut], Shannon T. Holloway [aut, cre]
Maintainer: Shannon T. Holloway <[email protected]>
License: GPL-2
Version: 1.9
Built: 2025-01-07 03:13:26 UTC
Source: https://github.com/cran/tLagPropOdds

Help Index


Estimation of the Probability of a Specific Categorical Outcome by Treatment

Description

Inverse probability weighted complete case (IPWCC) and augmented inverse probability weighted complete case (AIPWCC) estimators for the probability of falling into a specific time-lagged ordered categorical outcome in a randomized clinical trial.

Usage

catProbs(data, ..., ti = NULL, td = NULL)

Arguments

data

A data.frame object. A data.frame containing all observed data. At a minimum, this data.frame must contain columns with headers "id", "U", "delta", "Cat" and "A". If the time-independent component of the estimator is to be included, data.frame must also contain the bases of f(X). If the time-dependent component is included, data.frame must also contain the bases of h(X,L) as well as the time intervals with column headers {"tstart", "tstop"} or {"start","stop"}. See Details for additional information.

...

Ignored. Included to require named inputs.

ti

A character or integer vector or NULL. The columns of data to be included in the time-independent component of the estimator, f_m(X) m = 0, ..., M. If NULL, the time-independent component is excluded from the AIPWCC estimator. See Details for additional information.

td

A character or integer vector or NULL. The columns of data to be included in the time-dependent component of the estimator, h_l(X,Lbar), l = 1, ..., L. If NULL, the time-dependent component is excluded from the AIPWCC estimator. See Details for additional information.

Details

At a minimum, the data provided for the analysis must contain the following information:

id:

A unique participant identifier.

U:

The time to ascertainment of category or censoring.

delta:

The indicator of ascertainment of category (1 if U is the time to ascertainment; 0 otherwise).

Cat:

The ordered outcome category. Data must be provided as a factor or an integer or be able to be converted to an integer without loss of information. If participant was censored (delta = 0), Cat can take any integer-like value or NA.

A:

The treatment received. Data must be provided as a factor or an integer or be able to be converted to an integer without loss of information.

With the exception of Cat, data must be complete.

If the time-independent component is to be included in the AIPWCC estimator, data must also include the time-independent basis functions f_m(X) m = 0, ..., M. If the intercept (f_0) term is not provided, it will be added by the software.

If the time-dependent component is to be included in the AIPWCC estimator, the data.frame must be a time-dependent dataset as described by package survival. Specifically, the time-dependent data must be specified for intervals (start,stop], and the data must include the following additional columns:

tstart:

The lower boundary of the time interval to which the data pertain.

tstop:

The upper boundary of the time interval to which the data pertain.

Note that column headers {"start", "stop"} are also accepted.

The various combinations of inputs ti and td yield the following:

ti = NULL, td = NULL

the IPWCC estimate is returned. (denoted as IPW in the simulations of the original manuscript.)

ti != NULL, td != NULL

the IPWCC and the full AIPWCC estimates are returned. (denoted as AIPW2 in the simulations of the original manuscript.)

ti = NULL, td != NULL

the IPWCC and the partial, time-independent AIPWCC estimates are returned. (denoted as AIPW1 in the simulations of the original manuscript.)

ti = NULL, td != NULL

the IPWCC and the partial, time-dependent AIPWCC estimates are returned.

If a treatment subgroup has <5% censoring, a message is generated and the treatment subgroup is removed from the time-dependent component of the AIPWCC estimator. If there is no censoring, the IPWCC estimator approaches the usual proportional odds estimator.

Value

An S3 object of class catProbsObj containing a list. The elements of the list correspond to the selected AIPWCC and/or IPWCC estimators. For each estimator, a list of matrix objects is returned, one for each treatment, that contains the estimated probabilities, their asymptotic standard errors, and the 95% confidence intervals. The S3 object has an additional attributes, "type", giving a verbose description of the components contained in the estimator.

Examples

data(tLagData)

# full AIPWCC estimator
catProbs(data = tLagData, ti = "x", td = c("hospStatus", "daysOut"))

# partial, time-independent AIPWCC estimator
catProbs(data = tLagData, ti = "x")

# partial, time-dependent AIPWCC estimator
catProbs(data = tLagData, td = c("hospStatus", "daysOut"))

Print Analysis Results

Description

Prints the key results.

Prints the key results.

Usage

## S3 method for class 'catProbsObj'
print(x, ...)

## S3 method for class 'tLagObj'
print(x, ...)

Arguments

x

A tLagObj object. The value returned by tLagPropOdds().

...

Ignored.

Examples

data(tLagData)

# full AIPWCC estimator
res <- catProbs(data = tLagData, 
                ti = "x",  
                td = c("hospStatus", "daysOut"))

print(x = res)

data(tLagData)

# full AIPWCC estimator
res <- tLagPropOdds(data = tLagData, 
                    ti = "x",  
                    td = c("hospStatus", "daysOut"))

print(x = res)

Toy Dataset For Illustration

Description

These data are provided for the purposes of illustrating the use of the software. Though the data were generated under a scenario similar to a real-world COVID-19 therapeutics clinical trial, they should not be interpreted as representing true clinical trial data.

Usage

data(tLagData)

Format

tLagData is a time-dependent data.frame containing the following information for 602 participants ascertained at day 90 of a fictitious randomized clinical trial.

id:

A unique participant identifier.

A:

The treatment received, where A={0,1}.

Cat:

The ordered outcome category. There are 6 categories ascertained at day 90.

1:

at home and off oxygen, number of days >= 77;

2:

at home and off oxygen, number of days 49-76;

3:

at home and off oxygen, number of days 1-48;

4:

not hospitalized and either at home on oxygen or not home;

5:

hospitalized for medical care or in hospice care; and

6:

dead.

If participant is censored, Cat = NA.

U:

The time at which the outcome category was determined or the censoring time. For Cat = 1-5, U is the interim analysis time (90 days). For Cat = 6, U is the time of death. For Cat = NA, U is the censoring time.

delta:

The event indicator (1 if U is the time at which the outcome category was determined; 0 if censored).

x:

A continuous baseline covariate.

start:

The lower bound of the time interval to which the given covariate values pertain.

stop:

The upper bound of the time interval to which the given covariate values pertain.

hospStatus:

A time-dependent indicator of hospital status, where 1 indicates that the participant was not in the hospital during interval (start, stop]; 0 otherwise.

daysOut:

The expected number of continuous days out of hospital at the time of the interim analysis (90 days).


Estimation of the Odds Ratio in a Proportional Odds Model with Censored Time-lagged Outcome

Description

Inverse probability weighted complete case (IPWCC) and augmented inverse probability weighted complete case (AIPWCC) estimators for the odds ratio in a proportional odds model with time-lagged ordered categorical outcome in a randomized clinical trial.

Usage

tLagPropOdds(data, ..., ti = NULL, td = NULL, itmax = 500, tol = 1e-05)

Arguments

data

A data.frame object. A data.frame containing all observed data. At a minimum, this data.frame must contain columns with headers "id", "U", "delta", "Cat" and "A". If the time-independent component of the estimator is to be included, data.frame must also contain the bases of f(X). If the time-dependent component is included, data.frame must also contain the bases of h(X,L) as well as the time intervals with column headers {"tstart", "tstop"} or {"start","stop"}. See Details for additional information.

...

Ignored. Included to require named inputs.

ti

A character or integer vector or NULL. The columns of data to be included in the time-independent component of the estimator, f_m(X) m = 0, ..., M. If NULL, the time-independent component is excluded from the AIPWCC estimator. See Details for additional information.

td

A character or integer vector or NULL. The columns of data to be included in the time-dependent component of the estimator, h_l(X,Lbar), l = 1, ..., L. If NULL, the time-dependent component is excluded from the AIPWCC estimator. See Details for additional information.

itmax

An integer object. The maximum number of iterations for the Newton-Raphson algorithm used to estimate parameters alpha and beta.

tol

A numeric object. The value at which the Newton-Raphson is deemed to have converged.

Details

At a minimum, the data provided for the analysis must contain the following information:

id:

A unique participant identifier.

U:

The time to ascertainment of category or censoring.

delta:

The indicator of ascertainment of category (1 if U is the time to ascertainment; 0 otherwise).

Cat:

The ordered outcome category. Data must be provided as a factor or an integer or be able to be converted to an integer without loss of information. If participant was censored (delta = 0), Cat can take any integer-like value or NA.

A:

The treatment received. Data must be provided as a factor or an integer or be able to be converted to an integer without loss of information.

With the exception of Cat, data must be complete.

If the time-independent component is to be included in the AIPWCC estimator, data must also include the time-independent basis functions f_m(X) m = 0, ..., M. If the intercept (f_0) term is not provided, it will be added by the software.

If the time-dependent component is to be included in the AIPWCC estimator, the data.frame must be a time-dependent dataset as described by package survival. Specifically, the time-dependent data must be specified for intervals (start,stop], and the data must include the following additional columns:

tstart:

The lower boundary of the time interval to which the data pertain.

tstop:

The upper boundary of the time interval to which the data pertain.

Note that column headers {"start", "stop"} are also accepted.

The various combinations of inputs ti and td yield the following:

ti = NULL, td = NULL

the IPWCC estimate is returned. (denoted as IPW in the simulations of the original manuscript.)

ti != NULL, td != NULL

the IPWCC and the full AIPWCC estimates are returned. (denoted as AIPW2 in the simulations of the original manuscript.)

ti = NULL, td != NULL

the IPWCC and the partial, time-independent AIPWCC estimates are returned. (denoted as AIPW1 in the simulations of the original manuscript.)

ti = NULL, td != NULL

the IPWCC and the partial, time-dependent AIPWCC estimates are returned. (not discussed in the simulations of the original manuscript.)

If a treatment subgroup has <5% censoring, a message is generated and the treatment subgroup is removed from the time-dependent component of the AIPWCC estimator. If there is no censoring, the IPWCC estimator approaches the usual proportional odds estimator.

Value

An S3 object of class tLagObj containing a list. The elements of the list correspond to the selected AIPWCC and/or IPWCC estimators. For each estimator, two matrix objects are returned: $logOdds contains the estimated beta parameters, their standard errors estimated using the sandwich estimator, the 95% confidence intervals, and the p-values for the log odds ratio; $odds contains the estimated odds ratio, their standard errors estimated using the delta method, and the 95% confidence intervals. The S3 object has an additional attribute, "type" giving a verbose description of the components contained in the estimator.

Examples

data(tLagData)

# full AIPWCC estimator
tLagPropOdds(data = tLagData, ti = "x", td = c("hospStatus", "daysOut"))

# partial, time-dependent AIPWCC estimator
tLagPropOdds(data = tLagData, td = c("hospStatus", "daysOut"))

# partial, time-independent AIPWCC estimator
tLagPropOdds(data = tLagData, ti = "x")