Column properties defined in parameters

You can define column properties in different parameters, for example, in the incolumn parameter, the coldeftype parameter, or the coldefrole parameter.

Note: The column properties that are specified in parameters override the column properties that are specified in column properties tables.

The property is appended to the column name in the incolumn list and separated from the column name by a colon as shown in the following example.

CALL IDAX.KMEANS('intable=SAMPLES.CUSTOMER_CHURN, incolumn=DURATION:input; AVG_SPENT_RETAIN_PM:ignore, id=cust_id, k=3, model=cc_km, outtable=cc_km_out');

The example shows how to add additional data to the columns that are referenced in the incolumn parameter. This descriptive data, type data, or role data is appended to the column name separated by a colon. The data and its meaning is specific to each algorithm.

In the following example, the column type is supplied for the columns that are referenced in the incolumn parameter.

CALL IDAX.KMEANS('intable=SAMPLES.CUSTOMER_CHURN, incolumn=DURATION:cont; CENSOR:nom, id=cust_id, k=3, model=cc_km1, outtable=cc_km1_out');

With the incolumn parameter, you can specify also columns that have the role of target, or id. When you use this method, the example changes as follows.

CALL IDAX.NAIVEBAYES('intable=SAMPLES.CUSTOMER_CHURN, incolumn=CENSOR:nom; CENSOR:target; CUST_ID:id, model=cc_nb');

Several columns that are related to the same property are separated by a vertical line (|) as shown in the following example:

CALL IDAX.NAIVEBAYES('intable=SAMPLES.CUSTOMER_CHURN, incolumn=CENSOR|IN_B2B_INDUSTRY:nom; CENSOR:target; CUST_ID:id, model=cc_nb1');

In addition to setting column properties for individual columns in the incolumn parameter, you can set also a default type for all columns by using the coldeftype parameter. If the coldeftype is specified, and if a column property is specified for a column in the incolumn parameter, the property that is specified in the incolumn parameter takes precedence.

This behavior is shown in the following example.

CALL IDAX.KMEANS('intable=SAMPLES.CUSTOMER_CHURN, coldeftype=cont, incolumn=AVG_SPENT_RETAIN_PM:ignore, id=cust_id, k=3, model=cc_km2, outtable=cc_km2_out');

In this example, columns are treated as nominal by default, except for those columns that are specified as continuous in the incolumn parameter.

Similar to the coldeftype parameter, you can specify the default role by using the coldefrole parameter as shown in the following example.

CALL IDAX.NAIVEBAYES('intable=SAMPLES.CUSTOMER_CHURN, coldefrole=ignore, incolumn=IN_B2B_INDUSTRY|DURATION|TOTAL_BUY|TOTAL_EMPLOYEES:input; CENSOR:target:nom; CUST_ID:id, model=cc_nb2');

In this example, columns are ignored except for those columns that are defined by the incolumn parameter, the id parameter, and the target parameter.