Type: Package
Title: Assessing Heterogeneity in Surrogacy Using Censored Data
Version: 1.0
Date: 2024-08-18
Description: Provides functions to assess and test for heterogeneity in the utility of a surrogate marker with respect to a baseline covariate using censored (survival data), and to test for heterogeneity across multiple time points. More details are available in Parast et al (2024) <doi:10.1002/sim.10122>.
License: GPL-2 | GPL-3 [expanded from: GPL]
Imports: stats, Rsurrogate, MASS, groc
NeedsCompilation: no
Packaged: 2024-08-23 11:11:25 UTC; parastlm
Author: Layla Parast [aut, cre]
Maintainer: Layla Parast <parast@austin.utexas.edu>
Depends: R (≥ 3.5.0)
Repository: CRAN
Date/Publication: 2024-08-28 08:10:09 UTC

Estimates the proportion of treatment effect explained by the surrogate marker as a function of a baseline covariate

Description

Assesses heterogeneity in the utility of a surrogate marker with respect to a baseline covariate using censored (survival data) by estimates the proportion of treatment effect explained by the surrogate marker as a function of a baseline covariate, w

Usage

R.main.estimate(xone, xzero, deltaone, deltazero, sone, szero, wone, wzero, w.grd, myt, 
landmark, type = "cont", var = FALSE, test = FALSE, extrapolate = TRUE, h.0 = NULL, 
h.1 = NULL, h.w = NULL, h.s = NULL, h.w.1 = NULL)

Arguments

xone

x1, observed event time in the treated group

xzero

x0, observed event time in the control group

deltaone

delta1, event indicator in the treated group

deltazero

delta0, event indicator in the control group

sone

s1, surrogate marker in the treated group

szero

s0, surrogate marker in the control group

wone

w1, baseline covariate in the treated group

wzero

w0, baseline covariate in the control group

w.grd

grid for w where estimation will be provided

myt

t of interest

landmark

t0, landmark time

type

options are "cont" or "discrete"; type of baseline covariate, default is "cont"

var

TRUE or FALSE, if variance/standard error estimates are wanted

test

TRUE or FALSE, if test for heterogeneity is wanted wanted

extrapolate

TRUE or FALSE

h.0

bandwidth

h.1

bandwidth

h.w

bandwidth

h.s

bandwidth

h.w.1

bandwidth

Value

A list is returned:

w.values

grid for w where estimation is provided

R.s.w

The propoportion of treatment effect explained as a function of the baseline covariate, w

delta.w

The treatment effect as a function of the baseline covariate, w

delta.s.w

The residual treatment effect as a function of the baseline covariate, w

sd.R

Standard error estimate of R.s.w

sd.delta

Standard error estimate of delta.w

sd.delta.s

Standard error estimate of delta.s.w

pval.omnibus

p-value from the omnibus test for heterogeneity

pval.con

p-value from the conservative omnibus test for heterogeneity

Author(s)

Layla Parast

References

Parast L, Tian L, Cai, T. (2024) "Assessing Heterogeneity in Surrogacy Using Censored Data." Statistics in Medicine, 43(17): 3184-3209.

Examples

	data(example.data)
	names(example.data)
	R.main.estimate(xone=example.data$x1, xzero=example.data$x0, deltaone=example.data$d1, 
	deltazero=example.data$d0, sone=log(example.data$s1), szero=log(example.data$s0), 
	wone=log(example.data$w1), wzero=log(example.data$w0), 
	w.grd=log(seq(0.1,0.9, length=25)), myt=1, landmark=0.5)
	R.main.estimate(xone=example.data$x1, xzero=example.data$x0, deltaone=example.data$d1, 
	deltazero=example.data$d0, sone=log(example.data$s1), szero=log(example.data$s0), 
	wone=example.data$w1_cat, wzero=example.data$w0_cat, 
	myt=1, landmark=0.5,type = "discrete", w.grd = c(1,2,3,4))
	#computationally intensive
	
	R.main.estimate(xone=example.data$x1, xzero=example.data$x0, deltaone=example.data$d1,
	deltazero=example.data$d0, sone=log(example.data$s1), szero=log(example.data$s0), 
	wone=log(example.data$w1), wzero=log(example.data$w0), 
	w.grd=log(seq(0.1,0.9, length=25)), myt=1, landmark=0.5, test=TRUE)
	

