This node outputs the cluster centers for a predefined number of clusters (no dynamic number of clusters). K-means performs a crisp clustering that assigns a data vector to exactly one cluster. The algorithm terminates when the cluster assignments do not change anymore.
The clustering algorithm uses the Euclidean distance on the selected attributes. The data is not normalized by the node (if required, you should consider to use the "Normalizer" as a preprocessing step).


Number of clusters
The number of clusters (cluster centers) to be created.
Centroid initialization
  • First k rows: Initializes the centroids using the first rows of the input table.
  • Random initialization: Initializes the centroids with random rows of the input table. Checking the Use static random seed it is possible to get reproducible results.
Max number of iterations
The maximum number of iterations after which the algorithm terminates if it hasn't found a stable solution before.
Numeric Column Selection
Move the numeric columns of interest to the "Include" list. Always include all columns option moves all numeric columns to the "Include" list by default.
Enable Hilite Mapping
If enabled, the hiliting of a cluster row (2nd output) will hilite all rows of this cluster in the input table and the 1st output table. Depending on the number of rows, enabling this feature might consume a lot of memory.

Input Ports

Input to clustering. All numerical values and only these are considered for clustering.

Output Ports

The input data labeled with the cluster they are contained in.
The created clusters
PMML cluster model


Cluster View
Displays the cluster prototypes in a tree-like structure, with each node containing the coordinates of the cluster center.




You want to see the source code for this node? Click the following button and we’ll use our super-powers to find it for you.