k-Means

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).

Options

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

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

Output Ports

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

Views

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

Workflows

Links

Developers

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.