Estimates the propoportion of treatment effect explained as a function of a baseline covariate, w

Description

Estimates the propoportion of treatment effect explained as a function of a baseline covariate, w

Usage

R.surv.s.w(xone, xzero, deltaone, deltazero, sone, szero, wone, wzero, w.grd, 
myt, landmark, extrapolate = TRUE, h.0 = NULL, h.1 = NULL, h.w = NULL, 
h.s = NULL, h.w.1 = NULL)

Arguments

xone

x1

xzero

x0

deltaone

delta1

deltazero

delta0

sone

s1

szero

s0

wone

w1

wzero

w0

w.grd

grid for w

myt

t of interest

landmark

landmark time

extrapolate

TRUE or FALSE

h.0

bandwidth

h.1

bandwidth

h.w

bandwidth

h.s

bandwidth

h.w.1

bandwidth

Value

A list with the following components:

R.s.w

The propoportion of treatment effect explained as a function of the baseline covariate, w

delta.w

The treatment effect as a function of the baseline covariate, w

delta.s.w

The residual treatment effect as a function of the baseline covariate, w


Calculates robust residual treatment effect accounting for surrogate marker information measured at a specified time and primary outcome information up to that specified time

Description

This function calculates the robust estimate of the residual treatment effect accounting for surrogate marker information measured at t_0 and primary outcome information up to t_0 i.e. the hypothetical treatment effect if both the surrogate marker distribution at t_0 and survival up to t_0 in the treatment group look like the surrogate marker distribution and survival up to t_0 in the control group. Ideally this function is only used as a helper function and is not directly called.

Usage

delta.s.surv.estimate.new(xone, xzero, deltaone, deltazero, sone, szero, t, 
weight.perturb = NULL, landmark, extrapolate = FALSE, transform = FALSE, 
approx = TRUE, warn.te = FALSE, warn.support = FALSE)

Arguments

xone

numeric vector, the observed event times in the treatment group, X = min(T,C) where T is the time of the primary outcome and C is the censoring time.

xzero

numeric vector, the observed event times in the control group, X = min(T,C) where T is the time of the primary outcome and C is the censoring time.

deltaone

numeric vector, the event indicators for the treatment group, D = I(T<C) where T is the time of the primary outcome and C is the censoring time.

deltazero

numeric vector, the event indicators for the control group, D = I(T<C) where T is the time of the primary outcome and C is the censoring time.

sone

numeric vector; surrogate marker measurement at t_0 for treated observations, assumed to be continuous. If X_{1i}<t_0, then the surrogate marker measurement should be NA.

szero

numeric vector; surrogate marker measurement at t_0 for control observations, assumed to be continuous. If X_{1i}<t_0, then the surrogate marker measurement should be NA.

t

the time of interest.

weight.perturb

weights used for perturbation resampling.

landmark

the landmark time t_0 or time of surrogate marker measurement.

extrapolate

TRUE or FALSE; indicates whether the user wants to use extrapolation.

transform

TRUE or FALSE; indicates whether the user wants to use a transformation for the surrogate marker.

approx

TRUE or FALSE indicating whether an approximation should be used when calculating the probability of censoring; most relevant in settings where the survival time of interest for the primary outcome is greater than the last observed event but before the last censored case, default is TRUE.

warn.te

value passed from R.s.estimate function to control warnings; user does not need to specify.

warn.support

value passed from R.s.estimate function to control warnings; user does not need to specify.

Details

Details are included in the documentation for R.s.surv.estimate.

Value

\hat{\Delta}_S(t,t_0), the robust residual treatment effect estimate accounting for surrogate marker information measured at t_0 and primary outcome information up to t_0.

References

