LocalPolyReg {npDoseResponse}R Documentation

The (partial) local polynomial regression.

Description

This function implements the (partial) local polynomial regression for estimating the conditional mean outcome function and its partial derivatives. We use higher-order local monomials for the treatment variable and first-order local monomials for the confounding variables.

Usage

LocalPolyReg(
  Y,
  X,
  x_eval = NULL,
  degree = 2,
  deriv_ord = 1,
  h = NULL,
  b = NULL,
  C_h = 7,
  C_b = 3,
  print_bw = TRUE,
  kernT = "epanechnikov",
  kernS = "epanechnikov"
)

Arguments

Y

The input n-dimensional outcome variable vector.

X

The input n*(d+1) matrix. The first column of X stores the treatment/exposure variables, while the other d columns are confounding variables.

x_eval

The n*(d+1) matrix for evaluating the local polynomial regression estimates. (Default: x_eval = NULL. Then, x_eval = X.)

degree

Degree of local polynomials. (Default: degree = 2.)

deriv_ord

The order of the estimated derivative of the conditional mean outcome function. (Default: deriv_ord = 1.)

h

The bandwidth parameter for the treatment/exposure variable. (Default: h = NULL. Then, the rule-of-thumb bandwidth selector in Eq. (A1) of Yang and Tschernig (1999) is used with additional scaling factors C_h.)

b

The bandwidth vector for the confounding variables. (Default: b = NULL. Then, the rule-of-thumb bandwidth selector in Eq. (A1) of Yang and Tschernig (1999) is used with additional scaling factors C_b.)

C_h

The scaling factor for the rule-of-thumb bandwidth parameter h.

C_b

The scaling factor for the rule-of-thumb bandwidth vector b.

print_bw

The indicator of whether the current bandwidth parameters should be printed to the console. (Default: print_bw = TRUE.)

kernT, kernS

The names of kernel functions for the treatment/exposure variable and confounding variables. (Default: kernT = "epanechnikov", kernS = "epanechnikov".)

Value

The estimated conditional mean outcome function or its partial derivatives evaluated at points x_eval.

Author(s)

Yikun Zhang, yikunzhang@foxmail.com

References

Zhang, Y., Chen, Y.-C., and Giessing, A. (2024) Nonparametric Inference on Dose-Response Curves Without the Positivity Condition. https://arxiv.org/abs/2405.09003.

Fan, J. and Gijbels, I. (1996) Local Polynomial Modelling and its Applications. Chapman & Hall/CRC.

Examples

library(parallel)
set.seed(123)
n <- 300
S2 <- cbind(2 * runif(n) - 1, 2 * runif(n) - 1)
Z2 <- 4 * S2[, 1] + S2[, 2]
E2 <- 0.2 * runif(n) - 0.1
T2 <- cos(pi * Z2^3) + Z2 / 4 + E2
Y2 <- T2^2 + T2 + 10 * Z2 + rnorm(n, mean = 0, sd = 1)
X2 <- cbind(T2, S2)
t_qry2 = seq(min(T2) + 0.01, max(T2) - 0.01, length.out = 100)
chk <- Sys.getenv("_R_CHECK_LIMIT_CORES_", "")
if (nzchar(chk) && chk == "TRUE") {
  # use 2 cores in CRAN/Travis/AppVeyor
  num_workers <- 2L
} else {
  # use all cores in devtools::test()
  num_workers <- parallel::detectCores()
}
Y_est2 = LocalPolyReg(Y2, X2, x_eval = NULL, degree = 2, deriv_ord = 0,
                      h = NULL, b = NULL, C_h = 7, C_b = 3, print_bw = TRUE,
                      kernT = "epanechnikov", kernS = "epanechnikov")


[Package npDoseResponse version 0.1 Index]