| Type: | Package | 
| Title: | Weighted Piecewise Kernel Density Estimation | 
| Version: | 1.0 | 
| Date: | 2025-05-22 | 
| Description: | Weighted Piecewise Kernel Density Estimation for large data. | 
| Depends: | R (≥ 4.3.0), Rcpp, plotly, RANN | 
| License: | GPL-2 | GPL-3 [expanded from: GPL (≥ 2)] | 
| Encoding: | UTF-8 | 
| LazyData: | true | 
| NeedsCompilation: | yes | 
| RoxygenNote: | 7.3.2 | 
| LinkingTo: | Rcpp | 
| Packaged: | 2025-05-22 01:30:59 UTC; 123 | 
| Author: | Xiaotong Liu [aut, cre], Kunyu Ye [aut], Siyao Wang [aut], Xudong Liu [aut], Tianwei Yu [aut, ths] | 
| Maintainer: | Xiaotong Liu <xiaotongliu@link.cuhk.edu.cn> | 
| Repository: | CRAN | 
| Date/Publication: | 2025-05-26 06:00:07 UTC | 
Find peaks using the estimated values
Description
Find peaks using the estimated values
Usage
findPeak(k, filter, select)
Arguments
| k | Output of the 'kdeC' function, containing estimated values. | 
| filter | A numeric value used to filter out results with estimated values less than the given 'filter' argument. | 
| select | A numeric value specifying the number of peaks to retain, selecting the K peaks with the largest estimated values. | 
Value
A three-column matrix ('markMat') where: - Column 1: x-coordinates of the peaks - Column 2: y-coordinates of the peaks - Column 3: Corresponding estimated values of the peaks.
Examples
data(r)
k <- kdeC(r$dat, H = c(0.014, 0.014), gridsize = c(330, 330), cutNum = c(1, 1), w = r$z)
m <- findPeak(k, filter = 0, select = 100)
Two-dimensional fast weighted kernel density estimation
Description
Two-dimensional fast weighted kernel density estimation
Usage
kdeC(x, H, gridsize, cutNum, w)
Arguments
| x | Data points in the format of an n x 2 matrix. | 
| H | Bandwidth, a vector containing 2 numeric values. | 
| gridsize | Number of points for each direction, a vector containing 2 integer values. | 
| cutNum | Number of pieces to be cut for each direction, a vector containing 2 integer values. | 
| w | Weight, a vector corresponding to parameter 'x'. | 
Value
A list containing three elements:
| estimate | The estimated values of the kernel density. | 
| evalpointsX | The evaluation points along the X direction. | 
| evalpointsY | The evaluation points along the Y direction. | 
Examples
data(r)
k <- kdeC(r$dat, H = c(0.014, 0.014), gridsize = c(330, 330), cutNum = c(1, 1), w = r$z)
Plot of the 2D data points with peaks highlighted in green
Description
Plot of the 2D data points with peaks highlighted in green
Usage
plot_peak_2d(dat, peaks, x.range = NA, y.range = NA)
Arguments
| dat | Data points used for kernel density estimation. | 
| peaks | A matrix of detected peaks with x- and y-coordinates. | 
| x.range | (optional) A numeric 2D vector specifying the x-axis range for filtering. | 
| y.range | (optional) A numeric 2D vector specifying the y-axis range for filtering. | 
Value
A scatter plot of the data points with the detected peaks highlighted in green.
Examples
data(r)
k <- kdeC(r$dat, H = c(0.014, 0.014), gridsize = c(330, 330), cutNum = c(1, 1), w = r$z)
m <- findPeak(k, filter = 0, select = 100)
plot_peak_2d(r$dat, m)
Plot of the 3D data points with peaks highlighted in green
Description
This function creates an interactive 3D scatter plot of data points and highlights the peaks that are within a specified tolerance distance from any data point.
Usage
plot_peak_3d(dat, peaks, x.range = NA, y.range = NA, tol = 1e-05)
Arguments
| dat | A numeric matrix or data frame with at least three columns representing x, y, and z coordinates of data points. | 
| peaks | A numeric matrix or data frame with at least two columns representing the x and y coordinates of peak candidates. | 
| x.range | A numeric vector of length 2 specifying the x-axis range to include. | 
| y.range | A numeric vector of length 2 specifying the y-axis range to include. | 
| tol | A numeric value specifying the tolerance threshold: only peaks within this Euclidean distance from a data point are retained. | 
Examples
data(r)
k <- kdeC(r$dat, H = c(0.014, 0.014), gridsize = c(330, 330), cutNum = c(1, 1), w = r$z)
m <- findPeak(k, filter = 0, select = 100)
dat <- cbind(r$dat, r$z)
plot_peak_3d(dat, m)
Simulated 2D Weighted Data Set
Description
This is a simulated dataset containing two-dimensional data points, their corresponding weights, and the true peaks' coordinates.
Usage
data(r)
Format
A list with 3 components:
- dat
- A data.frame of size - 100000 x 2, representing data point coordinates.
- m
- A numeric matrix of true peaks' coordinates. 
- z
- A numeric vector of length - 100000, representing weights for each data point.
Examples
data(r)