qLearn {DynTxRegime} | R Documentation |

## A Step of the Q-Learning Algorithm

### Description

Performs a single step of the Q-Learning algorithm.
If an object of class `QLearn`

is passed through input response,
it is assumed that the `QLearn`

object is the value object returned
from the preceding step of the Q-Learning algorithm, and
the value fit by the regression is taken from the `QLearn`

object.
If a vector is passed through input response, it is assumed that the
call if for the first step in the Q-Learning algorithm, and
models are fit using the provided response.

### Usage

```
qLearn(
...,
moMain,
moCont,
data,
response,
txName,
fSet = NULL,
iter = 0L,
verbose = TRUE
)
```

### Arguments

`...` |
ignored. Provided to require named inputs. |

`moMain` |
An object of class modelObj or a list of objects of class
modelObjSubset, which define the models and R methods to be used to
obtain parameter estimates and predictions for the main effects component
of the outcome regression. |

`moCont` |
An object of class modelObj or a list of objects of class
modelObjSubset, which define the models and R methods to be used to
obtain parameter estimates and predictions for the contrasts component
of the outcome regression. |

`data` |
A data frame of covariates and treatment history. |

`response` |
A response vector or object of class QLearn from a previous Q-Learning step. |

`txName` |
A character string giving column header of treatment variable in data |

`fSet` |
NULL or a function. This argument allows the user to specify the subset of treatment options available to a patient. See ?fSet for details of allowed structure |

`iter` |
An integer. See ?iter for details |

`verbose` |
A logical. If TRUE, screen prints are generated. |

### Value

An object of class QLearn-class

### See Also

Other statistical methods:
`bowl()`

,
`earl()`

,
`iqLearn`

,
`optimalClass()`

,
`optimalSeq()`

,
`owl()`

,
`rwl()`

Other multiple decision point methods:
`bowl()`

,
`iqLearn`

,
`optimalClass()`

,
`optimalSeq()`

Other single decision point methods:
`earl()`

,
`optimalClass()`

,
`optimalSeq()`

,
`owl()`

,
`rwl()`

### Examples

```
# Load and process data set
data(bmiData)
# define the negative 12 month change in BMI from baseline
y12 <- -100*(bmiData[,6L] - bmiData[,4L])/bmiData[,4L]
# outcome model
moMain <- buildModelObj(model = ~parentBMI+month4BMI,
solver.method = 'lm')
moCont <- buildModelObj(model = ~race + parentBMI+month4BMI,
solver.method = 'lm')
#### Second-Stage Analysis
fitSS <- qLearn(moMain = moMain, moCont = moCont,
data = bmiData, response = y12, txName = 'A2')
##Available methods
# Coefficients of the outcome regression objects
coef(fitSS)
# Description of method used to obtain object
DTRstep(fitSS)
# Estimated value of the optimal treatment regime for training set
estimator(fitSS)
# Value object returned by outcome regression method
fitObject(fitSS)
# Estimated optimal treatment and decision functions for training data
optTx(fitSS)
# Estimated optimal treatment and decision functions for new data
optTx(fitSS, bmiData)
# Value object returned by outcome regression method
outcome(fitSS)
# Plots if defined by outcome regression method
dev.new()
par(mfrow = c(2,4))
plot(fitSS)
plot(fitSS, suppress = TRUE)
# Show main results of method
show(fitSS)
# Show summary results of method
summary(fitSS)
#### First-stage Analysis
# outcome model
moMain <- buildModelObj(model = ~parentBMI+baselineBMI,
solver.method = 'lm')
moCont <- buildModelObj(model = ~race + parentBMI+baselineBMI,
solver.method = 'lm')
fitFS <- qLearn(moMain = moMain, moCont = moCont,
data = bmiData, response = fitSS, txName = 'A1')
##Available methods for fitFS are as shown above for fitSS
```

*DynTxRegime*version 4.15 Index]