xkern: X-learner implemented via kernel ridge regression (with a...

Description Usage Arguments Examples

View source: R/xkern.R

Description

X-learner as proposed by Kunzel, Sekhon, Bickel, and Yu (2017), implemented via kernel ridge regression (with a Gaussian kernel)

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
xkern(
  x,
  w,
  y,
  k_folds = NULL,
  b_range = 10^(seq(-3, 3, 0.5)),
  lambda_range = 10^(seq(-3, 3, 0.5)),
  mu1_hat = NULL,
  mu0_hat = NULL,
  p_hat = NULL
)

Arguments

x

the input features

w

the treatment variable (0 or 1)

y

the observed response (real valued)

k_folds

number of folds for cross-fitting

b_range

the range of Gaussian kernel bandwidths for cross validation

lambda_range

the range of ridge regression penalty factor for cross validation

mu1_hat

pre-computed estimates on E[Y|X,W=1] corresponding to the input x. xkern will compute it internally if not provided.

mu0_hat

pre-computed estimates on E[Y|X,W=0] corresponding to the input x. xkern will compute it internally if not provided.

p_hat

user-supplied estimate for E[W|X]. xkern will compute it internally if not provided.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
## Not run: 
n = 100; p = 10

x = matrix(rnorm(n*p), n, p)
w = rbinom(n, 1, 0.5)
y = pmax(x[,1], 0) * w + x[,2] + pmin(x[,3], 0) + rnorm(n)

xkern_fit = xkern(x, w, y)
xkern_est = predict(xkern_fit, x)

## End(Not run)

xnie/rlearner documentation built on April 11, 2021, 12:49 a.m.