Parast, L., Cai, T., & Tian, L. (2017). Evaluating surrogate marker information using censored data. Statistics in Medicine, 36(11), 1767-1782.


Example data

Description

Example data

Usage

data("example.data")

Format

A list with 10 elements representing 2000 observations from a treatment group and 1500 observations from a control group:

s1

the surrogate marker in the treatment group

s0

the surrogate marker in the control group

w1

the baseline covariate of interest in the treatment group

w0

the baseline covariate of interest in the control group

d1

the event indicator in the treatment group

d0

the event indicator in the control group

x1

the observed event time in the treatment group

x0

the observed evenet time in the control group

w1_cat

the discrete baseline covariate of interest in the treatment group

w0_cat

the discrete baseline covariate of interest in the treatment group

Examples

data(example.data)
names(example.data)

Estimates P(T>t|W=w)

Description

Estimates P(T>t|W=w)

Usage

pred.smooth.surv.w(x.ref, delta.ref, w.ref, w.apply, myt, extrapolate = TRUE, 
h.use = NULL, warn.support = FALSE)

Arguments

x.ref

x reference

delta.ref

delta reference

w.ref

w reference

w.apply

w to apply estimate to

myt

time of interest

extrapolate

TRUE or FALSE

h.use

bandwidth

warn.support

TRUE or FALSE

Value

Conditional survival estimates


Estimates P(T>t|T>t_0, S=s, W=w)

Description

Estimates P(T>t|T>t_0, S=s, W=w)

Usage

pred.smooth.surv.w.s(x.ref, delta.ref, w.ref, s.ref, w.apply, s.apply, h.s, h.w, 
myt, extrapolate = TRUE, kerni.ss.s, tmpind, tj)

Arguments

x.ref

x reference

delta.ref

delta reference

w.ref

w reference

s.ref

s reference

w.apply

w to apply estimate to

s.apply

s to apply estimate to

h.s

bandwidth

h.w

bandwidth

myt

time of interest

extrapolate

TRUE or FALSE

kerni.ss.s

kernel matrix

tmpind

temporary indicator

tj

temporary tj

Value

Conditional survival estimate


Tests for heterogeneity across multiple timepoints

Description

Tests for heterogeneity across multiple timepoints

Usage

test.multiplet(t.mult, xone, xzero, deltaone, deltazero, sone, szero, wone, 
wzero, w.grd, landmark, extrapolate = TRUE, h.0 = NULL, h.1 = NULL, h.w = NULL, 
h.s = NULL, h.w.1 = NULL,type = "cont")

Arguments

t.mult

Vector of time points

xone

x1, observed event time in the treated group

xzero

x0, observed event time in the control group

deltaone

delta1, event indicator in the treated group

deltazero

delta0, event indicator in the control group

sone

s1, surrogate marker in the treated group

szero

s0, surrogate marker in the control group

wone

w1, baseline covariate in the treated group

wzero

w0, baseline covariate in the control group

w.grd

grid for w where estimation will be provided

landmark

t0, landmark time

extrapolate

TRUE or FALSE

h.0

bandwidth

h.1

bandwidth

h.w

bandwidth

h.s

bandwidth

h.w.1

bandwidth

type

options are "cont" or "discrete"; type of baseline covariate, default is "cont"

Value

A list is returned:

pval.multi

p-value for omnibus test

pval.con.multi

p-value for conservative omnibus test (only applicable for continuous W)

Author(s)

Layla Parast

References

Parast L, Tian L, Cai, T. (2024) "Assessing Heterogeneity in Surrogacy Using Censored Data." Statistics in Medicine, 43(17): 3184-3209.

Examples

	data(example.data)
	names(example.data)
	#computationally intensive
	
	test.multiplet(t.mult = c(1,1.25,1.5), xone=example.data$x1, xzero=example.data$x0, 
	deltaone=example.data$d1, deltazero=example.data$d0, sone=log(example.data$s1), 
	szero=log(example.data$s0), wone=log(example.data$w1), wzero=log(example.data$w0),
	 w.grd=log(seq(0.1,0.9, length=25)), landmark=0.5)