Class KMeansPlusPlusClusterer<T extends Clusterable<T>>
java.lang.Object
org.apache.commons.math3.stat.clustering.KMeansPlusPlusClusterer<T>
- Type Parameters:
T- type of the points to cluster
Deprecated.
Clustering algorithm based on David Arthur and Sergei Vassilvitski k-means++ algorithm.
- Since:
- 2.0
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumDeprecated.Strategies to use for replacing an empty cluster. -
Constructor Summary
ConstructorsConstructorDescriptionKMeansPlusPlusClusterer(Random random) Deprecated.Build a clusterer.KMeansPlusPlusClusterer(Random random, KMeansPlusPlusClusterer.EmptyClusterStrategy emptyStrategy) Deprecated.Build a clusterer. -
Method Summary
Modifier and TypeMethodDescriptioncluster(Collection<T> points, int k, int maxIterations) Deprecated.Runs the K-means++ clustering algorithm.cluster(Collection<T> points, int k, int numTrials, int maxIterationsPerTrial) Deprecated.Runs the K-means++ clustering algorithm.
-
Constructor Details
-
KMeansPlusPlusClusterer
Deprecated.Build a clusterer.The default strategy for handling empty clusters that may appear during algorithm iterations is to split the cluster with largest distance variance.
- Parameters:
random- random generator to use for choosing initial centers
-
KMeansPlusPlusClusterer
public KMeansPlusPlusClusterer(Random random, KMeansPlusPlusClusterer.EmptyClusterStrategy emptyStrategy) Deprecated.Build a clusterer.- Parameters:
random- random generator to use for choosing initial centersemptyStrategy- strategy to use for handling empty clusters that may appear during algorithm iterations- Since:
- 2.2
-
-
Method Details
-
cluster
public List<Cluster<T>> cluster(Collection<T> points, int k, int numTrials, int maxIterationsPerTrial) throws MathIllegalArgumentException, ConvergenceException Deprecated.Runs the K-means++ clustering algorithm.- Parameters:
points- the points to clusterk- the number of clusters to split the data intonumTrials- number of trial runsmaxIterationsPerTrial- the maximum number of iterations to run the algorithm for at each trial run. If negative, no maximum will be used- Returns:
- a list of clusters containing the points
- Throws:
MathIllegalArgumentException- if the data points are null or the number of clusters is larger than the number of data pointsConvergenceException- if an empty cluster is encountered and theemptyStrategyis set toERROR
-
cluster
public List<Cluster<T>> cluster(Collection<T> points, int k, int maxIterations) throws MathIllegalArgumentException, ConvergenceException Deprecated.Runs the K-means++ clustering algorithm.- Parameters:
points- the points to clusterk- the number of clusters to split the data intomaxIterations- the maximum number of iterations to run the algorithm for. If negative, no maximum will be used- Returns:
- a list of clusters containing the points
- Throws:
MathIllegalArgumentException- if the data points are null or the number of clusters is larger than the number of data pointsConvergenceException- if an empty cluster is encountered and theemptyStrategyis set toERROR
-
KMeansPlusPlusClustererinstead