CAIM Binner

This node implements the CAIM binning (discretization) algorithm according to Kurgan and Cios (2004). The binning (discretization) is performed with respect to a selected class column. CAIM creates all possible binning boundaries and chooses those that minimize the class interdependancy measure. To reduce the runtime, this implementation creates only those boundaries where the value and the class changes. The algorithm finds a minimum number of bins (guided by the number of possible class values) and labels them "Interval_X". Only columns compatible with double values are binned and the column's type of the output table is changed to "String".

Options

Class column
The class column. According to this column the binning is optimized.
Column selection
Allows to include those columns which should be included in the discretization. Just the included columns are discretized and changed to "String" type.
Sort in memory
To increase performance, select this option to sort the data in memory during the discretization process and select the memory policy 'Keep all in memory' at the PREVIOUS node (if possible) This can significantly improve performance but requires more memory.

Input Ports

Icon
The data table to bin (discretize).

Output Ports

Icon
The binned data table.
Icon
The model representing the binning. Contains the intervals for each bin of each column.

Views

Binning Model
The view shows the column's binning scheme. For each column a ruler is displayed on which the bin boundaries are marked.

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.