# IPWE_Qopt_DTR_IndCen: Function to estimate the two-stage quantile-optimal dynamic... In QTOCen: Quantile-Optimal Treatment Regimes with Censored Data

## Description

This function inplements the estimator of two-stage quantile-optimal treatment regime with censored outcome by inverse probability of weighting, which is proposed in Chapter 3 of \insertCitezhou2018quantileQTOCen. We assume the censoring is independent of everything else, including the treatment covariates, and potential outcomes.

Specifically, we do grid search on the sign of the coefficient for the first non-intercept variables in stage 1 and stage 2 and apply genetic algorithm on the remaining coeffients simultaneously. So if stage one has d1 covariates excluding the intercept, stage two has d2, the resulting coefficient has dimension d1+d2+2.

## Usage

 ```1 2 3 4 5 6``` ```IPWE_Qopt_DTR_IndCen(data, tau, regimeClass.stg1, regimeClass.stg2, s_Diff_Time = 1, moPropen1 = "BinaryRandom", moPropen2 = "BinaryRandom", sign_beta1.stg1 = NULL, sign_beta1.stg2 = NULL, Penalty.level = 0, s.tol = 1e-06, it.num = 4, max = TRUE, Domains1 = NULL, Domains2 = NULL, cluster = FALSE, p_level = 1, pop.size = 10000) ```

## Arguments

 `data` a data.frame, containing variables in the `moPropen` and `RegimeClass` and also the response variables, namely `censor_y` as the censored response, and `delta` as the censoring indicator. `tau` a value between 0 and 1. This is the quantile of interest. `regimeClass.stg1` a formula specifying the class of treatment regimes for the first stage. For details of the general formulation of a linear treatment regime see `regimeClass` in `IPWE_Qopt_IndCen`. `regimeClass.stg2` a formula specifying the class of treatment regimes for the second stage `s_Diff_Time` Numeric. The fixed length of time between the first stage treatment and the second stage treatment `moPropen1` the first stage propensity score model. Default is "BinaryRandom". `moPropen2` the second stage propensity score model. Default is "BinaryRandom". `sign_beta1.stg1` Is sign of the coefficient for the first non-intercept variable for the first stage known? Default is NULL, meaning user does not have contraint on the sign; FALSE if the coefficient for the first continuous variable is fixed to be `-1`; TRUE if `1`. We can make the search space discrete because we employ |β_1| = 1 scale normalizaion. `sign_beta1.stg2` Default is NULL. Similar to `sign_beta1.stg1`. `Penalty.level` 0: stop if the marginal quantiles cannot be further optimized; 1: continue the search among treatment regimes with with same value for the TR with the smallest intended proportion of treatment. `s.tol` tolerance level for the GA algorithm. This is input for parameter `solution.tolerance` in function `rgenoud::genoud`. `it.num` the maximum GA iteration number `max` logical. TRUE if the goal is maximization of the quantile. FALSE is the goal is minimization of the quantile. `Domains1` This is optional. If not NULL, please provide the two-column matrix for the searching range of coeffients in stage one. The coefficient taking value of positive/negative one should not be included. `Domains2` This is optional. If not NULL, please provide the two-column matrix for the searching range of coeffients in stage two. The coefficient taking value of positive/negative one should not be included. `cluster` default is FALSE, meaning do not use parallel computing for the genetic algorithm(GA). `p_level` choose between 0,1,2,3 to indicate different levels of output from the genetic function. Specifically, 0 (minimal printing), 1 (normal), 2 (detailed), and 3 (debug). `pop.size` an integer with the default set to be 3000. This is roughly the number individuals for the first generation in the genetic algorithm (`rgenoud::genoud`).

## Details

In our setting, if a subject was censored or had experienced the event of interest before `s_Diff_Time` units of time had elapsed after the first stage of treatment, s/he would not be eligible to receive a second stage treatment.

## Author(s)

Yu Zhou, zhou0269@umn.edu

## References

\insertRef

zhou2018quantileQTOCen

## Examples

 ```1 2 3 4 5``` ```D <- simJLSDdata(400, case="a") fit_2stage <-IPWE_Qopt_DTR_IndCen(data=D, tau= 0.3, regimeClass.stg1 = a0~x0, regimeClass.stg2 = a1~x1, sign_beta1.stg1 = FALSE, sign_beta1.stg2 = FALSE) ```

QTOCen documentation built on June 4, 2019, 5:03 p.m.