# Kernel density estimate

### Description

Kernel density estimate for 1- to 6-dimensional data.

### Usage

1 2 3 4 5 6 7 |

### Arguments

`x` |
matrix of data values |

`H,h` |
bandwidth matrix/scalar bandwidth. If these are missing, |

`gridsize` |
vector of number of grid points |

`gridtype` |
not yet implemented |

`xmin,xmax` |
vector of minimum/maximum values for grid |

`supp` |
effective support for standard normal |

`eval.points` |
points at which estimate is evaluated |

`binned` |
flag for binned estimation. Default is FALSE. |

`bgridsize` |
vector of binning grid sizes |

`positive` |
flag if 1-d data are positive. Default is FALSE. |

`adj.positive` |
adjustment applied to positive 1-d data |

`w` |
vector of weights. Default is a vector of all ones. |

`compute.cont` |
flag for computing 1% to 99% probability contour levels. Default is FALSE. |

`approx.cont` |
flag for computing approximate probability contour levels. Default is TRUE. |

`unit.interval` |
flag if 1-d data are bounded on unit interval [0,1]. Default is FALSE. |

`verbose` |
flag to print out progress information. Default is FALSE. |

`object` |
object of class |

`zero.flag` |
interploted values |

`...` |
other parameters |

### Details

For d=1, if `h`

is missing, the default bandwidth is `hpi`

.
For d>1, if `H`

is missing, the default is `Hpi`

.

For d=1, if `positive=TRUE`

then `x<-log(x+adj.positive)`

where the default `adj.positive`

is the minimum of `x`

.

For d=1, 2, 3, 4, and if `eval.points`

is not specified, then the
density estimate is computed over a grid
defined by `gridsize`

(if `binned=FALSE`

) or
by `bgridsize`

(if `binned=TRUE`

).
If `eval.points`

is specified, then the
density estimate is computed exactly at `eval.points`

.
For d>4, the kernel density estimate is computed exactly
and `eval.points`

must be specified.

The default `bgridsize,gridsize`

are d=1: 401; d=2: rep(151, 2);
d=3: rep(51, 3); d=4: rep(21,4).

The effective support for a normal kernel is where
all values outside `[-supp,supp]^d`

are zero.

The default `xmin`

is `min(x)-Hmax*supp`

and `xmax`

is `max(x)+Hmax*supp`

where `Hmax`

is the maximum of the
diagonal elements of `H`

. The grid produced is the outer
product of `c(xmin[1], xmax[1])`

, ..., `c(xmin[d], xmax[d])`

.

### Value

A kernel density estimate is an object of class `kde`

which is a
list with fields:

`x` |
data points - same as input |

`eval.points` |
points at which the estimate is evaluated |

`estimate` |
density estimate at |

`h` |
scalar bandwidth (1-d only) |

`H` |
bandwidth matrix |

`gridtype` |
"linear" |

`gridded` |
flag for estimation on a grid |

`binned` |
flag for binned estimation |

`names` |
variable names |

`w` |
weights |

`cont` |
probability contour levels (if |

### See Also

`plot.kde`

### Examples

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | ```
## positive data example
set.seed(8192)
x <- 2^rnorm(100)
fhat <- kde(x=x, positive=TRUE)
plot(fhat, col=3)
points(c(0.5, 1), predict(fhat, x=c(0.5, 1)))
## large data example on non-default grid
## 151 x 151 grid = [-5,-4.933,..,5] x [-5,-4.933,..,5]
set.seed(8192)
x <- rmvnorm.mixt(10000, mus=c(0,0), Sigmas=invvech(c(1,0.8,1)))
fhat <- kde(x=x, binned=TRUE, compute.cont=TRUE, xmin=c(-5,-5), xmax=c(5,5), bgridsize=c(151,151))
plot(fhat)
## See other examples in ? plot.kde
``` |