About cookies on this site Our websites require some cookies to function properly (required). In addition, other cookies may be used with your consent to analyze site usage, improve the user experience and for advertising. For more information, please review your options. By visiting our website, you agree to our processing of information as described in IBM’sprivacy statement. To provide a smooth navigation, your cookie preferences will be shared across the IBM web domains listed here.
Last updated: Feb 11, 2025
The Control Language for Expression Manipulation (CLEM) is a powerful language for analyzing and manipulating the data that streams through an SPSS Modeler flow. Data miners use CLEM extensively in flow operations to perform tasks as simple as deriving profit from cost and revenue data or as complex as transforming web log data into a set of fields and records with usable information.
CLEM is used within SPSS Modeler to:
- Compare and evaluate conditions on record fields
- Derive values for new fields
- Derive new values for existing fields
- Reason about the sequence of records
- Insert data from records into reports
CLEM expressions are indispensable for data preparation in SPSS Modeler and can be used in a wide range of nodes—from record and field operations (Select, Balance, Filler) to plots and output (Analysis, Report, Table). For example, you can use CLEM in a Derive node to create a new field based on a formula such as ratio.
CLEM expressions can also be used for global search and replace operations.
For example, the expression
can be used in a Filler node to replace
system-missing values with the integer value 0. (To replace user-missing values, also
called blanks, use the @NULL(@FIELD)
function.) @BLANK
More complex CLEM expressions can also be created. For example, you can derive
new fields based on a conditional set of rules, such as a new value category created by using the
following expressions:
. If: CardID = @OFFSET(CardID,1), Then: @OFFSET(ValueCategory,1), Else:
'exclude'
This example uses the
function to say: If the value
of the field CardID for a given record is the same as for the previous record, then return
the value of the field named ValueCategory for the previous record. Otherwise, assign the
string "exclude." In other words, if the CardIDs for adjacent records are the same, they
should be assigned the same value category. (Records with the exclude string can later be culled
using a Select node.) @OFFSET
Was the topic helpful?
0/1000