Logistic Regression Using IPCW
Logistic regression over multiple timepoints where right-censoring is handle using inverse probability of censoring weighting.
wglm( regressor.event, formula.censor, times, data, cause = NA, fitter = "coxph", product.limit = FALSE )
regressor.event |
[formula] a formula with empty left hand side and the covariates for the logistic regression on the right hand side. |
formula.censor |
[formula] a formula used to fit the censoring model. |
times |
[numeric vector] time points at which to model the probability of experiencing an event. |
data |
[data.frame] dataset containing the time at which the event occured, the type of event, and regressors used to fit the censoring and logistic models. |
cause |
[character or numeric] the cause of interest. Defaults to the first cause. |
fitter |
[character] routine to fit the Cox regression models. |
product.limit |
[logical] if |
First, a Cox model is fitted (argument formula.censor) and the censoring probabilities are computed relative to each timepoint (argument times) to obtain the censoring weights. Then, for each timepoint, a logistic regression is fitted with the appropriate censoring weights and where the outcome is the indicator of having experience the event of interest (argument cause) at or before the timepoint.
an object of class "wglm"
.
library(survival) set.seed(10) n <- 250 tau <- 1:5 d <- sampleData(n, outcome = "competing.risks") d$Y <- (d$event == 1)*(d$time <= tau[3]) d0 <- d[event!=0] ## remove censoring ## no censoring e0.wglm <- wglm(regressor.event = ~ X1, formula.censor = Surv(time,event==0) ~ X1, times = tau, data = d0) e0.glm <- glm(Y ~ X1, family = binomial, data = d0) ## censoring e.wglm <- wglm(regressor.event = ~ X1, formula.censor = Surv(time,event==0) ~ X1, times = tau, data = d)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.