kde: Kernel Density Estimator over a Grid of Points In TDA: Statistical Tools for Topological Data Analysis

Description

Given a point cloud `X` (n points), the function `kde` computes the Kernel Density Estimator over a grid of points. The kernel is a Gaussian Kernel with smoothing parameter `h`. For each x in R^d, the Kernel Density estimator is defined as

p_X (x) = 1/(n (√(2π) h)^d) ∑_{i=1}^n exp( -(||x-X_i||^2)/(2h^2) ).

Usage

 ```1 2``` ```kde(X, Grid, h, kertype = "Gaussian", weight = 1, printProgress = FALSE) ```

Arguments

 `X` an n by d matrix of coordinates of points used in the kernel density estimation process, where n is the number of points and d is the dimension. `Grid` an m by d matrix of coordinates, where m is the number of points in the grid. `h` number: the smoothing paramter of the Gaussian Kernel. `kertype` string: if `kertype = "Gaussian"`, Gaussian kernel is used, and if `kertype = "Epanechnikov"`, Epanechnikov kernel is used. Defaults to `"Gaussian"`. `weight` either a number, or a vector of length n. If it is a number, then same weight is applied to each points of `X`. If it is a vector, `weight` represents weights of each points of `X`. The default value is `1`. `printProgress` if `TRUE`, a progress bar is printed. The default value is `FALSE`.

Value

The function `kde` returns a vector of length m (the number of points in the grid) containing the value of the kernel density estimator for each point in the grid.

Author(s)

Jisu Kim and Fabrizio Lecci

References

Larry Wasserman (2004), "All of statistics: a concise course in statistical inference", Springer.

Brittany T. Fasy, Fabrizio Lecci, Alessandro Rinaldo, Larry Wasserman, Sivaraman Balakrishnan, and Aarti Singh. (2013), "Statistical Inference For Persistent Homology: Confidence Sets for Persistence Diagrams", (arXiv:1303.7117). To appear, Annals of Statistics.

`kernelDist`, `distFct`, `dtm`

Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13``` ```## Generate Data from the unit circle n <- 300 X <- circleUnif(n) ## Construct a grid of points over which we evaluate the function by <- 0.065 Xseq <- seq(-1.6, 1.6, by=by) Yseq <- seq(-1.7, 1.7, by=by) Grid <- expand.grid(Xseq,Yseq) ## kernel density estimator h <- 0.3 KDE <- kde(X, Grid, h) ```

Example output

```
```

TDA documentation built on March 30, 2021, 5:10 p.m.