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 the idea of Rodriguez and Laio (2014). 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 a user interactive algorithm that allows the user to manually selects cluster centroids from a two dimensional "density-distance plot". Here is the research article associated with this package: "Wang, Xiao-Feng, and Yifan Xu (2015) Fast clustering using adaptive density peak detection." Statistical methods in medical research". url:

ADPclust (Fast Clustering Using Adaptive Density Peak Detection) is a non-iterative procedure that clusters high dimensional data by finding cluster centers from estimated density peaks. It incorporates multivariate local Gaussian density estimation. The number of clusters as well as bandwidths can either be selected by the user or selected automatically through an internal clustering criterion.


  • Vignette:
  • CRAN release (0.6.3):
  • Journal paper:
    • Xiao-Feng Wang, and Yifan Xu, (2015) "Fast Clustering Using Adaptive Density Peak Detection." Statistical Methods in Medical Research, doi:10.1177/0962280215609948 (PubMed Link)
    • Alex Rodriguez, and Alessandro Laio, (2014) "Clustering by fast search and find of density peaks." Science 344, no. 6191 (2014): 1492-1496


Install the most recent version from github:

## In R do:
## Skip this line if you already have devtools installed

OR install the released version from CRAN

## In R do:

Simple Examples

Run on a preloaded data set:

# Automatic clustering
ans <- adpclust(clust3)
# Manual centroids selection
adpclust(clust3, centroids = "user")

For more examples please see the Vignette.


Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


0.7 by Yifan (Ethan) Xu, a year ago

Report a bug at

Browse source code at

Authors: Yifan (Ethan) Xu [aut, cre], Xiao-Feng Wang [aut]

Documentation:   PDF Manual  

Task views: Cluster Analysis & Finite Mixture Models

GPL (>= 2) license

Imports dplyr, cluster, fields, knitr

Suggests rmarkdown, testthat

See at CRAN