Hpi function

Plug-in bandwidth selector

Plug-in bandwidth selector

Plug-in bandwidth for for 1- to 6-dimensional data.

Hpi(x, nstage=2, pilot, pre="sphere", Hstart, binned, bgridsize, amise=FALSE, deriv.order=0, verbose=FALSE, optim.fun="optim") Hpi.diag(x, nstage=2, pilot, pre="scale", Hstart, binned, bgridsize, amise=FALSE, deriv.order=0, verbose=FALSE, optim.fun="optim") hpi(x, nstage=2, binned=TRUE, bgridsize, deriv.order=0)

Arguments

  • x: vector or matrix of data values

  • nstage: number of stages in the plug-in bandwidth selector (1 or 2)

  • pilot: "amse" = AMSE pilot bandwidths

    "samse" = single SAMSE pilot bandwidth

    "unconstr" = single unconstrained pilot bandwidth

    "dscalar" = single pilot bandwidth for deriv.order >= 0

    "dunconstr" = single unconstrained pilot bandwidth for deriv.order >= 0

  • pre: "scale" = pre.scale, "sphere" = pre.sphere

  • Hstart: initial bandwidth matrix, used in numerical optimisation

  • binned: flag for binned kernel estimation

  • bgridsize: vector of binning grid sizes

  • amise: flag to return the minimal scaled PI value

  • deriv.order: derivative order

  • verbose: flag to print out progress information. Default is FALSE.

  • optim.fun: optimiser function: one of nlm or optim

Returns

Plug-in bandwidth. If amise=TRUE then the minimal scaled PI value is returned too.

Details

hpi(,deriv.order=0) is the univariate plug-in selector of Wand & Jones (1994), i.e. it is exactly the same as KernSmooth's dpik. For deriv.order>0, the formula is taken from Wand & Jones (1995). Hpi is a multivariate generalisation of this. Use Hpi for unconstrained bandwidth matrices and Hpi.diag for diagonal bandwidth matrices.

The default pilot is "samse" for d=2,r=0, and "dscalar" otherwise. For AMSE pilot bandwidths, see Wand & Jones (1994). For SAMSE pilot bandwidths, see Duong & Hazelton (2003). The latter is a modification of the former, in order to remove any possible problems with non-positive definiteness. Unconstrained and higher order derivative pilot bandwidths are from Chacon & Duong (2010).

For d=1, 2, 3, 4 and binned=TRUE, estimates are computed over a binning grid defined by bgridsize. Otherwise it's computed exactly. If Hstart is not given then it defaults to Hns(x).

For ks >=>= 1.11.1, the default optimisation function is optim.fun="optim". To reinstate the previous functionality, use optim.fun="nlm".

References

Chacon, J.E. & Duong, T. (2010) Multivariate plug-in bandwidth selection with unconstrained pilot matrices. Test, 19 , 375-398.

Duong, T. & Hazelton, M.L. (2003) Plug-in bandwidth matrices for bivariate kernel density estimation. Journal of Nonparametric Statistics, 15 , 17-30.

Sheather, S.J. & Jones, M.C. (1991) A reliable data-based bandwidth selection method for kernel density estimation. Journal of the Royal Statistical Society Series B, 53 , 683-690.

Wand, M.P. & Jones, M.C. (1994) Multivariate plug-in bandwidth selection. Computational Statistics, 9 , 97-116.

See Also

Hbcv, Hlscv, Hscv

Examples

data(unicef) Hpi(unicef, pilot="dscalar") hpi(unicef[,1])