Data preprocessing Apply at the beginning of catefitmean()
and catecvmean()
, after arg.checks()
Source: R/utility_continuous.R
data.preproc.mean.Rd
Data preprocessing
Apply at the beginning of catefitmean()
and catecvmean()
, after arg.checks()
Usage
data.preproc.mean(
fun,
cate.model,
init.model,
ps.model,
data,
prop.cutoff = NULL,
prop.multi = NULL,
ps.method,
score.method = NULL,
initial.predictor.method = NULL
)
Arguments
- fun
A function for which argument check is needed; "pm" for
catefitmean()
, "cv" forcatecvmean()
, and "drinf" fordrmean.inference()
. No default.- cate.model
A formula describing the outcome model to be fitted. The outcome must appear on the left-hand side.
- init.model
A formula describing the initial predictor model. The outcome must appear on the left-hand side. It must be specified when
score.method = contrastReg
ortwoReg
.- ps.model
A formula describing the propensity score model to be fitted. The treatment must appear on the left-hand side. The treatment must be a numeric vector coded as 0/1. If data are from a RCT, specify
ps.model
as an intercept-only model.- data
A data frame containing the variables in the outcome and propensity score models; a data frame with
n
rows (1 row per observation).- prop.cutoff
A vector of numerical values (in `(0, 1]`) specifying percentiles of the estimated log CATE scores to define nested subgroups. Each element represents the cutoff to separate observations in nested subgroups (below vs above cutoff). The length of
prop.cutoff
is the number of nested subgroups. An equally-spaced sequence of proportions ending with 1 is recommended. Default isseq(0.5, 1, length = 6)
.- prop.multi
A vector of numerical values (in `[0, 1]`) specifying percentiles of the estimated log CATE scores to define mutually exclusive subgroups. It should start with 0, end with 1, and be of
length(prop.multi) > 2
. Each element represents the cutoff to separate the observations intolength(prop.multi) - 1
mutually exclusive subgroups. Default isc(0, 1/3, 2/3, 1)
.- ps.method
A character value for the method to estimate the propensity score. Allowed values include one of:
'glm'
for logistic regression with main effects only (default), or'lasso'
for a logistic regression with main effects and LASSO penalization on two-way interactions (added to the model if interactions are not specified inps.model
). Relevant only whenps.model
has more than one variable.- score.method
A vector of one or multiple methods to estimate the CATE score. Allowed values are:
'boosting'
,'gaussian'
,'twoReg'
,'contrastReg'
,'randomForest'
,'gam'
.- initial.predictor.method
A character vector for the method used to get initial outcome predictions conditional on the covariates. Only applies when
score.method
includes'twoReg'
or'contrastReg'
. Allowed values include one of'boosting'
,'poisson'
(fast), and'gam'
. Default isNULL
, which assigns'boosting'
for count outcomes.
Value
A list of 6 elements:
- y: outcome; vector of length n
(observations)
- trt: binary treatment; vector of length n
- x.ps: matrix of p.ps
baseline covariates (plus intercept); dimension n
by p.ps + 1
- x.cate: matrix of p.cate
baseline covariates; dimension n
by p.cate
- x.init: matrix of p.init
baseline covariates; dimension n
by p.init
- if fun = "pm"
:
- prop: formatted prop.cutoff
- if fun = "cv"
- prop.onlyhigh: formatted prop.cutoff
with 0 removed if applicable
- prop.bi; formatted prop.cutoff
with 0 and 1 removed if applicable
- prop.multi: formatted prop.multi
, starting with 0 and ending with 1