learnIQ1var: IQ-learning: contrast variance modeling In iqLearn: Interactive Q-Learning

Description

Estimates the variance function of the contrast function by fitting a constant variance function or a log linear model to the residuals of the contrast mean fit.

Usage

 ```1 2 3 4 5 6 7``` ```learnIQ1var(object, ...) ## S3 method for class 'formula' learnIQ1var(formula, data, treatName, intNames, method, cmObject, ...) ## Default S3 method: learnIQ1var(object, H1CVar, s1sInts, method, ...) ```

Arguments

 `formula ` right-hand side formula containing the linear model to be used for the log-transformed, squared residuals from the contrast function mean fit `data ` data frame containing variables used in `formula` `treatName ` character string indicating the stage 1 treatment name `intNames ` vector of characters indicating the names of the variables that interact with the stage 1 treatment in the contrast function variance model `method ` either "homo" for a constant variance function or "hetero" for a log-linear variance function; default method is "homo" `cmObject ` object of type `learnIQ1cm` `object ` object of type `learnIQ1cm` `H1CVar ` matrix or data frame of first-stage covariates to include as main effects in the log-linear model; default is `NULL` for a constant variance fit `s1sInts ` indices pointing to columns of H1CVar that should be included as treatment interaction effects in the log-linear model; default is `NULL` `... ` additional arguments to be passed to `lm()` when fitting the hetero log-linear model

Details

If `method="homo"`, computes the variance of the residuals from the contrast function mean fit. If `method="hetero"`, fits a model of the form

E (log e^2 | H1, A1) = H10^Tγ0 + A1*H11^Tγ1

where H10 and H11 are summaries of H1. Though a slight abuse of notation, these summaries are not required to be the same as H10 and H11 in the main effect term regression or the contrast mean fit. Also, e^2 = H21^Tβ21 - E(H21^T β21 | H1, A1). For an object of type `learnIQ1var`, `summary(object)` and `plot(object)` can be used for evaluating model fit.

Value

 `stdDev ` standard deviation of the residuals from the contrast function mean fit when `method="homo"`, otherwise `NULL` `stdResids ` standardized residuals of the contrast function after mean and variance modeling, using either `method="homo"` or `"hetero"` `gammaHat0 ` estiamted regression coefficients from the log-linear model main effects when `method="hetero"`, otherwise `NULL` `gammaHat1 ` estimated regression coefficients from the log-linear model interaction effects when `method="hetero"`, otherwise `NULL` `s1VarFit ` `lm()` object from the log-linear model when `method="hetero"`, otherwise `NULL` `homo ` logical variable indicating if `method="homo"` was used `sigPos ` vector of predicted values when A1=1 for all patients `sigNeg ` vector of predicted values when A1=-1 for all patients `s1sInts ` indices of variables in `H1CVar` included as treatment interactions in the model; same as input `s1sInts`

Author(s)

Kristin A. Linn <[email protected]>, Eric B. Laber, Leonard A. Stefanski

References

Linn, K. A., Laber, E. B., Stefanski, L. A. (2015) "iqLearn: Interactive Q-Learning in R", Journal of Statistical Software, 64(1), 1–25.

Laber, E. B., Linn, K. A., and Stefanski, L. A. (2014) "Interactive model building for Q-learning", Biometrika, 101(4), 831-847.

`learnIQ1cm`, `iqResids`
 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35``` ```## load in two-stage BMI data data (bmiData) bmiData\$A1[which (bmiData\$A1=="MR")] = 1 bmiData\$A1[which (bmiData\$A1=="CD")] = -1 bmiData\$A2[which (bmiData\$A2=="MR")] = 1 bmiData\$A2[which (bmiData\$A2=="CD")] = -1 bmiData\$A1 = as.numeric (bmiData\$A1) bmiData\$A2 = as.numeric (bmiData\$A2) s1vars = bmiData[,1:4] s2vars = bmiData[,c (1, 3, 5)] a1 = bmiData[,7] a2 = bmiData[,8] ## define response y to be the negative 12 month change in BMI from ## baseline y = -(bmiData[,6] - bmiData[,4])/bmiData[,4] ## second-stage regression fitIQ2 = learnIQ2 (y ~ gender + parent_BMI + month4_BMI + A2*(parent_BMI + month4_BMI), data=bmiData, "A2", c("parent_BMI", "month4_BMI")) ## model conditional expected value of main effect term fitIQ1main = learnIQ1main (~ gender + race + parent_BMI + baseline_BMI + A1*(gender + parent_BMI), data=bmiData, "A1", c ("gender", "parent_BMI"), fitIQ2) ## model conditional mean of contrast function fitIQ1cm = learnIQ1cm (~ gender + race + parent_BMI + baseline_BMI + A1*(gender + parent_BMI + baseline_BMI), data=bmiData, "A1", c ("gender", "parent_BMI", "baseline_BMI"), fitIQ2) ## variance modeling fitIQ1var = learnIQ1var (fitIQ1cm) ## constant variance fit fitIQ1var = learnIQ1var (fitIQ1cm, s1vars, c (3, 4), method="hetero") ## non-constant variance fit fitIQ1var = learnIQ1var (~ gender + race + parent_BMI + baseline_BMI + A1*(parent_BMI), data=bmiData, "A1", c ("parent_BMI"), "hetero", fitIQ1cm) ## non-constant variance fit using formula specification ```