coxphm {coxphm}R Documentation

Time-to-Event Data Analysis with Missing Survival Times

Description

Fits a pseudo Cox proprotional hazards model that allow us to analyze time-to-event data when survival times are missing for control groups.

Usage

coxphm(time, status, trt, z, beta0, time0, Atime, Btime, u, s, maxiter, eps)

Arguments

time

Right-censored survival time (time is observed if trt=1. time is not observed if trt=0.)

status

Event indicator (status=1 if event, status=0 otherwise.)

trt

Treatment (or missing) indicator: trt=1 if treatment group (or no missing), trt=0 if control group (missing survival time).

z

Predictors (vector or matrix), where z[,1] must be the same as trt.

beta0

Initial value of regression parameters.

time0

Initial value of (pseudo) survival times for trt=0.

Atime

Duration from treatment available to time-origin.

Btime

Duration from treatment available to survival time. Missing if trt=1.

u

A variable to estimate time0. See the below.

s

Smoothed parameter. (If s=NULL, s=1/qnorm(exp(-n^(-2)))*0.01 is used, where n is the number of samples.)

maxiter

Number of maximim iteration. Default: maxiter=1000.

eps

Stopping critiera. Default: eps=0.01.

Details

Cox's proportional hazards model is not directly used to estimate treatment effects when survival times for subjects in the control group are missing. By regarding these missing survival times as nuisance parameters, the pseudo partial likelihood function is used to estimate the regression and nuisance parameters simultaneously with an unspecified baseline hazard function.

In the pseudo partial likelihood, the smoothed parameter s is used to approximate risk sets as cumulative normal distributions with s as the scale parameter. Choosing a sufficiently small s ensures that the pseudo partial likelihood accurately approximates the partial likelihood.

The method depends on the choice of initial value, and hence, it is crucial to choose the initial value as close to the true value as possible. If this is not possible, a data-driven initial value can is utilized as follows. If beta0=NULL, a logistic regression is used to model the probability of status=1 using z as a predictor, and beta0 is set to the regression coefficient from the logistic regression. If time0=NULL, a linear regression is used to model Atime using u as a predictor, and time0 is set to Btime minus estimated Atime. Here, u and Btime are observed for all samples, whereas Atime is observed for trt=1. Here, Atime,Btime and u are not used if time0 is input.

Value

conv

Algorithm convergence: yes or not.

beta

Estimated regression parameter: beta: estimated coefficient, se: standard error; lcl: 95% lower confidence limit, ucl: 95% upper confidence limit, statistics: test statistics; pvalue: pvalue.

eta

Estimated pseudo survival time.

loglik

Log pseudo-partial-likelihood value.

iter

Number of iterations.

Author(s)

Yunro Chung [aut, cre]

References

Pseudo partial likelihood method for proportional hazards models when time origin is missing for control group with applications to SARS-CoV-2 Seroprevalence Study (in-progress)

Examples

#Mayo's pbc dataset from the survival package.
pbc1=pbc[1:200,] #use the first 200 patients

time=pbc1$time
status=pbc1$status
status[which(status==1)]=0 #transplant
status[which(status==2)]=1 #death

trt=pbc1$trt
trt[which(trt==2)]=0 #0 for placebo, 1 for treatment

age=pbc1$age
z=cbind(trt,age)
colnames(z)=c("trt","age")

#0. Cox model
fit0=coxph(Surv(time,status)~z)

#1. Pseudo-Cox model
#1.1. set (true) initial value
beta0=fit0$coefficients
time0=time[which(trt==0)]

#1.2. Survival times are missing if trt=0
time[which(trt==0)]=NA

#1.3. fits pseudo-Cox
fit1=coxphm(time, status, trt=trt, z=z, beta0=beta0, time0=time0)

#2. Cox vs pseudo-cox
print(summary(fit0)$coefficient)
print(fit1$beta)

[Package coxphm version 0.2.0 Index]