Use Least Squares Polynomial Regression and Statistical Testing
to Improve Savitzky-Golay
c(
person("Phillip", "Barak", email = "phillip.barak@wisc.edu", role = "aut"),
person("Samuel", "Kruse", email = "samdkruse@gmail.com", role = c("cre","aut")))
This function takes a vector or matrix of data and smooths
the data with an improved Savitzky Golay transform. The Savitzky-Golay
method for data smoothing and differentiation calculates convolution
weights using Gram polynomials that exactly reproduce the results of
least-squares polynomial regression. Use of the Savitzky-Golay
method requires specification of both filter length and
polynomial degree to calculate convolution weights. For maximum
smoothing of statistical noise in data, polynomials with
low degrees are desirable, while a high polynomial degree
is necessary for accurate reproduction of peaks in the data.
Extension of the least-squares regression formalism with
statistical testing of additional terms of polynomial degree
to a heuristically chosen minimum for each data window leads
to an adaptive-degree polynomial filter (ADPF). Based on noise
reduction for data that consist of pure noise and on signal
reproduction for data that is purely signal, ADPF performed
nearly as well as the optimally chosen fixed-degree
Savitzky-Golay filter and outperformed sub-optimally chosen
Savitzky-Golay filters. For synthetic data consisting of noise
and signal, ADPF outperformed both optimally chosen and
sub-optimally chosen fixed-degree Savitzky-Golay filters. See Barak, P. (1995) <doi:10.1021/ac00113a006> for more information.
Phillip Barak [aut],
Samuel Kruse [cre, aut]

Fast Clustering Using Adaptive Density Peak Detection
An implementation of ADPclust clustering procedures (Fast Clustering Using Adaptive Density Peak Detection). The work is built and improved upon Rodriguez and Laio[2014]'s idea. ADPclust clusters data by finding density peaks in a density-distance plot generated from local multivariate Gaussian density estimation. It includes an automatic centroids selection and parameter optimization algorithm, which finds the number of clusters and cluster centroids by comparing average silhouettes on a grid of testing clustering results; It also includes an user interactive algorithm that allows the user to manually selects cluster centroids from a two dimensional "density-distance plot".
Yifan "Ethan" Xu <ethan.yifanxu@gmail.edu>, Xiao-Feng Wang <wangx6@ccf.org>