Skip to contents

Cross-validated bandwidth for the GPS model

Usage

locpol_ps_bw(
  dp,
  cv_method,
  lp_type,
  n_start,
  bw_init = NULL,
  bw_seed = NULL,
  bw_upper_cont = "adaptive",
  cv_type = "loocv",
  lp_order = 1,
  n_threads = 0,
  rcv_train_frac = 0.5,
  mnl_start = "zero",
  mnl_maxit = 10000L,
  mnl_reltol = sqrt(.Machine$double.eps),
  mnl_gradtol = NULL,
  mnl_stable = TRUE
)

Arguments

dp

Data list (see dgps_did) with dpost, covariates, and dimensions.

cv_method

Cross-validation method.

lp_type

Local polynomial type (e.g., "logit").

n_start

Number of random restarts (data-adaptive starts are generated).

bw_init

Optional initial bandwidth(s) for optimization restarts. Supply a length-3 vector or a 3 x n_start matrix. If provided, this overrides internally generated starts and sets n_start to ncol(bw_init).

bw_seed

Optional integer seed for reproducible random starts.

bw_upper_cont

Upper bound for continuous bandwidth search. Use numeric value or "adaptive" (default).

cv_type

Cross-validation type ("loocv" or "rcv").

lp_order

Local polynomial order for the GPS fit (p in the paper).

n_threads

Optional number of OpenMP threads for GPS logit routines. Use n_threads <= 0 (default) to rely on runtime/environment detection. If the package is built without OpenMP, the same code runs serially and this argument is ignored.

rcv_train_frac

Training fraction used by RCV sample splitting. Ignored when cv_type = "loocv". Defaults to 0.5.

mnl_start

Starting rule for local multinomial-logit fits: "zero" for cold starts, "global" for one global parametric start, "previous" for serial previous-fit starts, or "global_previous" for both strategies.

mnl_maxit

Maximum local multinomial-logit optimizer iterations.

mnl_reltol

Relative objective tolerance for local multinomial-logit optimization.

mnl_gradtol

Optional infinity-norm gradient gate. Use NULL to disable and preserve the original objective-only stopping rule.

mnl_stable

Whether to use overflow-safe log-sum-exp math inside the local multinomial-logit optimizer. Defaults to TRUE.

Value

List with cross-validated bandwidths.