Learn R Programming

lg (version 0.4.1)

bw_select_cv_trivariate: Cross-validation for trivariate distributions

Description

Uses cross-validation to find the optimal bandwidth for a trivariate locally Gaussian fit

Usage

bw_select_cv_trivariate(x, tol = 10^(-3))

Arguments

x

The matrix of data points.

tol

The absolute tolerance in the optimization, used by the optim-function.

Value

The function returns a list with two elements: bw is the selected bandwidths, and convergence is the convergence flag returned by the optim-function.

Details

This function provides an implementation for the Cross Validation algorithm for bandwidth selection described in Otneim & Tj<U+00F8>stheim (2017), Section 4, but for trivariate distributions. Let \(\hat{f}_h(x)\) be the trivariate locally Gaussian density estimate obtained using the bandwidth \(h\), then this function returns the bandwidth that maximizes $$CV(h) = n^{-1} \sum_{i=1}^n \log \hat{f}_h^{(-i)}(x_i),$$ where \(\hat{f}_h^{(-i)}\) is the density estimate calculated without observation \(x_i\).

The recommended use of this function is through the lg_main wrapper function.

References

Otneim, H<U+00E5>kon, and Dag Tj<U+00F8>stheim. "The locally gaussian density estimator for multivariate data." Statistics and Computing 27, no. 6 (2017): 1595-1616.

Examples

Run this code
# NOT RUN {
  
# }
# NOT RUN {
    x <- cbind(rnorm(100), rnorm(100), rnorm(100))
    bw <- bw_select_cv_trivariate(x)
  
# }

Run the code above in your browser using DataLab