weightsMMD: Estimation of observation-specific weights with monotone...

Description Usage Arguments Details Value Author(s) See Also Examples

View source: R/weightsMMD.R

Description

This function provides stabilized weights for incomplete longitudinal data selected by death. The procedure assumes monotne missing data and a MAR-S mechanism, that is the probability of being observed depends also on further death. Weights are defined as the inverse of the probability of being observed. These are obtained by pooled logistic regressions.

Usage

1
weightsMMD(data, Y, X1, X2, subject, death, time, interval.death = 0, name = "weight")

Arguments

data

data frame containing the observations and all variables named in Y, X1, X2, subject, death and time arguments.

Y

character indicating the name of the response outcome

X1

character vector indicating the name of the covariates with interaction with the outcome Y in the logistic regressions

X2

character vector indicating the name of the covariates without interaction with the outcome Y in the logistic regressions

subject

character indicating the name of the subject identifier

death

character indicating the time of death variable

time

character indicating the measurement time variable. Time should be 1 for the first visit, 2 for the second visit, etc.

interval.death

integer vector, intervals (j-k) to consider for the MAR-S hypothesis (see details). By default, interval.death=0, estimation under the MAR assumption.

name

character indicating the name of the weight variable that will be added to the data

Details

In longitudinal studies, follow-up can be truncated by death. Different missingness mechanism can be assumed. Missing data can be : 1. MCAR (completely at random) if the missingness probability is independent from the outcome and the death time 2. MAR (missing at random ) if the probability is independent from the unobserved values of the outcome and from the death time 3. MAR-S if the probability is independent from the unobserved values but is different according to the death time 4. MNAR (missing not at random) if the probability may depend on unobserved values.

Denoting T_i the death time, R_ij the observation indicator for subject i and occasion j, t the time, Y the outcome and X1 and X2 the covariates, we propose weights for monotone missing data defined as :

w_ij = P(R_ij = 1 | T_i > t_ij, X1_ij, X2_ij) / P(R_ij = 1 | T_i > t_ij, X1_ij, X2_ij, Y_ij-1)

The numerator corresponds to the conditional probability of being observed in the population currently alive under the MCAR assumption.

The denominator is computed as a telescoping product :

P(R_ij = 1 | T_i > t_ij, X1_ij, X2_ij, Y_ij-1) =

prod_k=2^j P(R_ik = 1 | R_ik-1 = 1, T_i > t_ij, X1_ij, X2_ij, Y_ij-1) =

prod_k=2^j lambda_ijk

The probability lambda_ijk are obtained by logistic regressions.

Under the MAR-S assumption, the regression model is :

logit(lambda_ijk) = b_0k(j-k) + b_1(j-k) X1_ik + b_2(j-k) Y_i(k-1) + b_3(j-k) X1_ik Y_i(k-1) + b_4(j-k) X2_ik

For each interval (j-k), one logistic regression is performed.

Under the MAR assumption, one logistic regression is performed :

logit(lambda_ikk) = b_0k + b_1 X1_ik + b_2 X2_ik + b_3 Y_i(k-1) + b_4 X1_ik Y_i(k-1)

Value

A list containing :

data

the data frame with initial data and estimated weights as last column

coef

a list containing the estimates of the logistic regressions. The first element of coef contains the estimates under the MCAR assumption, the further contain the estimates under the MAR or MAR-S assumption.

se

a list containing the standard erros of the estimates contained in coef, in the same order.

Author(s)

Viviane Philipps, Marion Medeville, Anais Rouanet, Helene Jacqmin-Gadda

See Also

weightsIMD

Examples

1
2
w_simdata <- weightsMMD(data=simdata,Y="Ytrunc",X1="X", X2=NULL,
subject="id", death="death", time="time", interval.death = 0)$data

Example output

Loading required package: quantreg
Loading required package: SparseM

Attaching package:SparseMThe following object is masked frompackage:base:

    backsolve

Loading required package: foreach
Loading required package: doParallel
Loading required package: iterators
Loading required package: parallel

weightQuant documentation built on Jan. 5, 2022, 5:08 p.m.