Ckmeans.1d.dp: Optimal, Fast, and Reproducible Univariate Clustering

Fast, optimal, and reproducible weighted univariate clustering by dynamic programming. Four types of problem including univariate k-means, k-median, k-segments, and multi-channel weighted k-means are solved with guaranteed optimality and reproducibility. The core algorithm minimizes the sum of (weighted) within-cluster distances using respective metrics. Its advantage over heuristic clustering in efficiency and accuracy is pronounced at a large number of clusters k. Weighted k-means can also process time series to perform peak calling. Multi-channel weighted k-means groups multiple univariate signals into k clusters. An auxiliary function generates histograms that are adaptive to patterns in data. This package provides a powerful set of tools for univariate data analysis with guaranteed optimality, efficiency, and reproducibility.

Version: 4.3.0
Imports: Rcpp, Rdpack
LinkingTo: Rcpp
Suggests: testthat, knitr, rmarkdown
Published: 2019-09-07
Author: Joe Song [aut, cre], Hua Zhong [aut], Haizhou Wang [aut]
Maintainer: Joe Song <joemsong at>
License: LGPL (≥ 3)
NeedsCompilation: yes
Citation: Ckmeans.1d.dp citation info
Materials: README NEWS
CRAN checks: Ckmeans.1d.dp results


Reference manual: Ckmeans.1d.dp.pdf
Vignettes: Tutorial: Optimal univariate clustering
Note: Weight scaling in cluster analysis
Tutorial: Adaptive versus regular histograms
Package source: Ckmeans.1d.dp_4.3.0.tar.gz
Windows binaries: r-devel:, r-devel-gcc8:, r-release:, r-oldrel:
OS X binaries: r-release: Ckmeans.1d.dp_4.3.0.tgz, r-oldrel: Ckmeans.1d.dp_4.3.0.tgz
Old sources: Ckmeans.1d.dp archive

Reverse dependencies:

Reverse imports: emba, Tnseq
Reverse suggests: DiffXTables, FunChisq, vip, xgboost


Please use the canonical form to link to this page.