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

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

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. Default is FALSE.

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`

Plug-in bandwidth.
If `amise=TRUE`

then the minimal scaled PI value is returned too.

`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)`

.

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 plugin bandwidth
selection. *Computational Statistics*. **9**, 97-116.

```
# NOT RUN {
data(unicef)
Hpi(unicef, pilot="dscalar")
hpi(unicef[,1])
# }
```

Run the code above in your browser using DataLab