Modeler Jython Scripting Automation Book
Modeler Jython Scripting Automation Book
Note
Before using this information and the product it supports, read the information in Notices on page 247.
Product Information
This edition applies to version 16, release 0, modification 0 of IBM SPSS Modeler and to all subsequent releases and
modifications until otherwise indicated in new editions.
Contents
Chapter 1. Scripting
. . . . . . . . . 1
Scripting Overview . . . . . .
Types of Scripts . . . . . . .
Stream Scripts . . . . . . . .
Standalone Scripts . . . . . .
SuperNode Scripts . . . . . .
Looping and conditional execution in
Looping in streams . . . . .
Conditional execution in streams
Executing and Interrupting Scripts .
Find and Replace . . . . . . .
. . .
. . .
. . .
. . .
. . .
streams
. . .
. . .
. . .
. . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
1
1
3
3
4
5
7
8
9
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
13
13
14
14
14
15
16
16
17
17
17
18
19
20
21
21
22
22
22
23
23
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
25
25
25
25
25
25
26
26
27
27
28
28
29
30
31
31
. 35
35
. 35
. 38
. 39
. 40
. 44
44
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. 52
. 53
47
47
47
47
48
48
48
49
49
49
50
51
51
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
55
55
55
56
56
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
61
62
63
64
64
66
68
68
69
71
71
74
74
75
77
iii
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
79
79
80
80
82
82
83
84
85
86
86
87
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. 91
. 91
. 94
. 96
. 97
. 98
. 99
. 99
. 100
. 100
. 101
. 101
. 102
. 103
. 104
. 104
. 108
. 108
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
113
113
113
114
115
116
118
119
120
122
123
iv
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
125
125
127
127
129
129
131
132
133
133
134
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
135
137
138
140
141
142
143
145
148
151
152
153
154
155
158
159
161
162
163
164
165
165
166
168
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
169
169
170
170
170
170
171
171
171
172
172
172
173
173
173
173
174
174
174
174
175
175
175
176
176
176
177
177
177
177
178
178
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. 194
. 194
. 203
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
205
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
179
179
181
182
182
188
189
189
194
205
206
207
208
209
210
211
211
212
212
213
213
216
217
217
217
218
218
219
222
222
223
224
224
224
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
227
228
228
228
231
.
.
.
.
.
.
.
233
.
.
.
. 233
. 235
. 235
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
237
237
237
237
238
238
239
240
240
240
240
241
241
242
242
243
.
.
.
.
.
.
.
.
244
244
245
245
. 245
Notices . . . . . . . . . . . . . . 247
Trademarks .
. 248
Index . . . . . . . . . . . . . . . 251
. 227
Contents
vi
Chapter 1. Scripting
Scripting Overview
Scripting in IBM SPSS Modeler is a powerful tool for automating processes in the user interface. Scripts
can perform the same types of actions that you perform with a mouse or a keyboard, and you can use
them to automate tasks that would be highly repetitive or time consuming to perform manually.
You can use scripts to:
v Impose a specific order for node executions in a stream and conditionally execute nodes depending on
whether the conditions for execution have been met.
v Create loops to repeatedly execute nodes within the stream.
v Specify an automatic sequence of actions that normally involves user interaction--for example, you can
build a model and then test it.
v Set up complex processes that require substantial user interaction--for example, cross-validation
procedures that require repeated model generation and testing.
v Set up processes that manipulate streamsfor example, you can take a model training stream, run it,
and produce the corresponding model-testing stream automatically.
This chapter provides high-level descriptions and examples of stream-level scripts, standalone scripts, and
scripts within SuperNodes in the IBM SPSS Modeler interface. More information on scripting language,
syntax, and commands is provided in the chapters that follow.1
Note: You cannot import and run scripts created in IBM SPSS Statistics within IBM SPSS Modeler.
Types of Scripts
IBM SPSS Modeler uses three types of scripts:
v Stream scripts are stored as a stream property and are therefore saved and loaded with a specific
stream. For example, you can write a stream script that automates the process of training and applying
a model nugget. You can also specify that whenever a particular stream is executed, the script should
be run instead of the stream's canvas content.
v Standalone scripts are not associated with any particular stream and are saved in external text files.
You might use a standalone script, for example, to manipulate multiple streams together.
v SuperNode scripts are stored as a SuperNode stream property. SuperNode scripts are only available
in terminal SuperNodes. You might use a SuperNode script to control the execution sequence of the
SuperNode contents. For nonterminal (source or process) SuperNodes, you can define properties for
the SuperNode or the nodes it contains in your stream script directly.
Stream Scripts
Scripts can be used to customize operations within a particular stream, and they are saved with that
stream. Stream scripts can be used to specify a particular execution order for the terminal nodes within a
stream. You use the stream script dialog box to edit the script that is saved with the current stream.
To access the stream script tab in the Stream Properties dialog box:
1. The IBM SPSS Modeler Legacy scripting language is still available for use with IBM SPSS Modeler 16. See the document IBM
SPSS Modeler 16 Scripting and Automation Guide for more information. See Appendix B, Migrating from legacy scripting to Python
scripting, on page 237 for guidance on mapping your existing IBM SPSS Modeler Legacy scripts to Python scripts.
Copyright IBM Corporation 1994, 2013
Standalone Scripts
The Standalone Script dialog box is used to create or edit a script that is saved as a text file. It displays
the name of the file and provides facilities for loading, saving, importing, and executing scripts.
To access the standalone script dialog box:
From the main menu, choose:
Tools > Standalone Script
The same toolbar and script syntax-checking options are available for standalone scripts as for stream
scripts. See the topic Stream Scripts on page 1 for more information.
SuperNode Scripts
You can create and save scripts within any terminal SuperNodes using IBM SPSS Modeler's scripting
language. These scripts are only available for terminal SuperNodes and are often used when creating
template streams or to impose a special execution order for the SuperNode contents. SuperNode scripts
also enable you to have more than one script running within a stream.
For example, let's say you needed to specify the order of execution for a complex stream, and your
SuperNode contains several nodes including a SetGlobals node, which needs to be executed before
deriving a new field used in a Plot node. In this case, you can create a SuperNode script that executes the
SetGlobals node first. Values calculated by this node, such as the average or standard deviation, can then
be used when the Plot node is executed.
Within a SuperNode script, you can specify node properties in the same manner as other scripts.
Alternatively, you can change and define the properties for any SuperNode or its encapsulated nodes
directly from a stream script. See the topic Chapter 19, SuperNode Properties, on page 231 for more
information. This method works for source and process SuperNodes as well as terminal SuperNodes.
Note: Since only terminal SuperNodes can execute their own scripts, the Scripts tab of the SuperNode
dialog box is available only for terminal SuperNodes.
To open the SuperNode script dialog box from the main canvas:
Select a terminal SuperNode on the stream canvas and, from the SuperNode menu, choose:
SuperNode Script...
To open the SuperNode script dialog box from the zoomed-in SuperNode canvas:
Right-click on the SuperNode canvas, and from the context menu, choose:
SuperNode Script...
Chapter 1. Scripting
Looping in streams
With looping you can automate repetitive tasks in streams; examples may include the following:
v Run the stream a given number of times and change the source each time.
v Run the stream a given number of times, changing the value of a variable each time.
v Run the stream a given number of times, entering one extra field on each execution.
v Build a model a given number of times and change a model setting each time.
You set up the conditions to be met on the Looping subtab of the stream Execution tab. To display the
subtab, select the Looping/Conditional Execution execution mode.
Any looping requirements that you define will take effect when you run the stream, if the
Looping/Conditional Execution execution mode has been set. Optionally, you can generate the script
code for your looping requirements and paste it into the script editor by clicking Paste... in the bottom
right corner of the Looping subtab; the main Execution tab display changes to show the Default
(optional script) execution mode with the script in the top part of the tab. This means that you can
define a looping structure using the various looping dialog box options before generating a script that
you can customize further in the script editor. Note that when you click Paste... any conditional execution
requirements you have defined will also be displayed in the generated script.
To set up a loop:
1. Create an iteration key to define the main looping structure to be carried out in a stream. See Create
an iteration key for more information.
2. Where needed, define one or more iteration variables. See Create an iteration variable for more
information.
3. The iterations and any variables you created are shown in the main body of the subtab. By default,
iterations are executed in the order they appear; to move an iteration up or down the list, click on it
to select it then use the up or down arrow in the right hand column of the subtab to change the order.
Chapter 1. Scripting
What to Set. Choose the item that will have its value set each time the loop is executed. You can select
from one of the following options:
v Parameter. Only available if you select either Stream Parameter - Fields or Stream Parameter - Values.
Select the required parameter from the available list.
v Node. Only available if you select either Node Property - Fields or Node Property - Values. Select the
node for which you want to set up a loop. Click the browse button to open the Select Node dialog and
choose the node you want; if there are too many nodes listed you can filter the display to only show
certain types of nodes by selecting one of the following categories: Source, Process, Graph, Modeling,
Output, Export, or Apply Model nodes.
v Property. Only available if you select either Node Property - Fields or Node Property - Values. Select
the property of the node from the available list.
Fields to Use. Only available if you select either Stream Parameter - Fields or Node Property - Fields.
Choose the field, or fields, within a node to use to provide the iteration values. You can select from one
of the following options:
v Node. Only available if you select Stream Parameter - Fields. Select the node that contains the details
for which you want to set up a loop. Click the browse button to open the Select Node dialog and
choose the node you want; if there are too many nodes listed you can filter the display to only show
certain types of nodes by selecting one of the following categories: Source, Process, Graph, Modeling,
Output, Export, or Apply Model nodes.
v Field List. Click the list button in the right column to display the Select Fields dialog box, within
which you select the fields in the node to provide the iteration data. See Selecting fields for iterations
on page 7 for more information.
Values to Use. Only available if you select either Stream Parameter - Values or Node Property - Values.
Choose the value, or values, within the selected field to use as iteration values. You can select from one
of the following options:
v Node. Only available if you select Stream Parameter - Values. Select the node that contains the details
for which you want to set up a loop. Click the browse button to open the Select Node dialog and
choose the node you want; if there are too many nodes listed you can filter the display to only show
certain types of nodes by selecting one of the following categories: Source, Process, Graph, Modeling,
Output, Export, or Apply Model nodes.
v Field List. Select the field in the node to provide the iteration data.
v Value List. Click the list button in the right column to display the Select Values dialog box, within
which you select the values in the field to provide the iteration data.
v If you select Stream Parameter, choose the required parameter and then, by using one of the following
options, if available in your stream, define what the value of that parameter should be set to with each
iteration of the loop:
Global variable. Select the global variable that the stream parameter should be set to.
Table output cell. To set a stream parameter to be the value in a table output cell, select the table
from the list and enter the Row and Column to be used.
Enter manually. Select this if you want to manually enter a value for this parameter to take in each
iteration. When you return to the Looping subtab a new column is created into which you enter the
required text.
v If you select Node Property, choose the required node and one of its properties and then set the value
you want to use for that property. Set the new property value by using one of the following options:
Alone. The property value will use the iteration key value. See Creating an iteration key for
looping in streams on page 5 for more information.
As prefix to stem. Uses the iteration key value as a prefix to what you enter in the Stem field.
As suffix to stem. Uses the iteration key value as a suffix to what you enter in the Stem field
If you select either the prefix or suffix option you are prompted to add the additional text to the Stem
field. For example, if your iteration key value is Country of manufacture, and you select As prefix to
stem, you might enter - sales by model in this field.
can customize further in the script editor. Note that when you click Paste... any looping requirements you
have defined will also be displayed in the generated script.
To set up a condition:
1. In the right hand column of the Conditional subtab, click the Add Execution Statement button
to open the Conditional Execution Statement dialog box. In this dialog you specify the condition that
must be met in order for the node to be executed.
2. In the Conditional Execution Statement dialog box, specify the following:
a. Node. Select the node for which you want to set up conditional execution. Click the browse button
to open the Select Node dialog and choose the node you want; if there are too many nodes listed
you can filter the display to show nodes by one of the following categories: Export, Graph,
Modeling, or Output node.
b. Condition based on. Specify the condition that must be met for the node to be executed. You can
choose from one of four options: Stream parameter, Global variable, Table output cell, or Always
true. The details you enter in the bottom half of the dialog box are controlled by the condition you
choose.
v Stream parameter. Select the parameter from the list available and then choose the Operator for
that parameter; for example, the operator may be More than, Equals, Less than, Between, and so
on. You then enter the Value, or minimum and maximum values, depending on the operator.
v Global variable. Select the variable from the list available; for example, this might include:
Mean, Sum, Minimum value, Maximum value, or Standard deviation. You then select the
Operator and values required.
v Table output cell. Select the table node from the list available and then choose the Row and
Column in the table. You then select the Operator and values required.
v Always true. Select this option if the node must always be executed. If you select this option,
there are no further parameters to select.
3. Repeat steps 1 and 2 as often as required until you have set up all the conditions you require. The
node you selected and the condition to be met before that node is executed are shown in the main
body of the subtab in the Execute Node and If this condition is true columns respectively.
4. By default, nodes and conditions are executed in the order they appear; to move a node and condition
up or down the list, click on it to select it then use the up or down arrow in the right hand column of
the subtab to change the order.
In addition, you can set the following options at the bottom of the Conditional subtab:
v Evaluate all in order. Select this option to evaluate each condition in the order in which they are
shown on the subtab. The nodes for which conditions have been found to be "True" will all be
executed once all the conditions have been evaluated.
v Execute one at a time. Only available if Evaluate all in order is selected. Selecting this means that if a
condition is evaluated as "True", the node associated with that condition is executed before the next
condition is evaluated.
v Evaluate until first hit. Selecting this means that only the first node that returns a "True" evaluation
from the conditions you specified will be run.
The "Run selected lines" button executes a single line, or a block of adjacent lines, that you have selected
in the script:
Selected text only. Controls the scope of the search when using the Replace All option.
Regular Expression Syntax
Regular expressions allow you to search on special characters such as tabs or newline characters, classes
or ranges of characters such as a through d, any digit or non-digit, and boundaries such as the beginning
or end of a line. A regular expression pattern describes the structure of the string that the expression will
try to find in an input string. The following types of regular expression constructs are supported.
Table 1. Character matches
Characters
Matches
The character x
\\
\0n
\0nn
\0mnn
The character with octal value 0mnn (0 <= m <= 3, 0 <= n <= 7)
\xhh
\uhhhh
\t
\n
\r
\f
\a
\e
\cx
Matches
[abc]
a, b, or c (simple class)
[^abc]
[a-zA-Z]
[a-d[m-p]]
[a-z&&[def]]
[a-z&&[^bc]]
[a-z&&[^m-p]]
Matches
\d
\D
A non-digit: [^0-9]
\s
\S
10
Matches
\w
\W
Matches
\b
A word boundary
\B
A non-word boundary
\A
\Z
The end of the input but for the final terminator, if any
\z
For more information about using regular expressions, and for some examples, see http://
www.ibm.com/developerworks/java/tutorials/j-introtojava2/section9.html.
Examples
The following code searches for and matches the three numbers at the start of a string:
^[0-9]{3}
The following code searches for and matches the three numbers at the end of a string:
[0-9]{3}$
Chapter 1. Scripting
11
12
13
Python Scripting
This guide to the Python scripting language is an introduction to the components that are most likely to
be used when scripting in IBM SPSS Modeler, including concepts and programming basics. This will
provide you with enough knowledge to start developing your own Python scripts to use within IBM
SPSS Modeler.
Operations
Assignment is done using an equals sign (=). For example, to assign the value "3" to a variable called "x"
you would use the following statement:
x = 3
The equals sign is also used to assign string type data to a variable. For example, to assign the value "a
string value" to the variable "y" you would use the following statement:
y = "a string value"
The following table lists some commonly used comparison and numeric operations, and their
descriptions.
Table 5. Common comparison and numeric operations
Operation
Description
x < y
Is x less than y?
x > y
Is x greater than y?
x <= y
x >= y
x == y
Is x equal to y?
x != y
Is x not equal to y?
x <> y
Is x not equal to y?
x + y
Add y to x
x - y
Subtract y from x
x * y
Multiply x by y
x / y
Divide x by y
x ** y
Lists
Lists are sequences of elements. A list can contain any number of elements, and the elements of the list
can be any type of object. Lists can also be thought of as arrays. The number of elements in a list can
increase or decrease as elements are added, removed, or replaced.
Examples
[]
[1]
[[],[7],[8,9]]
14
x = 7; y = 2; z = 3;
[1, x, y, x + y]
You can then access specific elements of the list, for example:
mylist[0]
The number in the brackets ([]) is known as an index and refers to a particular element of the list. The
elements of a list are indexed starting from 0.
You can also select a range of elements of a list; this is called slicing. For example, x[1:3] selects the
second and third elements of x. The end index is one past the selection.
Strings
A string is an immutable sequence of characters that is treated as a value. Strings support all of the
immutable sequence functions and operators that result in a new string. For example, "abcdef"[1:4]
results in the output "bcd".
In Python, characters are represented by strings of length one.
Strings literals are defined by the use of single or triple quoting. Strings that are defined using single
quotes cannot span lines, while strings that are defined using triple quotes can. A string can be enclosed
in single quotes () or double quotes ("). A quoting character may contain the other quoting character
un-escaped or the quoting character escaped, that is preceded by the backslash (\) character.
Examples
"This
This
"Its
This
"This
is a string"
is also a string
a string"
book is called "Python Scripting and Automation Guide".
is an escape quote (\") in a quoted string"
Multiple strings separated by white space are automatically concatenated by the Python parser. This
makes it easier to enter long strings and to mix quote types in a single string, for example:
"This string uses and " that string uses ".
Strings support several useful methods. Some of these methods are given in the following table.
Table 6. String methods
Method
Usage
s.capitalize()
Initial capitalize s
15
Usage
s.expandtabs({size})
s.isalnum
s.isalpha
s.isnum
s.isupper
s.islower
s.isspace
s.istitle
s.lower()
s.upper()
s.swapcase()
s.title()
Convert
Convert
Convert
Convert
s.join(seq)
s.splitlines({keep})
s.split({sep {, max}})
s.ljust(width)
s.rjust(width)
s.center(width)
s.zfill(width)
s.lstrip()
s.rstrip()
s.strip()
s.translate(str {,delc})
to
to
to
to
all
all
all
all
lower case
upper case
opposite case
title case
Remarks
Remarks are comments that are introduced by the pound (or hash) sign (#). All text that follows the
pound sign on the same line is considered part of the remark and is ignored. A remark can start in any
column. The following example demonstrates the use of remarks:
#The HelloWorld application is one of the most simple
print Hello World # print the Hello World line
Statement Syntax
The statement syntax for Python is very simple. In general, each source line is a single statement. Except
for expression and assignment statements, each statement is introduced by a keyword name, such as if
or for. Blank lines or remark lines can be inserted anywhere between any statements in the code. If there
is more than one statement on a line, each statement must be separated by a semicolon (;).
16
Very long statements can continue on more than one line. In this case the statement that is to continue on
to the next line must end with a backslash (\), for example:
x = "A loooooooooooooooooooong string" + \
"another looooooooooooooooooong string"
When a structure is enclosed by parentheses (()), brackets ([]), or curly braces ({}), the statement can be
continued on to a new line after any comma, without having to insert a backslash, for example:
x = (1, 2, 3, "hello",
"goodbye", 4, 5, 6)
Identifiers
Identifiers are used to name variables, functions, classes and keywords. Identifiers can be any length, but
must start with either an alphabetical character of upper or lower case, or the underscore character (_).
Names that start with an underscore are generally reserved for internal or private names. After the first
character, the identifier can contain any number and combination of alphabetical characters, numbers
from 0-9, and the underscore character.
There are some reserved words in Jython that cannot be used to name variables, functions, or classes.
They fall under the following categories:
v Statement introducers: assert, break, class, continue, def, del, elif, else, except, exec, finally, for,
from, global, if, import, pass, print, raise, return, try, and while
v Parameter introducers: as, import, and in
v Operators: and, in, is, lambda, not, and or
Improper keyword use generally results in a SyntaxError.
Blocks of Code
Blocks of code are groups of statements that are used where single statements are expected. Blocks of
code can follow any of the following statements: if, elif, else, for, while, try, except, def, and class.
These statements introduce the block of code with the colon character (:), for example:
if x ==
y =
z =
elif:
y =
z =
1:
2
3
4
5
Indentation is used to delimit code blocks (rather than the curly braces that are used in Java). All lines in
a block must be indented to the same position. This is because a change in the indentation indicates the
end of a code block. It is usual to indent by four spaces per level. It is recommended that spaces are used
to indent the lines, rather than tabs. Spaces and tabs must not be mixed. The lines in the outermost block
of a module must start at column one, else a SyntaxError will occur.
The statements that make up a code block (and follow the colon) can also be on a single line, separated
by semicolons, for example:
if x == 1: y = 2; z = 3;
17
import sys
print "test1"
print sys.argv[0]
print sys.argv[1]
print len(sys.argv)
In this example, the import command imports the entire sys class so that the methods that exist for this
class, such as argv, can be used.
The script in this example can be invoked using the following line:
/u/mjloos/test1 mike don
Examples
The print keyword prints the arguments immediately following it. If the statement is followed by a
comma, a new line is not included in the output. For example:
print "This demonstrates the use of a",
print " comma at the end of a print statement."
The for statement is used to iterate through a block of code. For example:
mylist1 = ["one", "two", "three"]
for lv in mylist1:
print lv
continue
In this example, three strings are assigned to the list mylist1. The elements of the list are then printed,
with one element of each line. This will result in the following output:
one
two
three
In this example, the iterator lv takes the value of each element in the list mylist1 in turn as the for loop
implements the code block for each element. An iterator can be any valid identifier of any length.
The if statement is a conditional statement. It evaluates the condition and returns either true or false,
depending on the result of the evaluation. For example:
mylist1 = ["one", "two", "three"]
for lv in mylist1:
if lv == "two"
print "The value of lv is ", lv
else
print "The value of lv is not two, but ", lv
continue
In this example, the value of the iterator lv is evaluated. If the value of lv is two a different string is
returned to the string that is returned if the value of lv is not two. This results in the following output:
The value of lv is not two, but one
The value of lv is two
The value of lv is not two, but three
18
Mathematical Methods
From the math module you can access useful mathematical methods. Some of these methods are given in
the following table. Unless specified otherwise, all values are returned as floats.
Table 7. Mathematical methods
Method
Usage
math.ceil(x)
math.copysign(x, y)
math.fabs(x)
math.factorial(x)
math.floor(x)
math.frexp(x)
math.fsum(iterable)
math.isinf(x)
math.isnan(x)
math.ldexp(x, i)
math.modf(x)
math.trunc(x)
math.exp(x)
Return e**x
math.log(x[, base])
math.log1p(x)
math.log10(x)
math.pow(x, y)
math.sqrt(x)
In addition to the mathematical functions, there are some useful trigonometric methods. These methods
are shown in the following table.
Table 8. Trigonometric methods
Method
Usage
math.acos(x)
math.asin(x)
math.atan(x)
math.atan2(y, x)
19
Usage
math.cos(x)
math.hypot(x, y)
math.sin(x)
math.tan(x)
math.degrees(x)
math.radians(x)
math.acosh(x)
math.asinh(x)
math.atanh(x)
math.cosh(x)
math.sinh(x)
math.tanh(x)
There are also two mathematical constants. The value of math.pi is the mathematical constant pi. The
value of math.e is the mathematical constant e.
The label is incorrect because the string literal itself has been converted to an ASCII string by Python.
Python allows Unicode string literals to be specified by adding a u character prefix before the string
literal:
20
This will create a Unicode string and the label will be appear correctly.
Using Python and Unicode is a large topic which is beyond the scope of this document. Many books and
online resources are available that cover this topic in great detail.
Object-Oriented Programming
Object-oriented programming is based on the notion of creating a model of the target problem in your
programs. Object-oriented programming reduces programming errors and promotes the reuse of code.
Python is an object-oriented language. Objects defined in Python have the following features:
v Identity. Each object must be distinct, and this must be testable. The is and is not tests exist for this
purpose.
v State. Each object must be able to store state. Attributes, such as fields and instance variables, exist for
this purpose.
v Behavior. Each object must be able to manipulate its state. Methods exist for this purpose.
Python includes the following features for supporting object-oriented programming:
v Class-based object creation. Classes are templates for the creation of objects. Objects are data
structures with associated behavior.
v Inheritance with polymorphism. Python supports single and multiple inheritance. All Python instance
methods are polymorphic and can be overridden by subclasses.
v Encapsulation with data hiding. Python allows attributes to be hidden. When hidden, attributes can
be accessed from outside the class only through methods of the class. Classes implement methods to
modify the data.
Defining a Class
Within a Python class, both variables and methods can be defined. Unlike in Java, in Python you can
define any number of public classes per source file (or module). Therefore, a module in Python can be
thought of similar to a package in Java.
In Python, classes are defined using the class statement. The class statement has the following form:
class name (superclasses): statement
or
class name (superclasses):
assignment
.
.
function
.
.
21
When you define a class, you have the option to provide zero or more assignment statements. These create
class attributes that are shared by all instances of the class. You can also provide zero or more function
definitions. These function definitions create methods. The superclasses list is optional.
The class name should be unique in the same scope, that is within a module, function or class. You can
define multiple variables to reference the same class.
Here, the pass statement is used because a statement is required to complete the class, but no action is
required programmatically.
The following statement creates an instance of the class MyClass:
x = MyClass()
#class attributes
def method1(self):
print MyClass.attr1
def method2(self):
print MyClass.attr2
#instance attribute
#print my argument and my attribute
Inside a class, you should qualify all references to class attributes with the class name; for example,
MyClass.attr1. All references to instance attributes should be qualified with the self variable; for
example, self.text. Outside the class, you should qualify all references to class attributes with the class
name (for example MyClass.attr1) or with an instance of the class (for example x.attr1, where x is an
instance of the class). Outside the class, all references to instance variables should be qualified with an
instance of the class; for example, x.text.
22
Hidden Variables
Data can be hidden by creating Private variables. Private variables can be accessed only by the class itself.
If you declare names of the form __xxx or __xxx_yyy, that is with two preceding underscores, the Python
parser will automatically add the class name to the declared name, creating hidden variables, for
example:
class MyClass:
__attr = 10
def method1(self):
pass
def method2(self, p1, p2):
pass
def __privateMethod(self, text):
self.__text = text
#private attribute
Unlike in Java, in Python all references to instance variables must be qualified with self; there is no
implied use of this.
Inheritance
The ability to inherit from classes is fundamental to object-oriented programming. Python supports both
single and multiple inheritance. Single inheritance means that there can be only one superclass. Multiple
inheritance means that there can be more than one superclass.
Inheritance is implemented by subclassing other classes. Any number of Python classes can be
superclasses. In the Jython implementation of Python, only one Java class can be directly or indirectly
inherited from. It is not required for a superclass to be supplied.
Any attribute or method in a superclass is also in any subclass and can be used by the class itself, or by
any client as long as the attribute or method is not hidden. Any instance of a subclass can be used
wherever and instance of a superclass can be used; this is an example of polymorphism. These features
enable reuse and ease of extension.
Example
class Class1: pass
#no inheritance
#single inheritance
#multiple inheritance
23
24
Streams
A stream is the main IBM SPSS Modeler document type. It can be saved, loaded, edited and executed.
Streams can also have parameters, global values, a script, and other information associated with them.
SuperNode streams
A SuperNode stream is the type of stream used within a SuperNode. Like a normal stream, it contains
nodes which are linked together. SuperNode streams have a number of differences from a normal stream:
v Parameters and any scripts are associated with the SuperNode that owns the SuperNode stream, rather
than with the SuperNode stream itself.
v SuperNode streams have additional input and output connector nodes, depending on the type of
SuperNode. These connector nodes are used to flow information into and out of the SuperNode
stream, and are created automatically when the SuperNode is created.
Diagrams
The term diagram covers the functions that are supported by both normal streams and SuperNode
streams, such as adding and removing nodes, and modifying connections between the nodes.
Executing a stream
The following example runs all executable nodes in the stream, and is the simplest type of stream script:
modeler.script.stream().runAll(None)
The following example also runs all executable nodes in the stream:
stream = modeler.script.stream()
stream.runAll(None)
In this example, the stream is stored in a variable called stream. Storing the stream in a variable is useful
because a script is typically used to modify either the stream or the nodes within a stream. Creating a
variable that stores the stream results in a more concise script.
25
session()
stream()
diagram()
supernode()
Standalone
Returns a session
Not applicable
Stream
Returns a session
Returns a stream
Not applicable
SuperNode
Returns a session
Returns a stream
The modeler.script module also defines a way of terminating the script with an exit code. The
exit(exit-code) function stops the script from executing and returns the supplied integer exit code.
One of the methods that is defined for a stream is runAll(List). This method runs all executable nodes.
Any models or outputs that are generated by executing the nodes are added to the supplied list.
It is common for a stream execution to generate outputs such as models, graphs, and other output. To
capture this output, a script can supply a variable that is initialized to a list, for example:
stream = modeler.script.stream()
results = []
stream.runAll(results)
When execution is complete, any objects that are generated by the execution can be accessed from the
results list.
26
Finding nodes
Streams provide a number of ways of locating an existing node. These methods are summarized in the
following table.
Table 10. Methods for locating an existing node
Method
Return type
Description
s.findAll(type, label)
Collection
s.findAll(filter, recursive)
Collection
s.findByID(id)
Node
s.findByType(type, label)
Node
s.findDownstream(fromNodes)
Collection
s.findUpstream(fromNodes)
Collection
As an example, if a stream contained a single Filter node that the script needed to access, the Filter node
can be found by using the following script:
stream = modeler.script.stream()
node = stream.findByType("filter", None)
...
Alternatively, if the ID of the node (as shown on the Annotations tab of the node dialog box) is known,
the ID can be used to find the node, for example:
stream = modeler.script.stream()
node = stream.findByID("id32FJT71G2")
...
Setting properties
Nodes, streams, models, and outputs all have properties that can be accessed and, in most cases, set.
Properties are typically used to modify the behavior or appearance of the object. The methods that are
available for accessing and setting object properties are summarized in the following table.
Chapter 3. Scripting in IBM SPSS Modeler
27
Return type
Description
p.getPropertyValue(propertyName)
Object
p.setPropertyValue(propertyName,
value)
Not applicable
p.setPropertyValues(properties)
Not applicable
p.getKeyedPropertyValue(
propertyName, keyName)
Object
p.setKeyedPropertyValue(
propertyName, keyName, value)
Not applicable
For example, if you wanted to set the value of a Variable File node at the start of a stream, you can use
the following script:
stream = modeler.script.stream()
node = stream.findByType("variablefile", None)
node.setPropertyValue("full_filename", "$CLEO/DEMOS/DRUG1n")
...
Alternatively, you might want to filter a field from a Filter node. In this case, the value is also keyed on
the field name, for example:
stream = modeler.script.stream()
# Locate the filter node ...
node = stream.findByType("filter", None)
# ... and filter out the "Na" field
node.setKeyedPropertyValue("include", "Na", False)
Creating nodes
Streams provide a number of ways of creating nodes. These methods are summarized in the following
table.
Table 12. Methods for creating nodes
Method
Return type
Description
s.create(nodeType, name)
Node
s.createAt(nodeType, name, x, y)
Node
28
Return type
Description
s.createModelApplier(modelOutput,
name)
Node
For example, to create a new Type node in a stream you can use the following script:
stream = modeler.script.stream()
# Create a new type node
node = stream.create("type", "My Type")
Return type
Description
s.link(source, target)
Not applicable
s.link(source, targets)
Not applicable
s.linkBetween(inserted, source,
target)
Not applicable
s.linkPath(path)
Not applicable
s.unlink(source, target)
Not applicable
s.unlink(source, targets)
Not applicable
s.unlinkPath(path)
Not applicable
s.disconnect(node)
Not applicable
s.isValidLink(source, target)
boolean
29
Return type
Description
s.replace(originalNode,
replacementNode, discardOriginal)
Not applicable
List
s.delete(node)
Not applicable
s.deleteAll(nodes)
Not applicable
s.clear()
Not applicable
30
Return type
Description
s.iterator()
Iterator
s.predecessorAt(node, index)
Node
s.predecessorCount(node)
int
s.predecessors(node)
List
s.successorAt(node, index)
Node
s.successorCount(node)
int
s.successors(node)
List
Return type
Description
n.getLabel()
string
31
Table 16. Methods to obtain the ID, name, and label of a node (continued)
Method
Return type
Description
n.setLabel(label)
Not applicable
n.getName()
string
n.getID()
string
Methods that can be used to obtain other information about a node are summarized in the following
table.
Table 17. Methods for obtaining information about a node
Method
Return type
Description
n.getTypeName()
string
n.isInitial()
Boolean
n.isInline()
Boolean
n.isTerminal()
Boolean
n.getXPosition()
int
n.getYPosition()
int
n.setXYPosition(x, y)
Not applicable
n.setPositionBetween(source,
target)
Not applicable
n.isCacheEnabled()
Boolean
32
Return type
Description
n.setCacheEnabled(val)
Not applicable
n.isCacheFull()
Boolean
n.flushCache()
Not applicable
33
34
35
Note: Before running the script in the druglean.str stream, remember to set the scripting language to
Python (the stream was created in a previous version of IBM SPSS Modeler so the stream scripting
language is set to Legacy).
import modeler.api
stream = modeler.script.stream()
filternode = stream.findByType("filter", None)
typenode = stream.findByType("type", None)
c50node = stream.findByType("c50", None)
# Always use a custom model name
c50node.setPropertyValue("use_model_name", True)
lastRemoved = None
fields = typenode.getOutputDataModel()
for field in fields:
# If this is the target field then ignore it
if field.getModelingRole() == modeler.api.ModelingRole.OUT:
continue
# Re-enable the field that was most recently removed
if lastRemoved != None:
filternode.setKeyedPropertyValue("include", lastRemoved, True)
# Remove the field
lastRemoved = field.getColumnName()
filternode.setKeyedPropertyValue("include", lastRemoved, False)
# Set the name of the new model then run the build
c50node.setPropertyValue("model_name", "Exclude " + lastRemoved)
c50node.run([])
The DataModel object provides a number of methods for accessing information about the fields or
columns within the data model. These methods are summarized in the following table.
Table 18. DataModel object methods for accessing information about fields or columns
Method
Return type
Description
d.getColumnCount()
int
d.columnIterator()
Iterator
d.nameIterator()
Iterator
d.contains(name)
Boolean
d.getColumn(name)
Column
d.getColumnGroup(name)
ColumnGroup
d.getColumnGroupCount()
int
d.columnGroupIterator()
Iterator
36
Table 18. DataModel object methods for accessing information about fields or columns (continued)
Method
Return type
Description
d.toArray()
Column[]
Each field (Column object) includes a number of methods for accessing information about the column.
The table below shows a selection of these.
Table 19. Column object methods for accessing information about the column
Method
Return type
Description
c.getColumnName()
string
c.getColumnLabel()
string
c.getMeasureType()
MeasureType
c.getStorageType()
StorageType
c.isMeasureDiscrete()
Boolean
c.isModelOutputColumn()
Boolean
c.isStorageDatetime()
Boolean
c.isStorageNumeric()
Boolean
c.isValidValue(value)
Boolean
c.getModelingRole()
ModelingRole
c.getSetValues()
Object[]
c.getValueLabel(value)
string
c.getFalseFlag()
Object
c.getTrueFlag()
Object
37
Table 19. Column object methods for accessing information about the column (continued)
Method
Return type
Description
c.getLowerBound()
Object
c.getUpperBound()
Object
Note that most of the methods that access information about a column have equivalent methods defined
on the DataModel object itself. For example the two following statements are equivalent:
dataModel.getColumn("someName").getModelingRole()
dataModel.getModelingRole("someName")
The task runner class provides a convenient way running various common tasks. The methods that are
available in this class are summarized in the following table.
38
Table 20. Methods of the task runner class for performing common tasks
Method
Return type
Description
t.createStream(name, autoConnect,
autoManage)
Stream
t.exportDocumentToFile(
documentOutput, filename,
fileFormat)
Not applicable
t.exportModelToFile(modelOutput,
filename, fileFormat)
Not applicable
t.exportStreamToFile(stream,
filename, fileFormat)
Not applicable
t.insertNodeFromFile(filename,
diagram)
Node
t.openDocumentFromFile(filename,
autoManage)
DocumentOutput
t.openModelFromFile(filename,
autoManage)
ModelOutput
t.openStreamFromFile(filename,
autoManage)
Stream
t.saveDocumentToFile(
documentOutput, filename)
Not applicable
t.saveModelToFile(modelOutput,
filename)
Not applicable
t.saveStreamToFile(stream,
filename)
Not applicable
Handling Errors
The Python language provides error handling via the try...except code block. This can be used within
scripts to trap exceptions and handle problems that would otherwise cause the script to terminate.
In the example script below, an attempt is made to retrieve a model from a IBM SPSS Collaboration and
Deployment Services Repository. This operation can cause an exception to be thrown, for example, the
repository login credentials might not have been set up correctly, or the repository path is wrong. In the
script, this may cause a ModelerException to be thrown (all exceptions that are generated by IBM SPSS
Modeler are derived from modeler.api.ModelerException).
import modeler.api
session = modeler.script.session()
try:
repo = session.getRepository()
m = repo.retrieveModel("/some-non-existent-path", None, None, True)
# print goes to the Modeler UI script panel Debug tab
print "Everything OK"
except modeler.api.ModelerException, e:
print "An error occurred:", e.getMessage()
39
Note: Some scripting operations may cause standard Java exceptions to be thrown; these are not derived
from ModelerException. In order to catch these exceptions, an additional except block can be used to
catch all Java exceptions, for example:
import modeler.api
session = modeler.script.session()
try:
repo = session.getRepository()
m = repo.retrieveModel("/some-non-existent-path", None, None, True)
# print goes to the Modeler UI script panel Debug tab
print "Everything OK"
except modeler.api.ModelerException, e:
print "An error occurred:", e.getMessage()
except java.lang.Exception, e:
print "A Java exception occurred:", e.getMessage()
Return type
Description
p.parameterIterator()
Iterator
p.getParameterDefinition(
parameterName)
ParameterDefinition
p.getParameterLabel(parameterName) string
p.getParameterStorage(
parameterName)
ParameterStorage
p.setParameterStorage(
parameterName, storage)
Not applicable
p.getParameterType(parameterName)
ParameterType
p.setParameterType(parameterName,
type)
Not applicable
p.getParameterValue(parameterName) Object
40
Return type
Description
Sets the value of the named
parameter.
In the following example, the script aggregates some Telco data to find which region has the lowest
average income data. A stream parameter is then set with this region. That stream parameter is then used
in a Select node to exclude that region from the data, before a churn model is built on the remainder.
The example is artificial because the script generates the Select node itself and could therefore have
generated the correct value directly into the Select node expression. However, streams are typically
pre-built, so setting parameters in this way provides a useful example.
The first part of the example script creates the stream parameter that will contain the region with the
lowest average income. The script also creates the nodes in the aggregation branch and the model
building branch, and connects them together.
import modeler.api
stream = modeler.script.stream()
# Initialize a stream parameter
stream.setParameterStorage("LowestRegion", modeler.api.ParameterStorage.INTEGER)
# First create the aggregation branch to compute the average income per region
statisticsimportnode = stream.createAt("statisticsimport", "SPSS File", 114, 142)
statisticsimportnode.setPropertyValue("full_filename", "$CLEO_DEMOS/telco.sav")
statisticsimportnode.setPropertyValue("use_field_format_for_storage", True)
aggregatenode = modeler.script.stream().createAt("aggregate", "Aggregate", 294, 142)
aggregatenode.setPropertyValue("keys", ["region"])
aggregatenode.setKeyedPropertyValue("aggregates", "income", ["Mean"])
tablenode = modeler.script.stream().createAt("table", "Table", 462, 142)
stream.link(statisticsimportnode, aggregatenode)
stream.link(aggregatenode, tablenode)
selectnode = stream.createAt("select", "Select", 210, 232)
selectnode.setPropertyValue("mode", "Discard")
# Reference the stream parameter in the selection
selectnode.setPropertyValue("condition", "region = $P-LowestRegion")
typenode = stream.createAt("type", "Type", 366, 232)
typenode.setKeyedPropertyValue("direction", "churn", "Target")
c50node = stream.createAt("c50", "C5.0", 534, 232)
stream.link(statisticsimportnode, selectnode)
stream.link(selectnode, typenode)
stream.link(typenode, c50node)
41
The following part of the example script executes the Table node at the end of the aggregation branch.
# First execute the table node
results = []
tablenode.run(results)
The following part of the example script accesses the table output that was generated by the execution of
the Table node. The script then iterates through rows in the table, looking for the region with the lowest
average income.
# Running the table node should produce a single table as output
table = results[0]
# table output contains a RowSet so we can access values as rows and columns
rowset = table.getRowSet()
min_income = 1000000.0
min_region = None
# From the way the aggregate node is defined, the first column
# contains the region and the second contains the average income
row = 0
rowcount = rowset.getRowCount()
while row < rowcount:
if rowset.getValueAt(row, 1) < min_income:
min_income = rowset.getValueAt(row, 1)
min_region = rowset.getValueAt(row, 0)
row += 1
The following part of the script uses the region with the lowest average income to set the "LowestRegion"
stream parameter that was created earlier. The script then runs the model builder with the specified
region excluded from the training data.
# Check that a value was assigned
if min_region != None:
stream.setParameterValue("LowestRegion", min_region)
else:
stream.setParameterValue("LowestRegion", -1)
# Finally run the model builder with the selection criteria
c50node.run([])
42
43
Global Values
Global values are used to compute various summary statistics for specified fields. These summary values
can be accessed anywhere within the stream. Global values are similar to stream parameters in that they
are accessed by name through the stream. They are different from stream parameters in that the
associated values are updated automatically when a Set Globals node is run, rather than being assigned
by scripting or from the command line. The global values for a stream are accessed by calling the
stream's getGlobalValues() method.
The GlobalValues object defines the functions that are shown in the following table.
Table 22. Functions that are defined by the GlobalValues object
Method
Return type
Description
g.fieldNameIterator()
Iterator
g.getValue(type, fieldName)
Object
g.getValues(fieldName)
Map
GlobalValues.Type defines the type of summary statistics that are available. The following summary
statistics are available:
v
v
v
v
v
For example, the following script accesses the mean value of the "income" field, which is computed by a
Set Globals node:
import modeler.api
globals = modeler.script.stream().getGlobalValues()
mean_income = globals.getValue(modeler.api.GlobalValues.Type.MEAN, "income")
44
# Open the model build stream, locate the C5.0 node and run it
buildstream = tasks.openStreamFromFile(demosDir + "druglearn.str", True)
c50node = buildstream.findByType("c50", None)
results = []
c50node.run(results)
# Now open the plot stream, find the Na_to_K derive and the histogram
plotstream = tasks.openStreamFromFile(demosDir + "drugplot.str", True)
derivenode = plotstream.findByType("derive", None)
histogramnode = plotstream.findByType("histogram", None)
# Create a model applier node, insert it between the derive and histogram nodes
# then run the histgram
applyc50 = plotstream.createModelApplier(results[0], results[0].getName())
applyc50.setPositionBetween(derivenode, histogramnode)
plotstream.linkBetween(applyc50, derivenode, histogramnode)
histogramnode.setPropertyValue("color_field", "$C-Drug")
histogramnode.run([])
# Finally, tidy up the streams
buildstream.close()
plotstream.close()
45
46
Script Checking
You can quickly check the syntax of all types of scripts by clicking the red check button on the toolbar of
the Standalone Script dialog box.
47
Script checking alerts you to any errors in your code and makes recommendations for improvement. To
view the line with errors, click on the feedback in the lower half of the dialog box. This highlights the
error in red.
or
c:\\demos\\druglearn.str
48
Where described
System arguments
Parameter arguments
For example, you can use the -server, -stream and -execute flags to connect to a server and then load
and run a stream, as follows:
modelerclient -server -hostname myserver -port 80 -username dminer
-password 1234 -stream mystream.str -execute
Note that when running against a local client installation, the server connection arguments are not
required.
Parameter values that contain spaces can be enclosed in double quotesfor example:
modelerclient -stream mystream.str -Pusername="Joe User" -execute
You can also execute IBM SPSS Modeler scripts in this manner, using the -script flag.
Debugging Command Line Arguments
49
To debug a command line, use the modelerclient command to launch IBM SPSS Modeler with the
desired arguments. This enables you to verify that commands will execute as expected. You can also
confirm the values of any parameters passed from the command line in the Session Parameters dialog
box (Tools menu, Set Session Parameters).
System Arguments
The following table describes system arguments available for command line invocation of the user
interface.
Table 24. System arguments
Argument
Behavior/Description
@ <commandFile>
-directory <dir>
Sets the default working directory. In local mode, this directory is used for both data
and output. Example: -directory c:/ or -directory c:\\
-server_directory <dir>
Sets the default server directory for data. The working directory, specified by using
the -directory flag, is used for output.
-execute
After starting, execute any stream, state, or script loaded at startup. If a script is
loaded in addition to a stream or state, the script alone will be executed.
-stream <stream>
At startup, load the stream specified. Multiple streams can be specified, but the last
stream specified will be set as the current stream.
-script <script>
At startup, load the standalone script specified. This can be specified in addition to a
stream or state as described below, but only one script can be loaded at startup. If the
script file suffix is .py, the file is assumed to be a Python script, otherwise it is
assumed to be a legacy script.
-model <model>
-state <state>
-project <project>
Load the specified project. Only one project can be loaded at startup.
-output <output>
-help
Display a list of command line arguments. When this option is specified, all other
arguments are ignored and the Help screen is displayed.
-P <name>=<value>
Used to set a startup parameter. Can also be used to set node properties (slot
parameters).
-scriptlang <python |
legacy>
This can be used to specify the scripting language associated with -script option,
regardless of the script file suffix.
Example
client -scriptlang python -script scores.txt -execute
This runs the supplied script file using Python even though the file suffix was not
.py.
Note: Default directories can also be set in the user interface. To access the options, from the File menu,
choose Set Working Directory or Set Server Directory.
Loading Multiple Files
From the command line, you can load multiple streams, states, and outputs at startup by repeating the
relevant argument for each object loaded. For example, to load and run two streams called report.str and
train.str, you would use the following command:
50
-output
-model
-project
You use the prefix to create a URI that specifies the location of the objectfor example, -stream
"spsscr:///folder_1/scoring_stream.str". The presence of the spsscr: prefix requires that a valid
connection to the IBM SPSS Collaboration and Deployment Services Repository has been specified in the
same command. So, for example, the full command would look like this:
modelerclient -spsscr_hostname myhost -spsscr_port 8080
-spsscr_username myusername -spsscr_password mypassword
-stream "spsscr:///folder_1/scoring_stream.str" -execute
Note that from the command line, you must use a URI. The simpler REPOSITORY_PATH is not supported. (It
works only within scripts.)
Parameter Arguments
Parameters can be used as flags during command line execution of IBM SPSS Modeler. In command line
arguments, the -P flag is used to denote a parameter of the form -P <name>=<value>.
Parameters can be any of the following:
v Simple parameters
v Slot parameters, also referred to as node properties. These parameters are used to modify the settings
of nodes in the stream. See the topic Node Properties Overview on page 56 for more information.
v Command line parameters, used to alter the invocation of IBM SPSS Modeler.
For example, you can supply data source user names and passwords as a command line flag, as follows:
modelerclient -stream response.str -P:database.datasource={"ORA 10gR2", user1, mypsw, true}
The format is the same as that of the datasource parameter of the database node property. See the topic
database Node Properties on page 64 for more information.
51
Behavior/Description
-server
Runs IBM SPSS Modeler in server mode, connecting to a public server using the
flags -hostname, -port, -username, -password, and -domain.
-hostname <name>
-use_ssl
Specifies that the connection should use SSL (secure socket layer). This flag is
optional; the default setting is not to use SSL.
-port <number>
The port number of the specified server. Available in server mode only.
-cluster <name>
Specifies a connection to a server cluster rather than a named server; this argument
is an alternative to the hostname, port and use_ssl arguments. The name is the
cluster name, or a unique URI which identifies the cluster in the IBM SPSS
Collaboration and Deployment Services Repository. The server cluster is managed
by the Coordinator of Processes through IBM SPSS Collaboration and Deployment
Services. See the topic IBM SPSS Collaboration and Deployment Services
Repository Connection Arguments for more information.
-username <name>
The user name with which to log on to the server. Available in server mode only.
-password <password>
The password with which to log on to the server. Available in server mode only.
Note: If the -password argument is not used, you will be prompted for a password.
-epassword
<encodedpasswordstring>
The encoded password with which to log on to the server. Available in server
mode only. Note: An encoded password can be generated from the Tools menu of
the IBM SPSS Modeler application.
-domain <name>
The domain used to log on to the server. Available in server mode only.
-P <name>=<value>
Used to set a startup parameter. Can also be used to set node properties (slot
parameters).
52
Table 26. IBM SPSS Collaboration and Deployment Services Repository connection arguments
Argument
Behavior/Description
-spsscr_hostname <hostname or IP
address>
-spsscr_port <number>
The port number on which the IBM SPSS Collaboration and Deployment
Services Repository accepts connections (typically, 8080 by default).
-spsscr_use_ssl
Specifies that the connection should use SSL (secure socket layer). This
flag is optional; the default setting is not to use SSL.
-spsscr_username <name>
The user name with which to log on to the IBM SPSS Collaboration and
Deployment Services Repository.
-spsscr_password <password>
The password with which to log on to the IBM SPSS Collaboration and
Deployment Services Repository.
-spsscr_epassword <encoded password> The encoded password with which to log on to the IBM SPSS
Collaboration and Deployment Services Repository.
-spsscr_domain <name>
53
54
Abbreviations
Standard abbreviations are used throughout the syntax for node properties. Learning the abbreviations is
helpful in constructing scripts.
Table 27. Standard abbreviations used throughout the syntax.
Abbreviation
Meaning
abs
Absolute value
len
Length
min
Minimum
max
Maximum
correl
Correlation
covar
Covariance
num
Number or numeric
pct
Percent or percentage
transp
Transparency
xval
Cross-validation
var
55
See the topics Stream, Session, and SuperNode Parameters on page 40 and System Arguments on
page 50 for further scripting examples.
Data type
Property description
use_custom_name
boolean
name
string
custom_name
string
tooltip
string
annotation
string
keywords
string
cache_enabled
boolean
node_type
source_supernode
process_supernode
terminal_supernode
all node names as specified
for scripting
SuperNode-specific properties are discussed separately, as with all other nodes. See the topic Chapter 19,
SuperNode Properties, on page 231 for more information.
56
To reference stream properties, you must use a special stream variable, denoted with a ^ preceding the
stream.
The nodes property is used to refer to the nodes in the current stream.
Stream properties are described in the following table.
Table 29. Stream properties.
Property name
Data type
execute_method
Normal
Script
date_format
"DDMMYY"
"MMDDYY"
"YYMMDD"
"YYYYMMDD"
"YYYYDDD"
DAY
MONTH
"DD-MM-YY"
"DD-MM-YYYY"
"MM-DD-YY"
"MM-DD-YYYY"
"DD-MON-YY"
"DD-MON-YYYY"
"YYYY-MM-DD"
"DD.MM.YY"
"DD.MM.YYYY"
"MM.DD.YY"
"MM.DD.YYYY"
"DD.MON.YY"
"DD.MON.YYYY"
"DD/MM/YY"
"DD/MM/YYYY"
"MM/DD/YY"
"MM/DD/YYYY"
"DD/MON/YY"
"DD/MON/YYYY"
MON YYYY
q Q YYYY
ww WK YYYY
date_baseline
number
date_2digit_baseline
number
Property description
57
Data type
time_format
"HHMMSS"
"HHMM"
"MMSS"
"HH:MM:SS"
"HH:MM"
"MM:SS"
"(H)H:(M)M:(S)S"
"(H)H:(M)M"
"(M)M:(S)S"
"HH.MM.SS"
"HH.MM"
"MM.SS"
"(H)H.(M)M.(S)S"
"(H)H.(M)M"
"(M)M.(S)S"
time_rollover
boolean
import_datetime_as_string
boolean
decimal_places
number
decimal_symbol
Default
Period
Comma
angles_in_radians
boolean
use_max_set_size
boolean
max_set_size
number
ruleset_evaluation
Voting
FirstHit
refresh_source_nodes
boolean
script
string
script_language
Python
Legacy
annotation
string
encoding
SystemDefault
"UTF-8"
stream_rewriting
boolean
stream_rewriting_maximise_sql
boolean
stream_rewriting_optimise_clem_
execution
boolean
stream_rewriting_optimise_syntax_
execution
boolean
enable_parallelism
boolean
sql_generation
boolean
database_caching
boolean
sql_logging
boolean
sql_generation_logging
boolean
sql_log_native
boolean
sql_log_prettyprint
boolean
58
Property description
Data type
Property description
record_count_suppress_input
boolean
record_count_feedback_interval
integer
use_stream_auto_create_node_
settings
boolean
create_model_applier_for_new_
models
boolean
create_model_applier_update_links
createEnabled
createDisabled
doNotCreate
create_source_node_from_builders
boolean
create_source_node_update_links
createEnabled
createDisabled
doNotCreate
59
60
Data type
Property description
direction
Input
Target
Both
None
Partition
Split
Frequency
RecordID
type
Range
Flag
Set
Typeless
Discrete
Ordered Set
Default
storage
Unknown
String
Integer
Real
Time
Date
Timestamp
check
None
Nullify
Coerce
Discard
Warn
Abort
values
[value value]
value_mode
Read
Pass
Read+
Current
Specify
default_value_mode
Read
Pass
61
Data type
Property description
extend_values
boolean
value_labels
string
enable_missing
boolean
missing_values
range_missing
boolean
missing_lower
string
missing_upper
string
null_missing
boolean
whitespace_missing
boolean
description
string
default_include
boolean
include
boolean
new_name
string
Data type
Property description
data_source
string
host
string
port
integer
tenant
string
set_credentials
boolean
62
Data type
Property description
user_name
string
password
string
Data type
Property description
mode
Data
Report
cognos_connection
{"string",boolean,
"string","string",
"string"}
cognos_package_name
string
cognos_items
{"field","field", ...
,"field"}
cognos_filters
field
cognos_data_parameters
list
Values for prompt parameters for data. Nameand-value pairs are enclosed in braces, and
multiple pairs are separated by commas and
the whole string enclosed in square brackets.
Format:
[{"param1", "value"},...,{"paramN", "value"}]
63
Data type
Property description
cognos_report_directory
field
cognos_report_name
field
cognos_report_parameters
list
Data type
Property description
pm_host
string
tm1_connection
{"field","field", ...
,"field"}
selected_view
{"field" "field"}
64
Data type
Property description
mode
Table
Query
datasource
string
username
string
password
string
epassword
string
tablename
string
strip_spaces
None
Left
Right
Both
use_quotes
AsNeeded
Always
Never
query
string
Note: If the database name (in the datasource property) contains one or more spaces, periods (also
known as a "full stop"), or underscores, you can use the "backslash double quote" format to treat it as
string. For example: \"db2v9.7.6_linux\" or: "\"TDATA 131\"".
Note: If the database name (in the datasource property) contains spaces, then instead of individual
properties for datasource, username and password, you can also use a single datasource property in the
following format:
Table 35. database node properties - datasource specific.
database node properties
Data type
Property description
datasource
string
Format:
[database_name,username,password[,true |
false]]
The last parameter is for use with encrypted
passwords. If this is set to true, the password
will be decrypted before use.
Use this format also if you are changing the data source; however, if you just want to change the
username or password, you can use the username or password properties.
65
Figure 7. Dimensions
Data Import node
Table 36. datacollectionimport node properties.
datacollectionimport node properties Data type
metadata_name
string
Property description
The name of the MDSC. The special value
DimensionsMDD indicates that the standard IBM
SPSS Data Collection metadata document
should be used. Other possible values include:
mrADODsc
mrI2dDsc
mrLogDsc
mrQdiDrsDsc
mrQvDsc
mrSampleReportingMDSC
mrSavDsc
mrSCDsc
mrScriptMDSC
The special value none indicates that there is
no MDSC.
metadata_file
string
casedata_name
string
casedata_source_type
Unknown
File
Folder
UDL
DSN
casedata_file
string
casedata_folder
string
66
Property description
casedata_udl_string
string
casedata_dsn_string
string
casedata_project
string
version_import_mode
All
Latest
Specify
specific_version
string
use_language
string
language
string
use_context
string
context
string
use_label_type
string
label_type
string
user_id
string
password
string
import_system_variables
Common
None
All
import_codes_variables
boolean
import_sourcefile_variables
boolean
import_multi_response
MultipleFlags
Single
67
Data type
Property description
excel_file_type
Excel2003
Excel2007
full_filename
string
use_named_range
Boolean
named_range
string
worksheet_mode
Index
Name
worksheet_index
integer
worksheet_name
string
data_range_mode
FirstNonBlank
ExplicitRange
blank_rows
StopReading
ReturnBlankRows
explicit_range_start
string
explicit_range_end
string
read_field_names
Boolean
Data type
Property description
connection
list
Structured property--list of
parameters making up an Enterprise
View connection.
tablename
string
68
Data type
Property description
record_len
number
line_oriented
boolean
decimal_symbol
Default
Comma
Period
skip_header
number
auto_recognize_datetime
boolean
lines_to_scan
number
fields
list
Structured property.
full_filename
string
strip_spaces
None
Left
Right
Both
invalid_char_mode
Discard
Replace
invalid_char_replacement
string
use_custom_values
boolean
custom_storage
Unknown
String
Integer
Real
Time
Date
Timestamp
69
Data type
Property description
custom_date_format
"DDMMYY"
"MMDDYY"
"YYMMDD"
"YYYYMMDD"
"YYYYDDD"
DAY
MONTH
"DD-MM-YY"
"DD-MM-YYYY"
"MM-DD-YY"
"MM-DD-YYYY"
"DD-MON-YY"
"DD-MON-YYYY"
"YYYY-MM-DD"
"DD.MM.YY"
"DD.MM.YYYY"
"MM.DD.YY"
"MM.DD.YYYY"
"DD.MON.YY"
"DD.MON.YYYY"
"DD/MM/YY"
"DD/MM/YYYY"
"MM/DD/YY"
"MM/DD/YYYY"
"DD/MON/YY"
"DD/MON/YYYY"
MON YYYY
q Q YYYY
ww WK YYYY
custom_time_format
"HHMMSS"
"HHMM"
"MMSS"
"HH:MM:SS"
"HH:MM"
"MM:SS"
"(H)H:(M)M:(S)S"
"(H)H:(M)M"
"(M)M:(S)S"
"HH.MM.SS"
"HH.MM"
"MM.SS"
"(H)H.(M)M.(S)S"
"(H)H.(M)M"
"(M)M.(S)S"
custom_decimal_symbol
field
encoding
StreamDefault
SystemDefault
"UTF-8"
70
Data type
Property description
format
Windows
UNIX
Transport
SAS7
SAS8
SAS9
full_filename
string
member_name
string
read_formats
boolean
full_format_filename
string
import_names
NamesAndLabels
LabelsasNames
Data type
fields
Structured property
correlations
Structured property
max_cases
integer
create_iteration_field
boolean
iteration_field_name
string
replicate_results
boolean
random_seed
integer
overwrite_when_refitting
boolean
parameter_xml
string
Property description
71
Data type
distribution
Bernoulli
Beta
Binomial
Categorical
Exponential
Fixed
Gamma
Lognormal
NegativeBinomialFailures
NegativeBinomialTrials
Normal
Poisson
Range
Triangular
Uniform
Weibull
bernoulli_prob
number
0 bernoulli_prob 1
beta_shape1
number
Must be 0
beta_shape2
number
Must be 0
beta_min
number
beta_max
number
binomial_n
integer
Must be > 0
binomial_prob
number
0 binomial_prob 1
binomial_min
number
binomial_max
number
exponential_scale
number
Must be > 0
exponential_min
number
exponential_max
number
fixed_value
string
gamma_shape
number
Must be 0
gamma_scale
number
Must be 0
gamma_min
number
gamma_max
number
lognormal_shape1
number
Must be 0
lognormal_shape2
number
Must be 0
lognormal_min
number
lognormal_max
number
negative_bin_failures_threshold
number
Must be 0
negative_bin_failures_prob
number
0 negative_bin_failures_prob 1
72
Property description
Data type
Property description
negative_bin_failures_min
number
negative_bin_failures_max
number
negative_bin_trials_threshold
number
Must be 0
negative_bin_trials_prob
number
0 negative_bin_trials_prob 1
negative_bin_trials_min
number
negative_bin_trials_max
number
normal_mean
number
normal_sd
number
Must be > 0
normal_min
number
normal_max
number
poisson_mean
number
Must be 0
poisson_min
number
poisson_max
number
triangular_mode
number
triangular_min triangular_mode
triangular_max
triangular_min
number
triangular_max
number
uniform_min
number
uniform_max
number
weibull_rate
number
Must be 0
weibull_scale
number
Must be 0
weibull_location
number
Must be 0
weibull_min
number
weibull_max
number
Correlation can be any number between +1 and -1. You can specify as many or as few correlations as you
like. Any unspecified correlations are set to zero. If any fields are unknown, the correlation value should
be set on the correlation matrix (or table) and is shown in red text. When there are unknown fields, it is
not possible to execute the node.
73
The properties for this node are described under statisticsimport Node Properties on page 227.
Data type
Property description
data
names
custom_storage
Unknown
String
Integer
Real
Time
Date
Timestamp
data_mode
Combined
Ordered
values
74
Data type
Property description
skip_header
number
num_fields_auto
boolean
num_fields
number
delimit_space
boolean
delimit_tab
boolean
delimit_new_line
boolean
delimit_non_printing
boolean
delimit_comma
boolean
delimit_other
boolean
other
string
decimal_symbol
Default
Comma
Period
multi_blank
boolean
read_field_names
boolean
strip_spaces
None
Left
Right
Both
invalid_char_mode
Discard
Replace
invalid_char_replacement
string
break_case_by_newline
boolean
lines_to_scan
number
75
Data type
Property description
auto_recognize_datetime
boolean
quotes_1
Discard
PairAndDiscard
IncludeAsText
quotes_2
Discard
PairAndDiscard
IncludeAsText
full_filename
string
use_custom_values
boolean
custom_storage
Unknown
String
Integer
Real
Time
Date
Timestamp
custom_date_format
"DDMMYY"
"MMDDYY"
"YYMMDD"
"YYYYMMDD"
"YYYYDDD"
DAY
MONTH
"DD-MM-YY"
"DD-MM-YYYY"
"MM-DD-YY"
"MM-DD-YYYY"
"DD-MON-YY"
"DD-MON-YYYY"
"YYYY-MM-DD"
"DD.MM.YY"
"DD.MM.YYYY"
"MM.DD.YY"
"MM.DD.YYYY"
"DD.MON.YY"
"DD.MON.YYYY"
"DD/MM/YY"
"DD/MM/YYYY"
"MM/DD/YY"
"MM/DD/YYYY"
"DD/MON/YY"
"DD/MON/YYYY"
MON YYYY
q Q YYYY
ww WK YYYY
76
Data type
Property description
custom_time_format
"HHMMSS"
"HHMM"
"MMSS"
"HH:MM:SS"
"HH:MM"
"MM:SS"
"(H)H:(M)M:(S)S"
"(H)H:(M)M"
"(M)M:(S)S"
"HH.MM.SS"
"HH.MM"
"MM.SS"
"(H)H.(M)M.(S)S"
"(H)H.(M)M"
"(M)M.(S)S"
custom_decimal_symbol
field
encoding
StreamDefault
SystemDefault
"UTF-8"
Data type
Property description
read
single
directory
recurse
boolean
full_filename
string
directory_name
string
full_schema_filename
string
records
string
mode
read
specify
77
Data type
fields
78
Property description
List of items (elements and attributes) to
import. Each item in the list is an XPath
expression.
Data type
Property description
match_by
Position
Name
match_case
boolean
include_fields_from
Main
All
create_tag_field
boolean
tag_field_name
string
Data type
Property description
keys
contiguous
boolean
aggregates
extension
string
add_as
Suffix
Prefix
79
Data type
Property description
inc_record_count
boolean
count_field
string
Data type
Property description
Structured property to balance proportion of
field values based on number specified (see
example below).
directives
boolean
training_data_only
Data type
mode
IndividualRecords
Hangouts
latitude_field
field
longitude_field
field
timestamp_field
field
hangout_density
density
80
Property description
Data type
Property description
densities
[density,density,..., density]
id_field
field
qualifying_duration
1DAY
12HOURS
8HOURS
6HOURS
4HOURS
3HOURS
2Hours
1HOUR
30MIN
15MIN
10MIN
5MIN
2MIN
1MIN
30SECS
15SECS
10SECS
5SECS
2SECS
1SECS
Must be a string.
min_events
integer
qualifying_pct
integer
add_extension_as
Prefix
Suffix
name_extension
string
81
Data type
Property description
mode
Include
Discard
grouping_fields
composite_value
Structured slot
composite_values
Structured slot
inc_record_count
boolean
count_field
string
sort_keys
Structured slot.
default_ascending
boolean
low_distinct_key_count
boolean
keys_pre_sorted
boolean
disable_sql_generation
boolean
Data type
Property description
method
Order
Keys
Condition
condition
string
82
Data type
Property description
key_fields
common_keys
boolean
join
Inner
FullOuter
PartialOuter
Anti
outer_join_tag.n
boolean
single_large_input
boolean
single_large_input_tag
string
use_existing_sort_keys
boolean
existing_sort_keys
Data type
Property description
relative_to
Fixed
Today
reference_date
date
contiguous
boolean
id_field
field
date_field
field
value_field
field
extension
string
83
Data type
Property description
add_as
Suffix
Prefix
discard_low_value_records
boolean
discard_records_below
number
only_recent_transactions
boolean
specify_transaction_date
boolean
transaction_date_after
date
transaction_within_last
number
transaction_scale
Days
Weeks
Months
Years
save_r2
boolean
save_r3
boolean
Data type
syntax
string
convert_flags
StringsAndDoubles
LogicalValues
convert_datetime
boolean
convert_datetime_class
POSIXct
POSIXlt
convert_missing
boolean
84
Property description
Data type
method
Simple
Property description
Complex
mode
Include
Discard
sample_type
First
OneInN
RandomPct
first_n
integer
one_in_n
number
rand_pct
number
use_max_size
boolean
maximum_size
integer
set_random_seed
boolean
random_seed
integer
complex_sample_type
Random
Systematic
sample_units
Proportions
Counts
sample_size_proportions
Fixed
Custom
Variable
sample_size_counts
Fixed
Custom
Variable
fixed_proportions
number
fixed_counts
integer
variable_proportions
field
variable_counts
field
use_min_stratum_size
boolean
minimum_stratum_size
integer
use_max_stratum_size
boolean
maximum_stratum_size
integer
85
Data type
clusters
field
stratify_by
specify_input_weight
boolean
input_weight
field
new_output_weight
string
sizes_proportions
default_proportion
number
sizes_counts
default_count
number
Property description
If sample_units=proportions and
sample_size_proportions=Custom, specifies a
value for each possible combination of values of
stratification fields.
Data type
Property description
mode
Include
Discard
condition
string
Data type
Property description
keys
default_ascending
boolean
use_existing_keys
boolean
86
Data type
Property description
Specifies the fields that are already sorted and
the direction in which they are sorted. Uses the
same format as the keys property.
existing_keys
Data type
Property description
custom_fields
boolean
targets
[field1...fieldN]
inputs
[field1...fieldN]
method
ExpertModeler
Exsmooth
Arima
calculate_conf
boolean
conf_limit_pct
real
use_time_intervals_node
boolean
interval_offset_position
LastObservation
LastRecord
interval_offset
number
interval_type
Periods
Years
Quarters
Months
WeeksNonPeriodic
DaysNonPeriodic
HoursNonPeriodic
MinutesNonPeriodic
SecondsNonPeriodic
events
fields
expert_modeler_method
AllModels
Exsmooth
Arima
consider_seasonal
boolean
detect_outliers
boolean
expert_outlier_additive
boolean
87
Data type
expert_outlier_level_shift
boolean
expert_outlier_innovational
boolean
expert_outlier_transient
boolean
Property description
expert_outlier_seasonal_additive boolean
expert_outlier_local_trend
boolean
expert_outlier_additive_patch
boolean
exsmooth_model_type
Simple
HoltsLinearTrend
BrownsLinearTrend
DampedTrend
SimpleSeasonal
WintersAdditive
WintersMultiplicative
exsmooth_transformation_type
None
SquareRoot
NaturalLog
arima_p
integer
arima_d
integer
arima_q
integer
arima_sp
integer
arima_sd
integer
arima_sq
integer
arima_transformation_type
None
SquareRoot
NaturalLog
arima_include_constant
boolean
tf_arima_p.fieldname
integer
tf_arima_d.fieldname
integer
tf_arima_q.fieldname
integer
tf_arima_sp.fieldname
integer
tf_arima_sd.fieldname
integer
tf_arima_sq.fieldname
integer
tf_arima_delay.fieldname
integer
tf_arima_transformation_type.
fieldname
None
SquareRoot
NaturalLog
arima_detect_outlier_mode
None
Automatic
arima_outlier_additive
boolean
arima_outlier_level_shift
boolean
88
Data type
arima_outlier_innovational
boolean
arima_outlier_transient
boolean
Property description
arima_outlier_seasonal_additive boolean
arima_outlier_local_trend
boolean
arima_outlier_additive_patch
boolean
deployment_force_rebuild
boolean
deployment_rebuild_mode
Count
Percent
deployment_rebuild_count
number
deployment_rebuild_pct
number
deployment_rebuild_field
<field>
89
90
Data type
Property description
enable_anonymize
boolean
use_prefix
boolean
prefix
string
transformation
Random
Fixed
set_random_seed
boolean
random_seed
integer
scale
number
translate
number
Data type
objective
Balanced
Speed
Accuracy
Custom
Property description
91
Data type
Property description
custom_fields
boolean
target
field
inputs
use_frequency
boolean
frequency_field
field
use_weight
boolean
weight_field
field
excluded_fields
Filter
None
if_fields_do_not_match
StopExecution
ClearAnalysis
prepare_dates_and_times
boolean
compute_time_until_date
boolean
reference_date
Today
Fixed
fixed_date
date
units_for_date_durations
Automatic
Fixed
fixed_date_units
Years
Months
Days
compute_time_until_time
boolean
reference_time
CurrentTime
Fixed
fixed_time
time
units_for_time_durations
Automatic
Fixed
fixed_date_units
Hours
Minutes
Seconds
extract_year_from_date
boolean
extract_month_from_date
boolean
extract_day_from_date
boolean
extract_hour_from_time
boolean
extract_minute_from_time
boolean
extract_second_from_time
boolean
exclude_low_quality_inputs
boolean
exclude_too_many_missing
boolean
maximum_percentage_missing
number
exclude_too_many_categories
boolean
maximum_number_categories
number
92
Data type
exclude_if_large_category
boolean
maximum_percentage_category
number
prepare_inputs_and_target
boolean
adjust_type_inputs
boolean
adjust_type_target
boolean
reorder_nominal_inputs
boolean
reorder_nominal_target
boolean
replace_outliers_inputs
boolean
replace_outliers_target
boolean
replace_missing_continuous_inputs
boolean
replace_missing_continuous_target
boolean
replace_missing_nominal_inputs
boolean
replace_missing_nominal_target
boolean
replace_missing_ordinal_inputs
boolean
replace_missing_ordinal_target
boolean
maximum_values_for_ordinal
number
minimum_values_for_continuous
number
outlier_cutoff_value
number
outlier_method
Replace
Delete
rescale_continuous_inputs
boolean
rescaling_method
MinMax
ZScore
min_max_minimum
number
min_max_maximum
number
z_score_final_mean
number
z_score_final_sd
number
rescale_continuous_target
boolean
target_final_mean
number
target_final_sd
number
transform_select_input_fields
boolean
maximize_association_with_target
boolean
p_value_for_merging
number
merge_ordinal_features
boolean
merge_nominal_features
boolean
minimum_cases_in_category
number
bin_continuous_fields
boolean
p_value_for_binning
number
perform_feature_selection
boolean
p_value_for_selection
number
Property description
93
Data type
perform_feature_construction
boolean
transformed_target_name_extension
string
transformed_inputs_name_extension
string
constructed_features_root_name
string
years_duration_ name_extension
string
months_duration_ name_extension
string
days_duration_ name_extension
string
hours_duration_ name_extension
string
minutes_duration_ name_extension
string
seconds_duration_ name_extension
string
year_cyclical_name_extension
string
month_cyclical_name_extension
string
day_cyclical_name_extension
string
hour_cyclical_name_extension
string
minute_cyclical_name_extension
string
second_cyclical_name_extension
string
Property description
Data type
Property description
fields
method
FixedWidth
EqualCount
Rank
SDev
Optimal
rcalculate_bins
Always
IfNecessary
fixed_width_name_extension
string
fixed_width_add_as
Suffix
Prefix
94
Data type
Property description
fixed_bin_method
Width
Count
fixed_bin_count
integer
fixed_bin_width
real
equal_count_name_
extension
string
equal_count_add_as
Suffix
Prefix
tile4
boolean
tile5
boolean
tile10
boolean
tile20
boolean
tile100
boolean
use_custom_tile
boolean
custom_tile_name_extension
string
custom_tile_add_as
Suffix
Prefix
custom_tile
integer
equal_count_method
RecordCount
ValueSum
tied_values_method
Next
Current
Random
rank_order
Ascending
Descending
rank_add_as
Suffix
Prefix
rank
boolean
rank_name_extension
string
rank_fractional
boolean
rank_fractional_name_
extension
string
rank_pct
boolean
95
Data type
Property description
rank_pct_name_extension
string
sdev_name_extension
string
sdev_add_as
Suffix
Prefix
sdev_count
One
Two
Three
optimal_name_extension
string
optimal_add_as
Suffix
Prefix
optimal_supervisor_field
field
optimal_merge_bins
boolean
optimal_small_bin_threshold
integer
optimal_pre_bin
boolean
optimal_max_bins
integer
optimal_lower_end_point
Inclusive
Exclusive
optimal_first_bin
Unbounded
Bounded
optimal_last_bin
Unbounded
Bounded
Data type
Property description
new_name
string
mode
Single
Multiple
fields
name_extension
string
add_as
Suffix
Prefix
96
Data type
Property description
result_type
Formula
Flag
Set
State
Count
Conditional
formula_expr
string
flag_expr
string
flag_true
string
flag_false
string
set_default
string
set_value_cond
string
state_on_val
string
state_off_val
string
state_on_expression
string
state_off_expression
string
state_initial
On
Off
count_initial_val
string
count_inc_condition
string
count_inc_expression
string
count_reset_condition
string
cond_if_cond
string
cond_then_expr
string
cond_else_expr
string
Data type
Property description
ensemble_target_field
field
filter_individual_model_output
boolean
97
Data type
Property description
flag_ensemble_method
Voting
ConfidenceWeightedVoting
RawPropensityWeightedVoting
AdjustedPropensityWeightedVoting
HighestConfidence
AverageRawPropensity
AverageAdjustedPropensity
set_ensemble_method
Voting
ConfidenceWeightedVoting
HighestConfidence
flag_voting_tie_selection
Random
HighestConfidence
RawPropensity
AdjustedPropensity
set_voting_tie_selection
Random
HighestConfidence
calculate_standard_error
boolean
Data type
Property description
fields
replace_mode
Always
Conditional
Blank
Null
BlankAndNull
condition
string
replace_with
string
98
Using the default_include property. Note that setting the value of the default_include property does
not automatically include or exclude all fields; it simply determines the default for the current selection.
This is functionally equivalent to clicking the Include fields by default button in the Filter node dialog
box.
Table 63. filter node properties.
filter node properties
Data type
Property description
default_include
boolean
include
boolean
new_name
string
Data type
Property description
fields
offset
number
span
number
unavailable
Discard
Leave
Fill
fill_with
String
Number
99
Data type
Property description
new_name
string
create_validation
boolean
training_size
integer
testing_size
integer
validation_size
integer
training_label
string
testing_label
string
validation_label
string
value_mode
System
SystemAndLabel
Label
set_random_seed
boolean
random_seed
integer
enable_sql_generation
boolean
unique_field
100
Data type
Property description
mode
Single
Multiple
replace_field
boolean
field
string
new_name
string
fields
name_extension
string
add_as
Suffix
Prefix
reclassify
string
use_default
boolean
default
string
pick_list
Data type
Property description
mode
Custom
Auto
sort_by
Name
Type
Storage
ascending
boolean
start_fields
end_fields
101
Data type
Property description
fields_from
[category category
category]
all
include_field_name
boolean
value_mode
OtherFields
Flags
value_fields
Data type
Property description
recency
field
frequency
field
monetary
field
recency_bins
integer
recency_weight
number
frequency_bins
integer
frequency_weight
number
monetary_bins
integer
monetary_weight
number
tied_values_method
Next
Current
recalculate_bins
Always
IfNecessary
102
Data type
Property description
add_outliers
boolean
binned_field
Recency
Frequency
Monetary
recency_thresholds
value value
frequency_thresholds
value value
monetary_thresholds
value value
Data type
Property description
fields_from
[category category
category]
all
true_value
string
false_value
string
use_extension
boolean
extension
string
add_as
Suffix
Prefix
aggregate
boolean
keys
Key fields.
103
The properties for this node are described under statisticstransform Node Properties on page 227.
Data type
interval_type
None
Periods
CyclicPeriods
Years
Quarters
Months
DaysPerWeek
DaysNonPeriodic
HoursPerDay
HoursNonPeriodic
MinutesPerDay
MinutesNonPeriodic
SecondsPerDay
SecondsNonPeriodic
mode
Label
Create
field
field
period_start
integer
cycle_start
integer
year_start
integer
quarter_start
integer
104
Property description
Data type
Property description
month_start
January
February
March
April
May
June
July
August
September
October
November
December
day_start
integer
hour_start
integer
minute_start
integer
second_start
integer
periods_per_cycle
integer
fiscal_year_begins
January
February
March
April
May
June
July
August
September
October
November
December
week_begins_on
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday
day_begins_hour
integer
day_begins_minute
integer
day_begins_second
integer
105
Data type
Property description
days_per_week
integer
hours_per_day
integer
interval_increment
1
2
3
4
5
6
10
15
20
30
field_name_extension
string
field_name_extension_as_prefix
boolean
date_format
"DDMMYY"
"MMDDYY"
"YYMMDD"
"YYYYMMDD"
"YYYYDDD"
DAY
MONTH
"DD-MM-YY"
"DD-MM-YYYY"
"MM-DD-YY"
"MM-DD-YYYY"
"DD-MON-YY"
"DD-MON-YYYY"
"YYYY-MM-DD"
"DD.MM.YY"
"DD.MM.YYYY"
"MM.DD.YY"
"MM.DD.YYYY"
"DD.MON.YY"
"DD.MON.YYYY"
"DD/MM/YY"
"DD/MM/YYYY"
"MM/DD/YY"
"MM/DD/YYYY"
"DD/MON/YY"
"DD/MON/YYYY"
MON YYYY
q Q YYYY
ww WK YYYY
106
Data type
Property description
time_format
"HHMMSS"
"HHMM"
"MMSS"
"HH:MM:SS"
"HH:MM"
"MM:SS"
"(H)H:(M)M:(S)S"
"(H)H:(M)M"
"(M)M:(S)S"
"HH.MM.SS"
"HH.MM"
"MM.SS"
"(H)H.(M)M.(S)S"
"(H)H.(M)M"
"(M)M.(S)S"
aggregate
Mean
Sum
Mode
Min
Max
First
Last
TrueIfAnyTrue
pad
Blank
MeanOfRecentPoints
True
False
agg_mode
All
Specify
agg_range_default
Mean
Sum
Mode
Min
Max
agg_set_default
Mode
First
Last
agg_flag_default
TrueIfAnyTrue
Mode
First
Last
pad_range_default
Blank
MeanOfRecentPoints
pad_set_default
Blank
MostRecentValue
pad_flag_default
Blank
True
False
max_records_to_create
integer
estimation_from_beginning
boolean
estimation_to_end
boolean
107
Data type
estimation_start_offset
integer
estimation_num_holdouts
integer
create_future_records
boolean
num_future_records
integer
create_future_field
boolean
future_field_name
string
Property description
Data type
Property description
transposed_names
Prefix
Read
prefix
string
num_new_fields
integer
read_from_field
field
max_num_fields
integer
transpose_type
Numeric
String
Custom
transpose_fields
id_field_name
field
Note that in some cases you may need to fully instantiate the Type node in order for other nodes to work
correctly, such as the fields from property of the Set to Flag node. You can simply connect a Table node
and execute it to instantiate the fields.
108
Data type
Property description
direction
Input
Target
Both
None
Partition
Split
Frequency
RecordID
type
Range
Flag
Set
Typeless
Discrete
OrderedSet
Default
storage
Unknown
String
Integer
Real
Time
Date
Timestamp
check
None
Nullify
Coerce
Discard
Warn
Abort
values
[value value]
value_mode
Read
Pass
Read+
Current
Specify
extend_values
boolean
enable_missing
boolean
missing_values
109
Data type
Property description
range_missing
boolean
missing_lower
string
missing_upper
string
null_missing
boolean
whitespace_missing
boolean
description
string
value_labels
[{Value LabelString} {
Value LabelString} ...]
display_places
integer
export_places
integer
decimal_separator
DEFAULT
PERIOD
COMMA
date_format
"DDMMYY"
"MMDDYY"
"YYMMDD"
"YYYYMMDD"
"YYYYDDD"
DAY
MONTH
"DD-MM-YY"
"DD-MM-YYYY"
"MM-DD-YY"
"MM-DD-YYYY"
"DD-MON-YY"
"DD-MON-YYYY"
"YYYY-MM-DD"
"DD.MM.YY"
"DD.MM.YYYY"
"MM.DD.YY"
"MM.DD.YYYY"
"DD.MON.YY"
"DD.MON.YYYY"
"DD/MM/YY"
"DD/MM/YYYY"
"MM/DD/YY"
"MM/DD/YYYY"
"DD/MON/YY"
"DD/MON/YYYY"
MON YYYY
q Q YYYY
ww WK YYYY
110
Data type
Property description
time_format
"HHMMSS"
"HHMM"
"MMSS"
"HH:MM:SS"
"HH:MM"
"MM:SS"
"(H)H:(M)M:(S)S"
"(H)H:(M)M"
"(M)M:(S)S"
"HH.MM.SS"
"HH.MM"
"MM.SS"
"(H)H.(M)M.(S)S"
"(H)H.(M)M"
"(M)M.(S)S"
number_format
DEFAULT
STANDARD
SCIENTIFIC
CURRENCY
standard_places
integer
scientific_places
integer
currency_places
integer
grouping_symbol
DEFAULT
NONE
LOCALE
PERIOD
COMMA
SPACE
column_width
integer
justify
AUTO
CENTER
LEFT
RIGHT
111
112
Data type
Property description
title
string
caption
string
output_mode
Screen
File
output_format
BMP
JPEG
PNG
HTML
output (.cou)
full_filename
string
use_graph_size
boolean
graph_width
number
graph_height
number
Notes
Turning off optional fields. Optional fields, such as an overlay field for plots, can be turned off by
setting the property value to " " (empty string).
Specifying colors. The colors for titles, captions, backgrounds, and labels can be specified by using the
hexadecimal strings starting with the hash (#) symbol.
The first two digits specify the red content; the middle two digits specify the green content; and the last
two digits specify the blue content. Each digit can take a value in the range 09 or AF. Together, these
values can specify a red-green-blue, or RGB, color.
Note: When specifying colors in RGB, you can use the Field Chooser in the user interface to determine the
correct color code. Simply hover over the color to activate a ToolTip with the desired information.
113
Data type
Property description
over_field
field
over_label_auto
boolean
over_label
string
collect_field
field
collect_label_auto
boolean
collect_label
string
three_D
boolean
by_field
field
by_label_auto
boolean
by_label
string
operation
Sum
Mean
Min
Max
SDev
color_field
string
panel_field
string
animation_field
string
range_mode
Automatic
UserDefined
range_min
number
range_max
number
bins
ByNumber
ByWidth
num_bins
number
bin_width
number
use_grid
boolean
graph_background
color
page_background
color
Data type
plot
SelectedFields
Flags
114
Property description
Data type
x_field
field
color_field
field
normalize
boolean
sort_mode
ByOccurence
Alphabetic
use_proportional_scale
boolean
Property description
Overlay field.
Data type
chart_type
Gains
Response
Lift
Profit
ROI
ROC
inc_baseline
boolean
field_detection_method
Metadata
Name
use_fixed_cost
boolean
cost_value
number
cost_field
string
use_fixed_revenue
boolean
revenue_value
number
revenue_field
string
use_fixed_weight
boolean
weight_value
number
weight_field
field
n_tile
Quartiles
Quintles
Deciles
Vingtiles
Percentiles
1000-tiles
cumulative
flag
style
Line
Point
Property description
115
Data type
point_type
Rectangle
Dot
Triangle
Hexagon
Plus
Pentagon
Star
BowTie
HorizontalDash
VerticalDash
IronCross
Factory
House
Cathedral
OnionDome
ConcaveTriangle
OblateGlobe
CatEye
FourSidedPillow
RoundRectangle
Fan
export_data
boolean
data_filename
string
delimiter
string
new_line
boolean
inc_field_names
boolean
inc_best_line
boolean
inc_business_rule
boolean
business_rule_condition
string
plot_score_fields
boolean
score_fields
target_field
field
use_hit_condition
boolean
hit_condition
string
use_score_expression
boolean
score_expression
string
caption_auto
boolean
Property description
Note: If you set a property that is not valid for the graph type (for example, specifying y_field for a
histogram), that property is ignored.
116
Data type
Property description
graph_type
2DDotplot
3DArea
3DBar
3DDensity
3DHistogram
3DPie
3DScatterplot
Area
ArrowMap
Bar
BarCounts
BarCountsMap
BarMap
BinnedScatter
Boxplot
Bubble
ChoroplethMeans
ChoroplethMedians
ChoroplethSums
ChoroplethValues
ChoroplethCounts
CoordinateMap
CoordinateChoroplethMeans
CoordinateChoroplethMedians
CoordinateChoroplethSums
CoordinateChoroplethValues
CoordinateChoroplethCounts
Dotplot
Heatmap
HexBinScatter
Histogram
Line
LineChartMap
LineOverlayMap
Parallel
Path
Pie
PieCountMap
PieCounts
PieMap
PointOverlayMap
PolygonOverlayMap
Ribbon
Scatterplot
SPLOM
Surface
x_field
field
y_field
field
z_field
field
color_field
field
size_field
field
categories_field
field
Chapter 12. Graph Node Properties
117
Data type
values_field
field
rows_field
field
columns_field
field
fields
field
start_longitude_field
field
end_longitude_field
field
start_latitude_field
field
end_latitude_field
field
map_key_field
field
panelrow_field
string
panelcol_field
string
animation_field
string
longitude_field
field
latitude_field
field
map_color_field
field
map_file
field
reference_map_file
field
map_layer
field
reference_map_layer
field
map_attribute
field
Property description
reference_map_attribute field
Data type
field
field
color_field
field
panel_field
field
animation_field
field
range_mode
Automatic
UserDefined
range_min
number
range_max
number
118
Property description
Data type
Property description
bins
ByNumber
ByWidth
num_bins
number
bin_width
number
normalize
boolean
separate_bands
boolean
x_label_auto
boolean
x_label
string
y_label_auto
boolean
y_label
string
use_grid
boolean
graph_background
color
page_background
color
normal_curve
boolean
Data type
x_field
field
y_fields
panel_field
field
animation_field
field
normalize
boolean
use_overlay_expr
boolean
overlay_expression
string
records_limit
number
if_over_limit
PlotBins
PlotSample
PlotAll
x_label_auto
boolean
x_label
string
y_label_auto
boolean
y_label
string
use_grid
boolean
Property description
119
Data type
Property description
graph_background
color
page_background
color
Data type
Property description
x_field
field
y_field
field
three_D
boolean
z_field
field
color_field
field
size_field
field
shape_field
field
panel_field
field
animation_field
field
transp_field
field
overlay_type
None
Smoother
Function
overlay_expression
string
style
Point
Line
120
Overlay field.
Data type
point_type
Rectangle
Dot
Triangle
Hexagon
Plus
Pentagon
Star
BowTie
HorizontalDash
VerticalDash
IronCross
Factory
House
Cathedral
OnionDome
ConcaveTriangle
OblateGlobe
CatEye
FourSidedPillow
RoundRectangle
Fan
x_mode
Sort
Overlay
AsRead
x_range_mode
Automatic
UserDefined
x_range_min
number
x_range_max
number
y_range_mode
Automatic
UserDefined
y_range_min
number
y_range_max
number
z_range_mode
Automatic
UserDefined
z_range_min
number
z_range_max
number
jitter
boolean
records_limit
number
if_over_limit
PlotBins
PlotSample
PlotAll
x_label_auto
boolean
x_label
string
y_label_auto
boolean
y_label
string
z_label_auto
boolean
z_label
string
use_grid
boolean
graph_background
color
Property description
121
Data type
Property description
page_background
color
use_overlay_expr
boolean
Data type
plot_series
Series
Models
use_custom_x_field
boolean
x_field
field
y_fields
panel
boolean
normalize
boolean
line
boolean
points
boolean
point_type
Rectangle
Dot
Triangle
Hexagon
Plus
Pentagon
Star
BowTie
HorizontalDash
VerticalDash
IronCross
Factory
House
Cathedral
OnionDome
ConcaveTriangle
OblateGlobe
CatEye
FourSidedPillow
RoundRectangle
Fan
smoother
boolean
use_records_limit
boolean
records_limit
integer
symbol_size
number
122
Property description
Data type
panel_layout
Horizontal
Vertical
Property description
Data type
Property description
use_directed_web
boolean
fields
to_field
field
from_fields
true_flags_only
boolean
line_values
Absolute
OverallPct
PctLarger
PctSmaller
strong_links_heavier
boolean
num_links
ShowMaximum
ShowLinksAbove
ShowAll
max_num_links
number
links_above
number
discard_links_min
boolean
links_min_records
number
discard_links_max
boolean
links_max_records
number
weak_below
number
strong_above
number
link_size_continuous
boolean
web_display
Circular
Network
Directed
Grid
graph_background
color
symbol_size
number
123
124
Values
Property description
custom_fields
boolean
target
or
targets
field
inputs
partition
field
use_partitioned_data
boolean
use_split_data
boolean
splits
use_frequency
boolean
frequency_field
field
use_weight
boolean
weight_field
field
use_model_name
boolean
model_name
string
mode
Simple
Expert
or
[field1 ... fieldN]
Input or predictor fields used by the model.
125
Values
Property description
inputs
mode
Expert
Simple
anomaly_method
IndexLevel
PerRecords
NumRecords
index_level
number
percent_records
number
num_records
number
num_fields
integer
impute_missing_values
boolean
adjustment_coeff
number
peer_group_num_auto
boolean
min_num_peer_groups
integer
max_num_per_groups
integer
num_peer_groups
integer
noise_level
number
noise_ratio
number
126
Values
Property description
consequents
field
antecedents
min_supp
number
min_conf
number
max_antecedents
number
true_flags
boolean
optimize
Speed
Memory
use_transactional_data
boolean
contiguous
boolean
id_field
string
content_field
string
mode
Simple
Expert
evaluation
RuleConfidence
DifferenceToPrior
ConfidenceRatio
InformationDifference
NormalizedChiSquare
lower_bound
number
optimize
Speed
Memory
127
Values
Property description
target
field
ranking_measure
Accuracy
Area_under_curve
Profit
Lift
Num_variables
ranking_dataset
Training
Test
number_of_models
integer
calculate_variable_importance
boolean
enable_accuracy_limit
boolean
accuracy_limit
integer
boolean
area_under_curve_limit
number
enable_profit_limit
boolean
profit_limit
number
enable_lift_limit
boolean
lift_limit
number
enable_number_of_variables_limit
boolean
number_of_variables_limit
number
use_fixed_cost
boolean
fixed_cost
number
variable_cost
field
use_fixed_revenue
boolean
fixed_revenue
number
variable_revenue
field
use_fixed_weight
boolean
fixed_weight
number
variable_weight
field
lift_percentile
number
enable_model_build_time_limit
boolean
model_build_time_limit
number
enable_stop_after_time_limit
boolean
stop_after_time_limit
number
128
Values
Property description
enable_stop_after_valid_model_produced
boolean
use_costs
boolean
<algorithm>
boolean
<algorithm>.<property>
string
Values
Property description
evaluation
field
129
Values
ranking_measure
Silhouette
Num_clusters
Size_smallest_cluster
Size_largest_cluster
Smallest_to_largest
Importance
ranking_dataset
Training
Test
summary_limit
integer
enable_silhouette_limit
boolean
silhouette_limit
integer
enable_number_less_limit
boolean
number_less_limit
number
enable_number_greater_limit
boolean
number_greater_limit
number
enable_smallest_cluster_limit
boolean
smallest_cluster_units
Percentage
Counts
Property description
smallest_cluster_limit_percentage number
smallest_cluster_limit_count
integer
enable_largest_cluster_limit
boolean
largest_cluster_units
Percentage
Counts
largest_cluster_limit_percentage
number
largest_cluster_limit_count
integer
enable_smallest_largest_limit
boolean
smallest_largest_limit
number
enable_importance_limit
boolean
importance_limit_condition
Greater_than
Less_than
importance_limit_greater_than
number
importance_limit_less_than
number
<algorithm>
boolean
<algorithm>.<property>
string
130
Values
Property description
custom_fields
boolean
target
field
inputs
partition
field
use_frequency
boolean
frequency_field
field
use_weight
boolean
weight_field
field
use_partitioned_data
boolean
ranking_measure
Correlation
NumberOfFields
ranking_dataset
Test
Training
number_of_models
integer
calculate_variable_importance
boolean
enable_correlation_limit
boolean
correlation_limit
integer
enable_number_of_fields_limit
boolean
number_of_fields_limit
integer
enable_relative_error_limit
boolean
relative_error_limit
integer
enable_model_build_time_limit
boolean
model_build_time_limit
integer
enable_stop_after_time_limit
boolean
stop_after_time_limit
integer
stop_if_valid_model
boolean
131
Values
Property description
<algorithm>
boolean
<algorithm>.<property>
string
Values
Property description
inputs
continue_training_existing_model
boolean
structure_type
TAN
MarkovBlanket
use_feature_selection
boolean
parameter_learning_method
Likelihood
Bayes
mode
Expert
Simple
missing_values
boolean
all_probabilities
boolean
independence
Likelihood
Pearson
significance_level
number
maximal_conditioning_set
number
inputs_always_selected
132
Values
Property description
maximum_number_inputs
number
calculate_variable_importance
boolean
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
adjusted_propensity_partition
Test
Validation
Values
Property description
build_syntax
string
score_syntax
string
convert_flags
StringsAndDoubles
LogicalValues
convert_datetime
boolean
convert_datetime_class
POSIXct
POSIXlt
convert_missing
boolean
output_html
boolean
output_text
boolean
133
Values
Property description
target
field
output_type
DecisionTree
RuleSet
group_symbolics
boolean
use_boost
boolean
boost_num_trials
number
use_xval
boolean
xval_num_folds
number
mode
Simple
Expert
favor
Accuracy
Generality
expected_noise
number
min_child_records
number
pruning_severity
number
use_costs
boolean
costs
structured
use_winnowing
boolean
use_global_pruning
boolean
calculate_variable_importance
boolean
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
adjusted_propensity_partition
Test
Validation
On (True) by default.
134
Values
Property description
Values
Property description
id_field
field
contiguous
boolean
use_transactional_data
boolean
content_field
field
min_supp
number(percent)
min_conf
number(percent)
max_size
number
mode
Simple
Expert
exclude_multiple
boolean
use_pruning
boolean
pruning_value
number
vary_support
boolean
estimated_transactions
integer
rules_without_antecedents
boolean
Values
Property description
target
field
continue_training_existing_model
boolean
objective
Standard
Boosting
Bagging
psm
model_output_type
Single
InteractiveBuilder
use_tree_directives
boolean
135
Values
Property description
tree_directives
string
use_max_depth
Default
Custom
max_depth
integer
prune_tree
boolean
use_std_err
boolean
std_err_multiplier
number
Maximum difference.
max_surrogates
number
Maximum surrogates.
use_percentage
boolean
min_parent_records_pc
number
min_child_records_pc
number
min_parent_records_abs
number
min_child_records_abs
number
use_costs
boolean
costs
structured
priors
Data
Equal
Custom
custom_priors
structured
adjust_priors
boolean
trails
number
set_ensemble_method
Voting
HighestProbability
HighestMeanProbability
range_ensemble_method
Mean
Median
large_boost
boolean
min_impurity
number
impurity_measure
Gini
Twoing
Ordered
train_pct
number
set_random_seed
boolean
seed
number
calculate_variable_importance
boolean
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
136
Structured property.
Structured property.
Values
adjusted_propensity_partition
Test
Validation
Property description
Values
Property description
target
field
continue_training_existing_model
boolean
objective
Standard
Boosting
Bagging
psm
model_output_type
Single
InteractiveBuilder
use_tree_directives
boolean
tree_directives
string
method
Chaid
ExhaustiveChaid
use_max_depth
Default
Custom
max_depth
integer
use_percentage
boolean
min_parent_records_pc
number
min_child_records_pc
number
min_parent_records_abs
number
min_child_records_abs
number
use_costs
boolean
costs
structured
Structured property.
trails
number
set_ensemble_method
Voting
HighestProbability
HighestMeanProbability
137
Values
Property description
range_ensemble_method
Mean
Median
large_boost
boolean
split_alpha
number
merge_alpha
number
bonferroni_adjustment
boolean
split_merged_categories
boolean
chi_square
Pearson
LR
epsilon
number
max_iterations
number
set_random_seed
integer
seed
number
calculate_variable_importance
boolean
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
adjusted_propensity_partition
Test
Validation
maximum_number_of_models
integer
Values
Property description
survival_time
field
target
field
method
Enter
Stepwise
BackwardsStepwise
groups
field
model_type
MainEffects
Custom
custom_terms
["BP*Sex" "BP*Age"]
138
Values
mode
Expert
Simple
max_iterations
number
p_converge
1.0E-4
1.0E-5
1.0E-6
1.0E-7
1.0E-8
0
p_converge
1.0E-4
1.0E-5
1.0E-6
1.0E-7
1.0E-8
0
l_converge
1.0E-1
1.0E-2
1.0E-3
1.0E-4
1.0E-5
0
removal_criterion
LR
Wald
Conditional
probability_entry
number
probability_removal
number
output_display
EachStep
LastStep
ci_enable
boolean
ci_value
90
95
99
correlation
boolean
display_baseline
boolean
survival
boolean
hazard
boolean
log_minus_log
boolean
one_minus_survival
boolean
separate_line
field
value
number or string
Property description
139
Values
Property description
target
field
model_output_type
Model
InteractiveBuilder
search_direction
Up
Down
target_value
string
max_rules
integer
min_group_size
integer
min_group_size_pct
number
confidence_level
number
max_segments_per_rule
integer
mode
Simple
Expert
bin_method
EqualWidth
EqualCount
bin_count
number
max_models_per_cycle
integer
max_rules_per_cycle
integer
segment_growth
number
include_missing
boolean
final_results_only
boolean
reuse_fields
boolean
max_alternatives
integer
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
140
Values
adjusted_propensity_partition
Test
Validation
Property description
Values
Property description
target
field
method
Enter
Stepwise
mode
Simple
Expert
prior_probabilities
AllEqual
ComputeFromSizes
covariance_matrix
WithinGroups
SeparateGroups
means
boolean
univariate_anovas
boolean
box_m
boolean
within_group_covariance
boolean
within_groups_correlation
boolean
separate_groups_covariance
boolean
total_covariance
boolean
fishers
boolean
unstandardized
boolean
casewise_results
boolean
limit_to_first
number
summary_table
boolean
leave_one_classification
boolean
combined_groups
boolean
separate_groups_covariance
boolean
territorial_map
boolean
141
Values
Property description
combined_groups
boolean
separate_groups
boolean
summary_of_steps
boolean
F_pairwise
boolean
stepwise_method
WilksLambda
UnexplainedVariance
MahalanobisDistance
SmallestF
RaosV
V_to_enter
number
criteria
UseValue
UseProbability
F_value_entry
number
F_value_removal
number
probability_entry
number
probability_removal
number
calculate_variable_importance
boolean
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
adjusted_propensity_partition
Test
Validation
Values
Property description
inputs
method
PC
ULS
GLS
ML
PAF
Alpha
Image
142
Values
mode
Simple
Expert
max_iterations
number
complete_records
boolean
matrix
Correlation
Covariance
extract_factors
ByEigenvalues
ByFactors
min_eigenvalue
number
max_factor
number
rotation
None
Varimax
DirectOblimin
Equamax
Quartimax
Promax
delta
number
Property description
number
kappa
sort_values
boolean
hide_values
boolean
hide_below
number
Values
Property description
target
field
143
Values
Property description
screen_single_category
boolean
max_single_category
number
screen_missing_values
boolean
max_missing_values
number
screen_num_categories
boolean
max_num_categories
number
screen_std_dev
boolean
min_std_dev
number
screen_coeff_of_var
boolean
min_coeff_of_var
number
criteria
Pearson
Likelihood
CramersV
Lambda
unimportant_below
number
important_above
number
unimportant_label
string
marginal_label
string
important_label
string
selection_mode
ImportanceLevel
ImportanceValue
TopN
select_important
boolean
select_marginal
boolean
select_unimportant
boolean
144
Values
Property description
importance_value
number
top_n
integer
Values
Property description
target
field
use_weight
boolean
weight_field
field
target_represents_trials
boolean
trials_type
Variable
FixedValue
trials_field
field
trials_number
number
model_type
MainEffects
MainAndAllTwoWayEffects
offset_type
Variable
FixedValue
offset_field
field
offset_value
number
base_category
Last
First
include_intercept
boolean
mode
Simple
Expert
145
Values
Property description
distribution
BINOMIAL
GAMMA
IGAUSS
NEGBIN
NORMAL
POISSON
TWEEDIE
MULTINOMIAL
negbin_para_type
Specify
Estimate
negbin_parameter
number
tweedie_parameter
number
link_function
IDENTITY
CLOGLOG
LOG
LOGC
LOGIT
NEGBIN
NLOGLOG
ODDSPOWER
PROBIT
POWER
CUMCAUCHIT
CUMCLOGLOG
CUMLOGIT
CUMNLOGLOG
CUMPROBIT
power
number
method
Hybrid
Fisher
NewtonRaphson
max_fisher_iterations
number
scale_method
MaxLikelihoodEstimate
Deviance
PearsonChiSquare
FixedValue
scale_value
number
covariance_matrix
ModelEstimator
RobustEstimator
max_iterations
number
max_step_halving
number
check_separation
boolean
start_iteration
number
estimates_change
boolean
estimates_change_min
number
146
Values
Property description
estimates_change_type
Absolute
Relative
loglikelihood_change
boolean
loglikelihood_change_min
number
loglikelihood_change_type
Absolute
Relative
hessian_convergence
boolean
hessian_convergence_min
number
hessian_convergence_type
Absolute
Relative
case_summary
boolean
contrast_matrices
boolean
descriptive_statistics
boolean
estimable_functions
boolean
model_info
boolean
iteration_history
boolean
goodness_of_fit
boolean
print_interval
number
model_summary
boolean
lagrange_multiplier
boolean
parameter_estimates
boolean
include_exponential
boolean
covariance_estimates
boolean
correlation_estimates
boolean
analysis_type
TypeI
TypeIII
TypeIAndTypeIII
statistics
Wald
LR
citype
Wald
Profile
tolerancelevel
number
confidence_interval
number
loglikelihood_function
Full
Kernel
singularity_tolerance
1E-007
1E-008
1E-009
1E-010
1E-011
1E-012
value_order
Ascending
Descending
DataOrder
147
Values
calculate_variable_importance
boolean
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
adjusted_propensity_partition
Test
Validation
Property description
Values
Property description
residual_subject_spec
structured
repeated_measures
structured
residual_group_spec
residual_covariance_type
Diagonal
AR1
ARMA11
COMPOUND_SYMMETRY
IDENTITY
TOEPLITZ
UNSTRUCTURED
VARIANCE_COMPONENTS
custom_target
boolean
target_field
field
use_trials
boolean
use_field_or_value
Field
Value
trials_field
field
trials_value
integer
use_custom_target_reference
boolean
148
Values
Property description
target_reference_value
string
dist_link_combination
Nominal
Logit
GammaLog
BinomialLogit
PoissonLog
BinomialProbit
NegbinLog
BinomialLogC
Custom
target_distribution
Normal
Binomial
Multinomial
Gamma
Inverse
NegativeBinomial
Poisson
link_function_type
IDENTITY
LOGC
LOG
CLOGLOG
LOGIT
NLOGLOG
PROBIT
POWER
CAUCHIT
link_function_param
number
use_predefined_inputs
boolean
fixed_effects_list
structured
use_intercept
boolean
random_effects_list
structured
regression_weight_field
field
use_offset
None
offset_value
offset_field
offset_value
number
offset_field
field
149
Values
Property description
target_category_order
Ascending
Descending
Data
inputs_category_order
Ascending
Descending
Data
max_iterations
integer
confidence_level
integer
degrees_of_freedom_method
Fixed
Varied
test_fixed_effects_coeffecients
Model
Robust
use_p_converge
boolean
p_converge
number
p_converge_type
Absolute
Relative
use_l_converge
boolean
l_converge
number
l_converge_type
Absolute
Relative
use_h_converge
boolean
h_converge
number
h_converge_type
Absolute
Relative
max_fisher_steps
integer
singularity_tolerance
number
use_model_name
boolean
model_name
string
confidence
onProbability
onIncrease
score_category_probabilities
boolean
max_categories
integer
If score_category_probabilities is true,
specifies maximum number of categories to
save.
150
Values
Property description
score_propensity
boolean
emeans
structure
covariance_list
structure
mean_scale
Original
Transformed
comparison_adjustment_method
LSD
SEQBONFERRONI
SEQSIDAK
Values
Property description
inputs
num_clusters
number
gen_distance
boolean
cluster_label
String
Number
label_prefix
string
mode
Simple
Expert
stop_on
Default
Custom
max_iterations
number
tolerance
number
encoding_value
number
151
Values
Property description
optimize
Speed
Memory
Values
analysis
PredictTarget
IdentifyNeighbors
objective
Balance
Speed
Accuracy
Custom
normalize_ranges
boolean
use_case_labels
boolean
case_labels_field
field
identify_focal_cases
boolean
focal_cases_field
field
automatic_k_selection
boolean
fixed_k
integer
minimum_k
integer
maximum_k
integer
distance_computation
Euclidean
CityBlock
weight_by_importance
boolean
range_predictions
Mean
Median
perform_feature_selection
boolean
forced_entry_inputs
stop_on_error_ratio
boolean
number_to_select
integer
minimum_change
number
validation_fold_assign_by_field
boolean
number_of_folds
integer
set_random_seed
boolean
152
Property description
Enabled only if
validation_fold_assign_by_field is False
Values
random_seed
number
folds_field
field
all_probabilities
boolean
save_distances
boolean
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
adjusted_propensity_partition
Test
Validation
Property description
Enabled only if
validation_fold_assign_by_field is True
Values
Property description
inputs
continue
boolean
show_feedback
boolean
stop_on
Default
Time
time
number
optimize
Speed
Memory
cluster_label
boolean
mode
Simple
Expert
width
number
length
number
decay_style
Linear
Exponential
phase1_neighborhood
number
phase1_eta
number
phase1_cycles
number
phase2_neighborhood
number
phase2_eta
number
153
Values
phase2_cycles
number
Property description
Values
Property description
target
field
inputs
continue_training_existing_model
boolean
objective
Standard
Bagging
Boosting
psm
use_auto_data_preparation
boolean
confidence_level
number
model_selection
ForwardStepwise
BestSubsets
None
criteria_forward_stepwise
AICC
Fstatistics
AdjustedRSquare
ASE
probability_entry
number
probability_removal
number
use_max_effects
boolean
max_effects
number
use_max_steps
boolean
max_steps
number
criteria_best_subsets
AICC
AdjustedRSquare
ASE
combining_rule_continuous
Mean
Median
component_models_n
number
use_random_seed
boolean
random_seed
number
use_custom_model_name
boolean
custom_model_name
string
154
Values
use_custom_name
boolean
custom_name
string
tooltip
string
keywords
string
annotation
string
Property description
Values
Property description
target
field
logistic_procedure
Binomial
Multinomial
include_constant
boolean
mode
Simple
Expert
method
Enter
Stepwise
Forwards
Backwards
BackwardsStepwise
binomial_method
Enter
Forwards
Backwards
model_type
MainEffects
FullFactorial
Custom
custom_terms
[{BP Sex}{BP}{Age}]
multinomial_base_category
string
binomial_categorical_input
string
155
Values
Property description
binomial_input_contrast
Indicator
Simple
Difference
Helmert
Repeated
Polynomial
Deviation
binomial_input_category
First
Last
scale
None
UserDefined
Pearson
Deviance
scale_value
number
all_probabilities
boolean
tolerance
1.0E-5
1.0E-6
1.0E-7
1.0E-8
1.0E-9
1.0E-10
min_terms
number
use_max_terms
boolean
max_terms
number
entry_criterion
Score
LR
removal_criterion
LR
Wald
probability_entry
number
probability_removal
number
binomial_probability_entry
number
binomial_probability_removal
number
requirements
HierarchyDiscrete HierarchyAll
Containment
None
max_iterations
number
max_steps
number
p_converge
1.0E-4
1.0E-5
1.0E-6
1.0E-7
1.0E-8
0
156
Values
l_converge
1.0E-1
1.0E-2
1.0E-3
1.0E-4
1.0E-5
0
delta
number
iteration_history
boolean
history_steps
number
summary
boolean
likelihood_ratio
boolean
asymptotic_correlation
boolean
goodness_fit
boolean
parameters
boolean
confidence_interval
number
asymptotic_covariance
boolean
classification_table
boolean
stepwise_summary
boolean
info_criteria
boolean
monotonicity_measures
boolean
binomial_output_display
at_each_step
at_last_step
binomial_goodness_of_fit
boolean
binomial_parameters
boolean
binomial_iteration_history
boolean
binomial_classification_plots
boolean
binomial_ci_enable
boolean
binomial_ci
number
binomial_residual
outliers
all
binomial_residual_enable
boolean
binomial_outlier_threshold
number
binomial_classification_cutoff
number
binomial_removal_criterion
LR
Wald
Conditional
calculate_variable_importance
boolean
calculate_raw_propensities
boolean
Property description
157
Values
Property description
targets
method
Quick
Dynamic
Multiple
Prune
ExhaustivePrune
RBFN
prevent_overtrain
boolean
train_pct
number
set_random_seed
boolean
random_seed
number
mode
Simple
Expert
stop_on
Default
Accuracy
Cycles
Time
Stopping mode.
accuracy
number
Stopping accuracy.
cycles
number
Cycles to train.
time
number
continue
boolean
show_feedback
boolean
binary_encode
boolean
use_last_model
boolean
gen_logfile
boolean
logfile_name
string
alpha
number
initial_eta
number
high_eta
number
low_eta
number
eta_decay_cycles
number
hid_layers
One
Two
Three
hl_units_one
number
158
Values
hl_units_two
number
hl_units_three
number
persistence
number
m_topologies
string
m_non_pyramids
boolean
m_persistence
number
p_hid_layers
One
Two
Three
p_hl_units_one
number
p_hl_units_two
number
p_hl_units_three
number
p_persistence
number
p_hid_rate
number
p_hid_pers
number
p_inp_rate
number
p_inp_pers
number
p_overall_pers
number
r_persistence
number
r_num_clusters
number
r_eta_auto
boolean
r_alpha
number
Property description
r_eta
number
optimize
Speed
Memory
calculate_variable_importance
boolean
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
adjusted_propensity_partition
Test
Validation
159
Values
Property description
targets
inputs
splits
use_partition
boolean
continue
boolean
objective
Standard
Bagging
Boosting
psm
method
MultilayerPerceptron
RadialBasisFunction
use_custom_layers
boolean
first_layer_units
number
second_layer_units
number
use_max_time
boolean
max_time
number
use_max_cycles
boolean
max_cycles
number
use_min_accuracy
boolean
min_accuracy
number
combining_rule_categorical
Voting
HighestProbability
HighestMeanProbability
combining_rule_continuous
Mean
Median
component_models_n
number
overfit_prevention_pct
number
use_random_seed
boolean
random_seed
number
missing_values
listwiseDeletion
missingValueImputation
use_custom_model_name
boolean
custom_model_name
string
confidence
onProbability
onIncrease
score_category_probabilities
boolean
max_categories
number
score_propensity
boolean
use_custom_name
boolean
160
Values
custom_name
string
tooltip
string
keywords
string
annotation
string
Property description
Values
Property description
target
field
continue_training_existing_model
boolean
objective
Standard
Boosting
Bagging
psm
model_output_type
Single
InteractiveBuilder
use_tree_directives
boolean
tree_directives
string
use_max_depth
Default
Custom
max_depth
integer
prune_tree
boolean
use_std_err
boolean
std_err_multiplier
number
Maximum difference.
max_surrogates
number
Maximum surrogates.
use_percentage
boolean
min_parent_records_pc
number
min_child_records_pc
number
min_parent_records_abs
number
min_child_records_abs
number
use_costs
boolean
costs
structured
Structured property.
Chapter 13. Modeling Node Properties
161
Values
Property description
priors
Data
Equal
Custom
custom_priors
structured
adjust_priors
boolean
trails
number
set_ensemble_method
Voting
HighestProbability
HighestMeanProbability
range_ensemble_method
Mean
Median
large_boost
boolean
split_alpha
number
train_pct
number
set_random_seed
boolean
seed
number
calculate_variable_importance
boolean
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
adjusted_propensity_partition
Test
Validation
Structured property.
Note: The Regression node is due to be replaced by the Linear node in a future release. We recommend
using Linear models for linear regression from now on.
Table 111. regression node properties.
regression Node Properties
Values
Property description
target
field
method
Enter
Stepwise
Backwards
Forwards
include_constant
boolean
162
Values
Property description
use_weight
boolean
weight_field
field
mode
Simple
Expert
complete_records
boolean
tolerance
1.0E-1
1.0E-2
1.0E-3
1.0E-4
1.0E-5
1.0E-6
1.0E-7
1.0E-8
1.0E-9
1.0E-10
1.0E-11
1.0E-12
stepping_method
useP
useF
probability_entry
number
probability_removal
number
F_value_entry
number
F_value_removal
number
selection_criteria
boolean
confidence_interval
boolean
covariance_matrix
boolean
collinearity_diagnostics
boolean
regression_coefficients
boolean
exclude_fields
boolean
durbin_watson
boolean
model_fit
boolean
r_squared_change
boolean
p_correlations
boolean
descriptives
boolean
calculate_variable_importance
boolean
163
Values
Property description
id_field
field
time_field
field
use_time_field
boolean
content_fields
contiguous
boolean
min_supp
number
min_conf
number
max_size
number
max_predictions
number
mode
Simple
Expert
use_max_duration
boolean
max_duration
number
use_gaps
boolean
min_item_gap
number
max_item_gap
number
use_pruning
boolean
pruning_value
number
set_mem_sequences
boolean
mem_sequences
integer
Values
Property description
target
field
target_response
field
continue_training_existing_model
boolean
target_field_values
boolean
164
Values
Property description
target_field_values_specify
include_model_assessment
boolean
model_assessment_random_seed
number
model_assessment_sample_size
number
model_assessment_iterations
number
Number of iterations.
display_model_evaluation
boolean
max_predictions
number
randomization
number
scoring_random_seed
number
sort
Ascending
Descending
model_reliability
boolean
calculate_variable_importance
boolean
The properties for this node are described under statisticsmodel Node Properties on page 228.
Values
Property description
all_probabilities
boolean
stopping_criteria
1.0E-1
1.0E-2
1.0E-3 (default)
1.0E-4
1.0E-5
1.0E-6
regularization
number
precision
number
165
Values
Property description
kernel
RBF(default)
Polynomial
Sigmoid
Linear
rbf_gamma
number
gamma
number
bias
number
degree
number
calculate_variable_importance
boolean
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
adjusted_propensity_partition
Test
Validation
Values
Property description
targets
field
continue
boolean
method
ExpertModeler
Exsmooth
Arima
Reuse
expert_modeler_method
boolean
consider_seasonal
boolean
detect_outliers
boolean
expert_outlier_additive
boolean
expert_outlier_level_shift
boolean
expert_outlier_innovational
boolean
expert_outlier_level_shift
boolean
166
Values
Property description
expert_outlier_transient
boolean
expert_outlier_seasonal_additive
boolean
expert_outlier_local_trend
boolean
expert_outlier_additive_patch
boolean
exsmooth_model_type
Simple
HoltsLinearTrend
BrownsLinearTrend
DampedTrend
SimpleSeasonal
WintersAdditive
WintersMultiplicative
exsmooth_transformation_type
None
SquareRoot
NaturalLog
arima_p
integer
arima_d
integer
arima_q
integer
arima_sp
integer
arima_sd
integer
arima_sq
integer
arima_transformation_type
None
SquareRoot
NaturalLog
arima_include_constant
boolean
tf_arima_p. fieldname
integer
tf_arima_d. fieldname
integer
tf_arima_q. fieldname
integer
tf_arima_sp. fieldname
integer
tf_arima_sd. fieldname
integer
tf_arima_sq. fieldname
integer
tf_arima_delay. fieldname
integer
tf_arima_transformation_type. fieldname
None
SquareRoot
NaturalLog
arima_detect_outlier_mode
None
Automatic
arima_outlier_additive
boolean
arima_outlier_level_shift
boolean
arima_outlier_innovational
boolean
arima_outlier_transient
boolean
arima_outlier_seasonal_additive
boolean
arima_outlier_local_trend
boolean
arima_outlier_additive_patch
boolean
conf_limit_pct
real
Chapter 13. Modeling Node Properties
167
Values
max_lags
integer
events
fields
scoring_model_only
boolean
Property description
Values
Property description
inputs
standardize
boolean
exclude_outliers
boolean
percentage
number
cluster_num_auto
boolean
min_num_clusters
number
max_num_clusters
number
num_clusters
number
cluster_label
String
Number
label_prefix
string
distance_measure
Euclidean
Loglikelihood
clustering_criterion
AIC
BIC
168
Values
Property description
anomaly_score_method
FlagAndScore
FlagOnly
ScoreOnly
num_fields
integer
Fields to report.
discard_records
boolean
discard_anomalous_records
boolean
Values
max_predictions
number (integer)
ignore_unmatached
boolean
allow_repeats
boolean
check_basket
NoPredictions
Predictions
NoCheck
criterion
Confidence
Support
RuleSupport
Lift
Deployability
Property description
169
Values
Property description
flag_ensemble_method
Voting
ConfidenceWeightedVoting
RawPropensityWeightedVoting
HighestConfidence
AverageRawPropensity
flag_voting_tie_selection
Random
HighestConfidence
RawPropensity
set_ensemble_method
Voting
ConfidenceWeightedVoting
HighestConfidence
set_voting_tie_selection
Random
HighestConfidence
Values
calculate_standard_error
boolean
Property description
Values
all_probabilities
boolean
170
Property description
Values
raw_propensity
boolean
adjusted_propensity
boolean
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
Property description
Values
Property description
sql_generate
Never
NoMissingValues
calculate_conf
boolean
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
Values
Property description
sql_generate
Never
MissingValues
NoMissingValues
calculate_conf
boolean
display_rule_id
boolean
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
171
Values
sql_generate
Never
MissingValues
calculate_conf
boolean
display_rule_id
boolean
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
Property description
Values
future_time_as
Intervals
Fields
time_interval
number
num_future_times
integer
time_field
field
past_survival_time
field
all_probabilities
boolean
cumulative_hazard
boolean
Property description
Values
Property description
enable_sql_generation
boolean
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
172
Values
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
Property description
Values
Property description
selected_ranked_fields
selected_screened_fields
Values
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
Property description
173
Values
Property description
confidence
onProbability
onIncrease
score_category_probabilities
boolean
max_categories
integer
score_propensity
boolean
Values
all_probabilities
boolean
save_distances
boolean
Property description
174
Values
use_custom_name
boolean
custom_name
string
enable_sql_generation
boolean
Property description
Values
calculate_raw_propensities
boolean
calculate_conf
boolean
enable_sql_generation
boolean
Property description
Values
Property description
calculate_conf
boolean
enable_sql_generation
boolean
nn_score_method
Difference
SoftMax
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
175
Values
use_custom_name
boolean
custom_name
string
confidence
onProbability
onIncrease
score_category_probabilities
boolean
max_categories
number
score_propensity
boolean
Property description
Values
sql_generate
Never
MissingValues
NoMissingValues
calculate_conf
boolean
display_rule_id
boolean
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
Property description
176
Values
Property Description
score_syntax
string
convert_flags
StringsAndDoubles
LogicalValues
convert_datetime
boolean
convert_datetime_class
POSIXct
POSIXlt
convert_missing
boolean
Values
Property description
max_predictions
number
randomization
number
scoring_random_seed
number
sort
ascending
descending
model_reliability
boolean
Values
all_probabilities
boolean
Property description
177
Values
calculate_raw_propensities
boolean
calculate_adjusted_propensities
boolean
Property description
Values
calculate_conf
boolean
calculate_residuals
boolean
Property description
178
Values
Property Description
analysis_database_name
string
analysis_server_name
string
use_transactional_data
boolean
inputs
target
field
unique_field
field
Key field.
msas_parameters
structured
with_drillthrough
boolean
MS Decision Tree
There are no specific properties defined for nodes of type mstree. See the common Microsoft properties at
the start of this section.
MS Clustering
There are no specific properties defined for nodes of type mscluster. See the common Microsoft
properties at the start of this section.
MS Association Rules
The following specific properties are available for nodes of type msassoc:
Table 142. msassoc node properties.
msassoc Node Properties
Values
Property Description
id_field
field
trans_inputs
179
Values
Property Description
transactional_target
field
MS Naive Bayes
There are no specific properties defined for nodes of type msbayes. See the common Microsoft properties
at the start of this section.
MS Linear Regression
There are no specific properties defined for nodes of type msregression. See the common Microsoft
properties at the start of this section.
MS Neural Network
There are no specific properties defined for nodes of type msneuralnetwork. See the common Microsoft
properties at the start of this section.
MS Logistic Regression
There are no specific properties defined for nodes of type mslogistic. See the common Microsoft
properties at the start of this section.
MS Time Series
There are no specific properties defined for nodes of type mstimeseries. See the common Microsoft
properties at the start of this section.
MS Sequence Clustering
The following specific properties are available for nodes of type mssequencecluster:
Table 143. mssequencecluster node properties.
mssequencecluster Node Properties
Values
Property Description
id_field
field
input_fields
sequence_field
field
Sequence identifier.
target_field
field
Algorithm Parameters
Each Microsoft database model type has specific parameters that can be set using the msas_parameters
property.
These parameters are derived from SQL Server. To see the relevant parameters for each node:
1. Place a database source node on the canvas.
2. Open the database source node.
3. Select a valid source from the Data source drop-down list.
4. Select a valid table from the Table name list.
5. Click OK to close the database source node.
6. Attach the Microsoft database modeling node whose properties you want to list.
180
Values
Description
analysis_database_name
string
analysis_server_name
string
datasource
string
sql_generate
boolean
MS Linear Regression
Table 145. MS Linear Regression properties.
applymsregression Node Properties
Values
Description
analysis_database_name
string
analysis_server_name
string
MS Neural Network
Table 146. MS Neural Network properties.
applymsneuralnetwork Node
Properties
Values
Description
analysis_database_name
string
analysis_server_name
string
MS Logistic Regression
Table 147. MS Logistic Regression properties.
applymslogistic Node Properties
Values
Description
analysis_database_name
string
181
Values
Description
analysis_server_name
string
MS Time Series
Table 148. MS Time Series properties.
applymstimeseries Node Properties
Values
Description
analysis_database_name
string
analysis_server_name
string
start_from
new_prediction
historical_prediction
new_step
number
historical_step
number
end_step
number
MS Sequence Clustering
Table 149. MS Sequence Clustering properties.
applymssequencecluster Node
Properties
Values
Description
analysis_database_name
string
analysis_server_name
string
Values
target
field
inputs
List of fields
partition
field
datasource
182
Property Description
Values
Property Description
username
password
epassword
use_model_name
boolean
model_name
string
use_partitioned_data
boolean
unique_field
field
auto_data_prep
boolean
costs
structured
Structured property.
mode
Simple
Expert
use_prediction_probability
boolean
prediction_probability
string
use_prediction_set
boolean
Values
Property Description
singleton_threshold
number
0.01.0.*
pairwise_threshold
number
0.01.0.*
priors
Data
Equal
Custom
custom_priors
structured
Structured property.
Values
Property Description
model_type
SingleFeature
MultiFeature
NaiveBayes
use_execution_time_limit
boolean
execution_time_limit
integer
max_naive_bayes_predictors
integer
183
Values
Property Description
max_predictors
integer
priors
Data
Equal
Custom
custom_priors
structured
Structured property.
Values
Property Description
active_learning
Enable
Disable
kernel_function
Linear
Gaussian
System
normalization_method
zscore
minmax
none
kernel_cache_size
integer
convergence_tolerance
number
use_standard_deviation
boolean
standard_deviation
number
use_epsilon
boolean
epsilon
number
use_complexity_factor
boolean
complexity_factor
number
use_outlier_rate
boolean
outlier_rate
number
weights
Data
Equal
Custom
custom_weights
structured
Structured property.
184
Values
Property Description
normalization_method
zscore
minmax
none
missing_value_handling
ReplaceWithMean
UseCompleteRecords
use_row_weights
boolean
row_weights_field
field
save_row_diagnostics
boolean
row_diagnostics_table
string
coefficient_confidence
number
use_reference_category
boolean
reference_category
string
ridge_regression
Auto
Off
On
parameter_value
number
vif_for_ridge
boolean
Values
Property Description
use_costs
boolean
impurity_metric
Entropy
Gini
term_max_depth
integer
220.*
term_minpct_node
number
0.010.0.*
term_minpct_split
number
0.020.0.*
term_minrec_node
integer
term_minrec_split
integer
display_rule_ids
boolean
Values
Property Description
max_num_clusters
integer
185
Values
Property Description
max_buffer
integer
sensitivity
number
0.01.0.*
Values
Property Description
num_clusters
integer
normalization_method
zscore
minmax
none
distance_function
Euclidean
Cosine
iterations
integer
020.*
conv_tolerance
number
0.00.5.*
split_criterion
Variance
Size
Default is Variance.*
num_bins
integer
block_growth
integer
15.*
min_pct_attr_support
number
0.01.0.*
Values
normalization_method
minmax
none
use_num_features
boolean
num_features
integer
random_seed
number
num_iterations
integer
0500.*
conv_tolerance
number
0.00.5.*
display_all_features
boolean
186
Property Description
Oracle Apriori
The following properties are available for nodes of type oraapriori.
Table 159. oraapriori node properties.
oraapriori Node Properties
Values
Property Description
content_field
field
id_field
field
max_rule_length
integer
220.
min_confidence
number
0.01.0.
min_support
number
0.01.0.
use_transactional_data
boolean
Values
Property Description
custom_fields
boolean
selection_mode
ImportanceLevel
ImportanceValue
TopN
select_important
boolean
important_label
string
select_marginal
boolean
marginal_label
string
important_above
number
0.01.0.
select_unimportant
boolean
unimportant_label
string
unimportant_below
number
0.01.0.
importance_value
number
top_n
number
187
Values
use_costs
boolean
display_rule_ids
boolean
Property Description
Oracle O-Cluster
There are no specific properties defined for nodes of type applyoraocluster.
Oracle KMeans
There are no specific properties defined for nodes of type applyorakmeans.
Oracle NMF
The following property is available for nodes of type applyoranmf:
Table 162. applyoranmf node properties.
applyoranmf Node Properties
Values
display_all_features
boolean
Oracle Apriori
This model nugget cannot be applied in scripting.
Oracle MDL
This model nugget cannot be applied in scripting.
188
Property Description
Values
inputs
List of fields
Property Description
datasource
username
password
epassword
enable_power_options
boolean
power_options_max_memory
integer
power_options_cmdline
string
mining_data_custom_sql
string
logical_data_custom_sql
string
mining_settings_custom_sql
Values
target
field
perform_test_run
boolean
use_max_tree_depth
boolean
max_tree_depth
integer
use_maximum_purity
boolean
maximum_purity
number
use_minimum_internal_cases
boolean
minimum_internal_cases
integer
use_costs
boolean
costs
structured
Property Description
Structured property.
ISW Association
The following properties are available for nodes of type db2imassoc.
Table 165. db2imassoc node properties.
db2imassoc Node Properties
Values
use_transactional_data
boolean
id_field
field
content_field
field
Property Description
189
Values
Property Description
data_table_layout
basic
limited_length
max_rule_size
integer
min_rule_support
number
0100%
min_rule_confidence
number
0100%
use_item_constraints
boolean
item_constraints_type
Include
Exclude
use_taxonomy
boolean
taxonomy_table_name
string
taxonomy_child_column_name
string
taxonomy_parent_column_name
string
load_taxonomy_to_table
boolean
ISW Sequence
The following properties are available for nodes of type db2imsequence.
Table 166. db2imsequence node properties.
db2imsequence Node Properties
Values
id_field
field
group_field
field
content_field
field
max_rule_size
integer
min_rule_support
number
0100%
min_rule_confidence
number
0100%
use_item_constraints
boolean
item_constraints_type
Include
Exclude
use_taxonomy
boolean
taxonomy_table_name
string
taxonomy_child_column_name
string
taxonomy_parent_column_name
string
190
Property Description
Values
Property Description
load_taxonomy_to_table
boolean
ISW Regression
The following properties are available for nodes of type db2imreg.
Table 167. db2imreg node properties.
db2imreg Node Properties
Values
target
field
regression_method
transform
linear
polynomial
rbf
perform_test_run
field
limit_rsquared_value
boolean
max_rsquared_value
number
use_execution_time_limit
boolean
execution_time_limit_mins
integer
use_max_degree_polynomial
boolean
max_degree_polynomial
integer
use_intercept
boolean
Property Description
use_auto_feature_selection_method boolean
auto_feature_selection_method
normal
adjusted
use_min_significance_level
boolean
min_significance_level
number
use_min_significance_level
boolean
Values
Property Description
use_output_sample_size
boolean
output_sample_size
integer
Default is 2.
Minimum is 1.
use_input_sample_size
boolean
input_sample_size
integer
Default is 2.
Minimum is 1.
191
boolean
max_num_centers
integer
Default is 20.
Minimum is 1.
use_min_region_size
boolean
min_region_size
integer
Default is 15.
Minimum is 1.
use_max_data_passes
boolean
max_data_passes
integer
Default is 5.
Minimum is 2.
use_min_data_passes
boolean
min_data_passes
integer
Default is 5.
Minimum is 2.
ISW Clustering
The following properties are available for nodes of type db2imcluster.
Table 169. db2imcluster node properties.
db2imcluster Node Properties
Values
Property Description
cluster_method
demographic
kohonen
birch
kohonen_num_rows
integer
kohonen_num_columns
integer
kohonen_passes
integer
use_num_passes_limit
boolean
use_num_clusters_limit
boolean
max_num_clusters
integer
birch_dist_measure
log_likelihood
euclidean
Default is log_likelihood.
birch_num_cfleaves
integer
Default is 1000.
birch_num_refine_passes
integer
Default is 3; minimum is 1.
use_execution_time_limit
boolean
execution_time_limit_mins
integer
min_data_percentage
number
0100%
use_similarity_threshold
boolean
similarity_threshold
number
192
Values
perform_test_run
boolean
probability_threshold
number
Property Description
Default is 0.001.
Minimum value is 0; maximum value is 1.000
use_costs
boolean
costs
structured
Structured property.
Values
perform_test_run
boolean
use_costs
boolean
costs
structured
Property Description
Structured property.
Values
Property Description
time
field
targets
list of fields
forecasting_algorithm
arima
exponential_smoothing
seasonal_trend_decomposition
forecasting_end_time
auto
integer
date
time
use_records_all
boolean
use_records_start
use_records_end
interpolation_method
none
linear
exponential_splines
cubic_splines
193
Values
Property Description
custom_fields
boolean
inputs
target
field
record_id
field
use_upstream_connection
boolean
194
Values
Property Description
move_data_connection
boolean
connection
structured
table_name
string
use_model_name
boolean
model_name
string
include_input_fields
boolean
Values
Property Description
impurity_measure
Entropy
Gini
max_tree_depth
integer
min_improvement_splits
number
min_instances_split
integer
weights
structured
pruning_measure
Acc
wAcc
195
Values
Property Description
prune_tree_options
allTrainingData
partitionTrainingData
useOtherTable
perc_training_data
number
If prune_tree_options is set to
partitionTrainingData, specifies
percentage of data to use for training.
prune_seed
integer
pruning_table
string
compute_probabilities
boolean
Netezza K-Means
The following properties are available for nodes of type netezzakmeans.
Table 175. netezzakmeans node properties.
netezzakmeans Node Properties
Values
Property Description
distance_measure
Euclidean
Manhattan
Canberra
maximum
num_clusters
integer
max_iterations
integer
rand_seed
integer
Values
Property Description
base_index
integer
sample_size
integer
display_additional_information
boolean
196
Values
Property Description
type_of_prediction
best
neighbors
nn-neighbors
Values
Property Description
compute_probabilities
boolean
use_m_estimation
boolean
Netezza KNN
The following properties are available for nodes of type netezzaknn.
Table 178. netezzaknn node properties.
netezzaknn Node Properties
Values
Property Description
weights
structured
distance_measure
Euclidean
Manhattan
Canberra
Maximum
num_nearest_neighbors
integer
standardize_measurements
boolean
use_coresets
boolean
Values
Property Description
distance_measure
Euclidean
Manhattan
Canberra
Maximum
max_iterations
integer
max_tree_depth
integer
197
Values
Property Description
rand_seed
integer
min_instances_split
integer
level
integer
Netezza PCA
The following properties are available for nodes of type netezzapca.
Table 180. netezzapca node properties.
netezzapca Node Properties
Values
Property Description
center_data
boolean
perform_data_scaling
boolean
force_eigensolve
boolean
pc_number
integer
Values
Property Description
max_tree_depth
integer
split_evaluation_measure
Variance
min_improvement_splits
number
min_instances_split
integer
pruning_measure
mse
r2
pearson
spearman
198
Values
Property Description
prune_tree_options
allTrainingData
partitionTrainingData
useOtherTable
perc_training_data
number
If prune_tree_options is set to
PercTrainingData, specifies
percentage of data to use for training.
prune_seed
integer
pruning_table
string
compute_probabilities
boolean
Values
Property Description
use_svd
boolean
include_intercept
boolean
calculate_model_diagnostics
boolean
Values
Property Description
time_points
field
time_series_ids
field
model_table
field
description_table
field
199
Values
Property Description
seasonal_adjustment_table
field
algorithm_name
SpectralAnalysis or spectral
ExponentialSmoothing or esmoothing
ARIMA
SeasonalTrendDecomposition or std
trend_name
N
A
DA
M
DM
seasonality_type
N
A
M
interpolation_method
linear
cubicspline
exponentialspline
timerange_setting
SD
SP
earliest_time
Date
latest_time
Format: <yyyy>-<mm>-<dd>
arima_setting
SD
SP
p_symbol
d_symbol
less
eq
lesseq
q_symbol
sp_symbol
sd_symbol
sq_symbol
200
Values
Property Description
integer
integer
integer
sp
integer
sq
integer
sd
integer
advanced_setting
SD
SP
period
integer
units_period
ms
s
min
h
d
wk
q
y
forecast_setting
forecasthorizon
forecasttimes
forecast_horizon
string
If forecast_setting =
forecasthorizon, specifies end point
for forecasting.
Format: <yyyy>-<mm>-<dd>
{'date'},...,
If forecast_setting =
forecasttimes, specifies times to use
for making forecasts.
{'date'}]
Format: <yyyy>-<mm>-<dd>
include_history
boolean
include_interpolated_values
boolean
forecast_times
[{'date'},
201
Values
Property Description
dist_family
bernoulli
gaussian
poisson
negativebinomial
wald
gamma
dist_params
number
trials
integer
model_table
field
maxit
integer
eps
number
tol
number
link_func
identity
inverse
invnegative
invsquare
sqrt
power
oddspower
log
clog
loglog
cloglog
logit
probit
gaussit
cauchit
canbinom
cangeom
cannegbinom
202
Values
Property Description
link_params
number
interaction
[{[colnames1],[levels1]},{[colnames2],
[levels2]},...,{[colnamesN],[levelsN]},]
intercept
boolean
Values
Property Description
connection
string
table_name
string
Other model nugget properties are the same as those for the corresponding modeling node.
The script names of the model nuggets are as follows.
Table 186. Script names of Netezza model nuggets.
Model Nugget
Script Name
Decision Tree
applynetezzadectree
K-Means
applynetezzakmeans
Bayes Net
applynetezzabayes
Naive Bayes
applynetezzanaivebayes
KNN
applynetezzaknn
Divisive Clustering
applynetezzadivcluster
PCA
applynetezzapca
Regression Tree
applynetezzaregtree
Linear Regression
applynetezzalineregression
Time Series
applynetezzatimeseries
Generalized Linear
applynetezzaglm
203
204
Data type
Property description
output_mode
Screen
File
use_output_name
boolean
output_name
string
output_format
Text (.txt)
HTML (.html)
Output (.cou)
by_fields
full_filename
string
coincidence
boolean
performance
boolean
evaluation_binary
boolean
confidence
boolean
threshold
number
improve_accuracy
number
inc_user_measure
boolean
user_if
expr
user_then
expr
user_else
expr
user_compute
205
Data type
custom_fields
boolean
fields
overlay
field
display_graphs
boolean
basic_stats
boolean
advanced_stats
boolean
median_stats
boolean
calculate
Count
Breakdown
outlier_detection_method
std
iqr
outlier_detection_std_outlier
number
If outlier_detection_method is std,
specifies the number to use to
define outliers.
outlier_detection_std_extreme
number
If outlier_detection_method is std,
specifies the number to use to
define extreme values.
outlier_detection_iqr_outlier
number
If outlier_detection_method is iqr,
specifies the number to use to
define outliers.
outlier_detection_iqr_extreme
number
If outlier_detection_method is iqr,
specifies the number to use to
define extreme values.
use_output_name
boolean
output_name
string
output_mode
Screen
File
output_format
Formatted (.tab)
Delimited (.csv)
HTML (.html)
Output (.cou)
paginate_output
boolean
206
Property description
Data type
Property description
lines_per_page
number
full_filename
string
Data type
Property description
fields
Selected
Flags
Numerics
row
field
column
field
include_missing_values
boolean
cell_contents
CrossTabs
Function
function_field
string
function
Sum
Mean
Min
Max
SDev
sort_mode
Unsorted
Ascending
Descending
highlight_top
number
highlight_bottom
number
display
[Counts
Expected
Residuals
RowPct
ColumnPct
TotalPct]
include_totals
boolean
use_output_name
boolean
output_name
string
207
Data type
Property description
output_mode
Screen
File
output_format
Formatted (.tab)
Delimited (.csv)
HTML (.html)
Output (.cou)
paginate_output
boolean
lines_per_page
number
full_filename
string
Data type
Property description
means_mode
BetweenGroups
BetweenFields
test_fields
grouping_field
field
paired_fields
[{field1 field2}
{field3 field4}
...]
label_correlations
boolean
correlation_mode
Probability
Absolute
weak_label
string
medium_label
string
strong_label
string
weak_below_probability
number
208
Data type
Property description
strong_above_probability
number
weak_below_absolute
number
strong_above_absolute
number
unimportant_label
string
marginal_label
string
important_label
string
unimportant_below
number
important_above
number
use_output_name
boolean
output_name
string
Name to use.
output_mode
Screen
File
output_format
Formatted (.tab)
Delimited (.csv)
HTML (.html)
Output (.cou)
full_filename
string
output_view
Simple
Advanced
Data type
Property description
output_mode
Screen
File
output_format
HTML (.html)
Text (.txt)
Output (.cou)
209
Data type
Property description
use_output_name
boolean
output_name
string
text
string
full_filename
string
highlights
boolean
title
string
lines_per_page
number
Data type
syntax
string
convert_flags
StringsAndDoubles
LogicalValues
convert_datetime
boolean
convert_datetime_class
POSIXct
POSIXlt
convert_missing
boolean
output_name
Auto
Custom
custom_name
string
output_to
Screen
File
output_type
Graph
Text
full_filename
string
graph_file_type
HTML
COU
text_file_type
HTML
TXT
COU
210
Property description
Data type
Property description
globals
Structured property
clear_first
boolean
show_preview
boolean
Data type
target
field
iteration
field
presorted_by_iteration
boolean
max_iterations
number
tornado_fields
[field1...fieldN]
plot_pdf
boolean
plot_cdf
boolean
show_ref_mean
boolean
show_ref_median
boolean
show_ref_sigma
boolean
num_ref_sigma
number
show_ref_pct
boolean
ref_pct_bottom
number
ref_pct_top
number
show_ref_custom
boolean
ref_custom_values
[number1...numberN]
category_values
Category
Probabilities
Both
category_groups
Categories
Iterations
create_pct_table
boolean
Property description
211
Data type
pct_table
Quartiles
Intervals
Custom
pct_intervals_num
number
pct_custom_values
[number1...numberN]
Property description
Data type
build
Node
XMLExport
Both
use_source_node_name
boolean
source_node_name
string
use_cases
All
LimitFirstN
use_case_limit
integer
fit_criterion
AndersonDarling
KolmogorovSmirnov
num_bins
integer
parameter_xml_filename
string
generate_parameter_import
boolean
Property description
Data type
Property description
use_output_name
boolean
output_name
string
212
Data type
Property description
output_mode
Screen
File
output_format
Text (.txt)
HTML (.html)
Output (.cou)
full_filename
string
examine
correlate
statistics
correlation_mode
Probability
Absolute
label_correlations
boolean
weak_label
string
medium_label
string
strong_label
string
weak_below_probability
number
strong_above_probability
number
weak_below_absolute
number
strong_above_absolute
number
The properties for this node are described under statisticsoutput Node Properties on page 228.
213
Data type
Property description
full_filename
string
use_output_name
boolean
output_name
string
output_mode
Screen
File
output_format
Formatted (.tab)
Delimited (.csv)
HTML (.html)
Output (.cou)
transpose_data
boolean
paginate_output
boolean
lines_per_page
number
highlight_expr
string
output
string
value_labels
[{Value LabelString}
{Value LabelString} ...]
display_places
integer
export_places
integer
decimal_separator
DEFAULT
PERIOD
COMMA
214
Data type
Property description
date_format
"DDMMYY"
"MMDDYY"
"YYMMDD"
"YYYYMMDD"
"YYYYDDD"
DAY
MONTH
"DD-MM-YY"
"DD-MM-YYYY"
"MM-DD-YY"
"MM-DD-YYYY"
"DD-MON-YY"
"DD-MON-YYYY"
"YYYY-MM-DD"
"DD.MM.YY"
"DD.MM.YYYY"
"MM.DD.YY"
"MM.DD.YYYY"
"DD.MON.YY"
"DD.MON.YYYY"
"DD/MM/YY"
"DD/MM/YYYY"
"MM/DD/YY"
"MM/DD/YYYY"
"DD/MON/YY"
"DD/MON/YYYY"
MON YYYY
q Q YYYY
ww WK YYYY
time_format
"HHMMSS"
"HHMM"
"MMSS"
"HH:MM:SS"
"HH:MM"
"MM:SS"
"(H)H:(M)M:(S)S"
"(H)H:(M)M"
"(M)M:(S)S"
"HH.MM.SS"
"HH.MM"
"MM.SS"
"(H)H.(M)M.(S)S"
"(H)H.(M)M"
"(M)M.(S)S"
column_width
integer
justify
AUTO
CENTER
LEFT
RIGHT
215
Data type
Property description
fields
[ field1... fieldn]
formula
All
Select
formula_inverse
boolean
formula_inverse_offset
number
formula_log_n
boolean
formula_log_n_offset
number
formula_log_10
boolean
formula_log_10_offset
number
formula_exponential
boolean
formula_square_root
boolean
use_output_name
boolean
output_name
string
If use_output_name is true,
specifies the name to use.
output_mode
Screen
File
output_format
HTML (.html)
Output (.cou)
paginate_output
boolean
lines_per_page
number
full_filename
string
216
Values
Property description
publish_path
string
publish_metadata
boolean
publish_use_parameters
boolean
publish_parameters
string list
execute_mode
export_data
publish
Data type
Property description
data_source
string
export_mode
string
host
string
port
integer
tenant
string
set_credentials
boolean
user_name
string
password
string
217
Note: For this node, you must define a Cognos connection and an ODBC connection.
Cognos connection
The properties for the Cognos connection are as follows.
Table 201. cognosexport node properties.
cognosexport node properties
Data type
Property description
cognos_connection
{"field","field", ...
,"field"}
cognos_package_name
string
cognos_datasource
string
cognos_export_mode
Publish
ExportFile
cognos_filename
string
ODBC connection
The properties for the ODBC connection are identical to those listed for databaseexport in the next
section, with the exception that the datasource property is not valid.
218
Data type
Property description
pm_host
string
tm1_connection
{"field","field", ...
,"field"}
selected_cube
field
spssfield_tm1element_mapping
list
Data type
datasource
string
username
string
password
string
epassword
string
table_name
string
write_mode
Create
Append
Merge
Property description
219
Data type
Property description
map
string
key_fields
join
Database
Add
drop_existing_table
boolean
delete_existing_rows
boolean
default_string_size
integer
Structured property used to set the
schema type.
type
generate_import
boolean
use_custom_create_table_command
boolean
custom_create_table_command
string
use_batch
boolean
batch_size
number
bulk_loading
Off
ODBC
External
not_logged
boolean
odbc_binding
Row
Column
loader_delimit_mode
Tab
Space
Other
loader_other_delimiter
string
220
Data type
Property description
specify_data_file
boolean
data_file
string
specify_loader_program
boolean
loader_program
string
gen_logfile
boolean
logfile_name
string
check_table_size
boolean
loader_options
string
export_db_primarykey
boolean
use_custom_create_index_command
boolean
custom_create_index_command
string
indexes.INDEXNAME.fields
indexes.INDEXNAME.use_custom_
create_index_command
boolean
indexes.INDEXNAME.custom_create_
ommand
indexes.INDEXNAME.remove
boolean
table_space
string
use_partition
boolean
partition_field
string
221
Note: For some databases, you can specify that database tables are created for export with compression
(for example, the equivalent of CREATE TABLE MYTABLE (...) COMPRESS YES; in SQL). The properties
use_compression and compression_mode are provided to support this feature, as follows.
Table 204. databaseexport node properties using compression features.
databaseexport node properties
Data type
Property description
use_compression
boolean
compression_mode
Row
Page
Default
Direct_Load_Operations
All_Operations
Basic
OLTP
Query_High
Query_Low
Archive_High
Archive_Low
Data type
Property description
metadata_file
string
merge_metadata
Overwrite
MergeCurrent
enable_system_variables
boolean
casedata_file
string
generate_import
boolean
Data type
full_filename
string
222
Property description
Data type
Property description
excel_file_type
Excel2003
Excel2007
export_mode
Create
Append
inc_field_names
boolean
start_cell
string
worksheet_name
string
launch_application
boolean
generate_import
boolean
Data type
Property description
full_filename
string
write_mode
Overwrite
Append
inc_field_names
boolean
use_newline_after_records
boolean
delimit_mode
Comma
Tab
Space
Other
other_delimiter
char
quote_mode
None
Single
Double
Other
other_quote
boolean
generate_import
boolean
223
Data type
encoding
StreamDefault
SystemDefault
"UTF-8"
Property description
Data type
Property description
format
Windows
UNIX
SAS7
SAS8
full_filename
string
export_names
NamesAndLabels
NamesAsLabels
generate_import
boolean
The properties for this node are described under statisticsexport Node Properties on page 228.
Data type
Property description
full_filename
string
use_xml_schema
boolean
224
Data type
Property description
full_schema_filename
string
generate_import
boolean
records
string
map
string
225
226
Data type
Property description
full_filename
string
password
string
file_encrypted
flag
import_names
NamesAndLabels
LabelsAsNames
import_data
DataAndLabels
LabelsAsData
use_field_format_for_storage
Boolean
Data type
Property description
syntax
string
check_before_saving
boolean
default_include
boolean
include
boolean
new_name
string
227
Data type
Property description
syntax
string
default_include
boolean
include
boolean
new_name
string
Data type
Property description
mode
Dialog
Syntax
syntax
string
use_output_name
boolean
output_name
string
output_mode
Screen
File
full_filename
string
file_type
HTML
SPV
SPW
228
Data type
Property description
full_filename
string
file_type
Standard
Compressed
encrypt_file
flag
password
string
The password.
launch_application
boolean
export_names
NamesAndLabels
NamesAsLabels
generate_import
boolean
229
230
execute_method
Script
Normal
script
string
script_language
Python
Legacy
Property description
SuperNode Parameters
You can use scripts to create or set SuperNode parameters using the same functions that are used to
modify stream parameters. See the topic Stream, Session, and SuperNode Parameters on page 40 for
more information.
Setting Properties for Encapsulated Nodes
In order to set the properties on nodes within the SuperNode, you must access the diagram owned by
that SuperNode, and then use the various find methods (such as findByName() and findByID()) to locate
the nodes. For example, in a SuperNode script that includes a single Type node:
supernode = modeler.script.supernode()
diagram = supernode.getCompositeProcessorDiagram()
# Find the type node within the supernode internal diagram
typenode = diagram.findByName("type", None)
typenode.setKeyedProperty("direction", "Drug", "Input")
typenode.setKeyedProperty("direction", "Age", "Target")
Limitations of SuperNode scripts. SuperNodes cannot manipulate other streams and cannot change the
current stream.
231
232
Model
anomalydetection
Anomaly
apriori
Apriori
autoclassifier
Auto Classifier
autocluster
Auto Cluster
autonumeric
Auto Numeric
bayesnet
Bayesian network
c50
C5.0
carma
Carma
cart
C&R Tree
chaid
CHAID
coxreg
Cox regression
decisionlist
Decision List
discriminant
Discriminant
factor
PCA/Factor
featureselection
Feature Selection
genlin
glmm
GLMM
kmeans
K-Means
knn
k-nearest neighbor
kohonen
Kohonen
linear
Linear
logreg
Logistic regression
neuralnetwork
Neural Net
quest
QUEST
regression
Linear regression
233
Model
sequence
Sequence
slrm
statisticsmodel
svm
timeseries
Time Series
twostep
TwoStep
Model
db2imcluster
db2imlog
db2imnb
db2imreg
db2imtree
msassoc
MS Association Rules
msbayes
MS Naive Bayes
mscluster
MS Clustering
mslogistic
MS Logistic Regression
msneuralnetwork
MS Neural Network
msregression
MS Linear Regression
mssequencecluster
MS Sequence Clustering
mstimeseries
MS Time Series
mstree
MS Decision Tree
netezzabayes
netezzadectree
netezzadivcluster
netezzaglm
netezzakmeans
Netezza K-Means
netezzaknn
Netezza KNN
netezzalineregression
netezzanaivebayes
netezzapca
Netezza PCA
netezzaregtree
netezzatimeseries
oraabn
oraai
Oracle AI
oradecisiontree
oraglm
Oracle GLM
orakmeans
Oracle k-Means
oranb
234
Model
oranmf
Oracle NMF
oraocluster
Oracle O-Cluster
orasvm
Oracle SVM
Node
analysisoutput
Analysis
collectionoutput
Collection
dataauditoutput
Data Audit
distributionoutput
Distribution
evaluationoutput
Evaluation
histogramoutput
Histogram
matrixoutput
Matrix
meansoutput
Means
multiplotoutput
Multiplot
plotoutput
Plot
qualityoutput
Quality
235
Table 217. Output object types and the nodes that create them (continued).
Output object type
Node
reportdocumentoutput
This object type is not from a node; it's the output created by a
project report
reportoutput
Report
statisticsprocedureoutput
Statistics Output
statisticsoutput
Statistics
tableoutput
Table
timeplotoutput
Time Plot
weboutput
Web
236
General differences
Legacy scripting owes much of its design to OS command scripts. Legacy scripting is line oriented, and
although there are some block structures, for example if...then...else...endif and for...endfor,
indentation is generally not significant.
In Python scripting, indentation is significant and lines belonging to the same logical block must be
indented by the same level.
Note: You must take care when copying and pasting Python code. A line that is indented using tabs
might look the same in the editor as a line that is indented using spaces. However, the Python script will
generate an error because the lines are not considered as equally indented.
Stream related functions can then be invoked through the returned object.
Python uses functions that are usually invoked through an object (a module, class or object) that defines
the function, for example:
stream = modeler.script.stream()
typenode = stream.findByName("type", "Type)
filternode = stream.findByName("filter", None)
stream.link(typenode, filternode)
derive.setLabel("Compute Total")
237
Python scripting
Same
Same
Same
Note: String literals containing non-ASCII characters must
be prefixed by a u to ensure that they are represented as
Unicode.
Same
Note: String literals containing non-ASCII characters must
be prefixed by a u to ensure that they are represented as
Unicode.
Same
This is a string
that spans multiple
lines
Lists, for example [1 2 3]
[1, 2, 3]
x = 3
x = [ 1, 2,\
3, 4]
set x = [1 2 \
3 4]
Block comment, for example
/* This is a long comment
over a line. */
x = 3
undef
None
true
True
false
False
# make x 3
Operators
Some operator commands that are commonly used in IBM SPSS Modeler have equivalent commands in
Python scripting. This might help you to convert your existing SPSS Modeler Legacy scripts to Python
scripts for use in IBM SPSS Modeler 16.
Table 219. Legacy scripting to Python scripting mapping for operators.
Legacy scripting
Python scripting
NUM1 + NUM2
LIST + ITEM
LIST1 + LIST2
NUM1 + NUM2
LIST.append(ITEM)
LIST1.extend(LIST2)
NUM1 NUM2
LIST - ITEM
NUM1 NUM2
LIST.remove(ITEM)
NUM1 * NUM2
NUM1 * NUM2
NUM1 / NUM2
NUM1 / NUM2
238
Table 219. Legacy scripting to Python scripting mapping for operators (continued).
Legacy scripting
Python scripting
=
==
==
/=
/==
!=
X ** Y
X ** Y
X
X
X
X
X
X
X
X
< Y
<= Y
> Y
>= Y
< Y
<= Y
> Y
>= Y
X div Y
X rem Y
X mod Y
X // Y
X % Y
X % Y
and
or
not(EXPR)
and
or
not EXPR
Python scripting
if...then
...
elseif...then
...
else
...
endif
if ...:
...
elif ...:
...
else:
...
No equivalent
var VAR1
239
Variables
In legacy scripting, variables are declared before they are referenced, for example:
var mynode
set mynode = create typenode at 96 96
In Python scripting, variables are created when they are first referenced, for example:
mynode = stream.createAt("type", "Type", 96, 96)
In legacy scripting, references to variables must be explicitly removed using the ^ operator, for example:
var mynode
set mynode = create typenode at 96 96
set ^mynode.direction."Age" = Input
Like most scripting languages, this is not necessary is Python scripting, for example:
mynode = stream.createAt("type", "Type", 96, 96)
mynode.setKeyedPropertyValue("direction","Age","Input")
The IBM SPSS Modeler API in Python does not include the node suffix, so the Derive node has the type
derive, for example:
feature_name_node = stream.createAt("derive", "Feature", 96, 96)
The only difference in type names in legacy and Python scripting is the lack of the type suffix.
Property names
Property names are the same in both legacy and Python scripting. For example, in the Variable File node,
the property that defines the file location is full_filename in both scripting environments.
Node references
Many legacy scripts use an implicit search to find and access the node to be modified. For example, the
following commands search the current stream for a Type node with the label "Type", then set the
direction (or modeling role) of the "Age" field to Input and the "Drug" field to be Target, that is the value
to be predicted:
set Type:typenode.direction."Age" = Input
set Type:typenode.direction."Drug" = Target
In Python scripting, node objects have to be located explicitly before calling the function to set the
property value, for example:
typenode = stream.findByType("type", "Type")
typenode.setKeyedPropertyValue("direction", "Age", "Input")
typenode.setKeyedPropertyValue("direction", "Drug", "Target")
240
Although the Python scripting version can be more verbose, it leads to better runtime performance
because the search for the node is usually only done once. In the legacy scripting example, the search for
the node is done for each command.
Finding nodes by ID is also supported (the node ID is visible in the Annotations tab of the node dialog).
For example, in legacy scripting:
# id65EMPB9VL87 is the ID of a Type node
set @id65EMPB9VL87.direction."Age" = Input
In Python scripting, the same result is achieved by using the functions setPropertyValue() and
setKeyedPropertyValue(), for example:
object.setPropertyValue(property, value)
object.setKeyedPropertyValue(keyed-property, key, value)
In legacy scripting, accessing property values can be achieved using the get command, for example:
var n v
set n = get node :filternode
set v = ^n.name
In Python scripting, the same result is achieved by using the function getPropertyValue(), for example:
n = stream.findByName("filter", None)
v = n.getPropertyValue("name")
Editing streams
In legacy scripting, the create command is used to create a new node, for example:
var agg select
set agg = create aggregatenode at 96 96
set select = create selectnode at 164 96
In Python scripting, streams have various methods for creating nodes, for example:
stream = modeler.script.stream()
agg = stream.createAt("aggregate", "Aggregate", 96, 96)
select = stream.createAt("select", "Select", 164, 96)
In legacy scripting, the connect command is used to create links between nodes, for example:
connect ^agg to ^select
In Python scripting, the link method is used to create links between nodes, for example:
stream.link(agg, select)
In legacy scripting, the disconnect command is used to remove links between nodes, for example:
disconnect ^agg from ^select
In Python scripting, the unlink method is used to remove links between nodes, for example:
Appendix B. Migrating from legacy scripting to Python scripting
241
stream.unlink(agg, select)
In legacy scripting, the position command is used to position nodes on the stream canvas or between
other nodes, for example:
position ^agg at 256 256
position ^agg between ^myselect and ^mydistinct
In Python scripting, the same result is achieved by using two separate methods; setXYPosition and
setPositionBetween. For example:
agg.setXYPosition(256, 256)
agg.setPositionBetween(myselect, mydistinct)
Node operations
Some node operation commands that are commonly used in IBM SPSS Modeler have equivalent
commands in Python scripting. This might help you to convert your existing SPSS Modeler Legacy
scripts to Python scripts for use in IBM SPSS Modeler 16.
Table 221. Legacy scripting to Python scripting mapping for node operations.
Legacy scripting
Python scripting
create nodespec at x y
stream.create(type, name)
stream.createAt(type, name, x, y)
stream.createBetween(type, name, preNode, postNode)
stream.createModelApplier(model, name)
stream.link(fromNode, toNode)
delete node
stream.delete(node)
disable node
stream.setEnabled(node, False)
enable node
stream.setEnabled(node, True)
stream.unlink(fromNode, toNode)
stream.disconnect(node)
duplicate node
node.duplicate()
execute node
stream.runSelected(nodes, results)
stream.runAll(results)
flush node
node.flushCache()
position node at x y
node.setXYPosition(x, y)
node.setPositionBetween(node1, node2)
node.setLabel(name)
Looping
In legacy scripting, there are two main looping options that are supported:
v Counted loops, where an index variable moves between two integer bounds.
v Sequence loops that loop through a sequence of values, binding the current value to the loop variable.
The following script is an example of a counted loop in legacy scripting:
for i from 1 to 10
println ^i
endfor
242
var items
set items = [a b c d]
for i in items
println ^i
endfor
The sequence loop is very flexible, and when it is combined with IBM SPSS Modeler API methods it can
support the majority of legacy scripting use cases. The following example shows how to use a sequence
loop in Python scripting to iterate through the fields that come out of a node:
node = modeler.script.stream().findByType("filter", None)
for column in node.getOutputDataModel().columnIterator():
print column.getColumnName()
Executing streams
During stream execution, model or output objects that are generated are added to one of the object
managers. In legacy scripting, the script must either locate the built objects from the object manager, or
access the most recently generated output from the node that generated the output.
Stream execution in Python is different, in that any model or output objects that are generated from the
execution are returned in a list that is passed to the execution function. This makes it simpler to access
the results of the stream execution.
Legacy scripting supports three stream execution commands:
v execute_all executes all executable terminal nodes in the stream.
v execute_script executes the stream script regardless of the setting of the script execution.
v execute node executes the specified node.
Python scripting supports a similar set of functions:
v stream.runAll(results-list) executes all executable terminal nodes in the stream.
v stream.runScript(results-list) executes the stream script regardless of the setting of the script
execution.
v stream.runSelected(node-array, results-list) executes the specified set of nodes in the order that
they are supplied.
v node.run(results-list) executes the specified node.
In legacy script, a stream execution can be terminated using the exit command with an optional integer
code, for example:
Appendix B. Migrating from legacy scripting to Python scripting
243
exit 1
In Python scripting, the same result can be achieved with the following script:
modeler.script.exit(1)
In Python scripting, there is the TaskRunner class that is accessible from the session and can be used to
perform similar tasks, for example:
taskrunner = modeler.script.session().getTaskRunner()
s = taskrunner.openStreamFromFile("c:/my streams/modeling.str", True)
To save an object in legacy scripting, you can use the save command, for example:
save stream s as "c:/my streams/new_modeling.str"
The equivalent Python script approach would be using the TaskRunner class, for example:
taskrunner.saveStreamToFile(s, "c:/my streams/new_modeling.str")
IBM SPSS Collaboration and Deployment Services Repository based operations are supported in legacy
scripting through the retrieve and store commands, for example:
var s
set s = retrieve stream "/my repository folder/my_stream.str"
store stream ^s as "/my repository folder/my_stream_copy.str"
In Python scripting, the equivalent functionality would be accessed through the Repository object that is
associated with the session, for example:
session = modeler.script.session()
repo = session.getRepository()
s = repo.retrieveStream("/my repository folder/my_stream.str", None, None, True)
repo.storeStream(s, "/my repository folder/my_stream_copy.str", None)
Note: Repository access requires that the session has been configured with a valid repository connection.
Stream operations
Some stream operation commands that are commonly used in IBM SPSS Modeler have equivalent
commands in Python scripting. This might help you to convert your existing SPSS Modeler Legacy
scripts to Python scripts for use in IBM SPSS Modeler 16.
Table 222. Legacy scripting to Python scripting mapping for stream operations.
Legacy scripting
Python scripting
taskrunner.createStream(name, autoConnect,
autoManage)
close stream
stream.close()
clear stream
stream.clear()
No equivalent
No equivalent
taskrunner.openStreamFromFile(path, autoManage)
taskrunner.saveStreamToFile(stream, path)
244
Table 222. Legacy scripting to Python scripting mapping for stream operations (continued).
Legacy scripting
Python scripting
Model operations
Some model operation commands that are commonly used in IBM SPSS Modeler have equivalent
commands in Python scripting. This might help you to convert your existing SPSS Modeler Legacy
scripts to Python scripts for use in IBM SPSS Modeler 16.
Table 223. Legacy scripting to Python scripting mapping for model operations.
Legacy scripting
Python scripting
taskrunner.openModelFromFile(path, autoManage)
taskrunner.saveModelToFile(model, path)
Python scripting
taskrunner.openDocumentFromFile(path, autoManage)
taskrunner.saveDocumentToFile(output, path)
245
246
Notices
This information was developed for products and services offered worldwide.
IBM may not offer the products, services, or features discussed in this document in other countries.
Consult your local IBM representative for information on the products and services currently available in
your area. Any reference to an IBM product, program, or service is not intended to state or imply that
only that IBM product, program, or service may be used. Any functionally equivalent product, program,
or service that does not infringe any IBM intellectual property right may be used instead. However, it is
the user's responsibility to evaluate and verify the operation of any non-IBM product, program, or
service.
IBM may have patents or pending patent applications covering subject matter described in this
document. The furnishing of this document does not grant you any license to these patents. You can send
license inquiries, in writing, to:
IBM Director of Licensing
IBM Corporation
North Castle Drive
Armonk, NY 10504-1785
U.S.A.
For license inquiries regarding double-byte (DBCS) information, contact the IBM Intellectual Property
Department in your country or send inquiries, in writing, to:
Intellectual Property Licensing
Legal and Intellectual Property Law
IBM Japan Ltd.
1623-14, Shimotsuruma, Yamato-shi
Kanagawa 242-8502 Japan
The following paragraph does not apply to the United Kingdom or any other country where such
provisions are inconsistent with local law: INTERNATIONAL BUSINESS MACHINES CORPORATION
PROVIDES THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR
IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some
states do not allow disclaimer of express or implied warranties in certain transactions, therefore, this
statement may not apply to you.
This information could include technical inaccuracies or typographical errors. Changes are periodically
made to the information herein; these changes will be incorporated in new editions of the publication.
IBM may make improvements and/or changes in the product(s) and/or the program(s) described in this
publication at any time without notice.
Any references in this information to non-IBM Web sites are provided for convenience only and do not in
any manner serve as an endorsement of those Web sites. The materials at those Web sites are not part of
the materials for this IBM product and use of those Web sites is at your own risk.
IBM may use or distribute any of the information you supply in any way it believes appropriate without
incurring any obligation to you.
247
Licensees of this program who wish to have information about it for the purpose of enabling: (i) the
exchange of information between independently created programs and other programs (including this
one) and (ii) the mutual use of the information which has been exchanged, should contact:
IBM Software Group
ATTN: Licensing
200 W. Madison St.
Chicago, IL; 60606
U.S.A.
Such information may be available, subject to appropriate terms and conditions, including in some cases,
payment of a fee.
The licensed program described in this document and all licensed material available for it are provided
by IBM under terms of the IBM Customer Agreement, IBM International Program License Agreement or
any equivalent agreement between us.
Any performance data contained herein was determined in a controlled environment. Therefore, the
results obtained in other operating environments may vary significantly. Some measurements may have
been made on development-level systems and there is no guarantee that these measurements will be the
same on generally available systems. Furthermore, some measurements may have been estimated through
extrapolation. Actual results may vary. Users of this document should verify the applicable data for their
specific environment.
Information concerning non-IBM products was obtained from the suppliers of those products, their
published announcements or other publicly available sources. IBM has not tested those products and
cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM
products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of
those products.
All statements regarding IBM's future direction or intent are subject to change or withdrawal without
notice, and represent goals and objectives only.
This information contains examples of data and reports used in daily business operations. To illustrate
them as completely as possible, the examples include the names of individuals, companies, brands, and
products. All of these names are fictitious and any similarity to the names and addresses used by an
actual business enterprise is entirely coincidental.
If you are viewing this information softcopy, the photographs and color illustrations may not appear.
Trademarks
IBM, the IBM logo, and ibm.com are trademarks or registered trademarks of International Business
Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be
trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at
Copyright and trademark information at www.ibm.com/legal/copytrade.shtml.
Intel, Intel logo, Intel Inside, Intel Inside logo, Intel Centrino, Intel Centrino logo, Celeron, Intel Xeon,
Intel SpeedStep, Itanium, and Pentium are trademarks or registered trademarks of Intel Corporation or its
subsidiaries in the United States and other countries.
Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both.
Microsoft, Windows, Windows NT, and the Windows logo are trademarks of Microsoft Corporation in the
United States, other countries, or both.
248
UNIX is a registered trademark of The Open Group in the United States and other countries.
Java and all Java-based trademarks and logos are trademarks or registered trademarks of Oracle and/or
its affiliates.
Other product and service names might be trademarks of IBM or other companies.
Notices
249
250
Index
A
adding attributes 22
Aggregate node
properties 79
aggregate node properties 79
Analysis node
properties 205
analysis node properties 205
Analytic Server source node
properties 62
anomaly detection models
node scripting properties 125, 169
anomalydetection node properties 125
Anonymize node
properties 91
anonymize node properties 91
Append node
properties 79
append node properties 79
applyanomalydetection node
properties 169
applyapriori node properties 169
applyautoclassifier node properties 170
applyautocluster node properties 170
applyautonumeric node properties 170
applybayesnet node properties 170
applyc50 node properties 171
applycarma node properties 171
applycart node properties 171
applychaid node properties 172
applycoxreg node properties 172
applydb2imcluster node properties 194
applydb2imlog node properties 194
applydb2imnb node properties 194
applydb2imreg node properties 194
applydb2imtree node properties 194
applydecisionlist node properties 172
applydiscriminant node properties 173
applyfactor node properties 173
applyfeatureselection node
properties 173
applygeneralizedlinear node
properties 173
applyglmm node properties 174
applykmeans node properties 174
applyknn node properties 174
applykohonen node properties 174
applylinear node properties 175
applylogreg node properties 175
applymslogistic node properties 181
applymsneuralnetwork node
properties 181
applymsregression node properties 181
applymssequencecluster node
properties 181
applymstimeseries node properties 181
applymstree node properties 181
applynetezzabayes node properties 203
applynetezzadectree node
properties 203
applynetezzadivcluster node
properties 203
applynetezzakmeans node
properties 203
applynetezzaknn node properties 203
applynetezzalineregression node
properties 203
applynetezzanaivebayes node
properties 203
applynetezzapca node properties 203
applynetezzaregtree node properties 203
applyneuralnet node properties 175
applyneuralnetwork node
properties 176
applyoraabn node properties 188
applyoradecisiontree node
properties 188
applyorakmeans node properties 188
applyoranb node properties 188
applyoranmf node properties 188
applyoraocluster node properties 188
applyorasvm node properties 188
applyquest node properties 176
applyr properties 177
applyregression node properties 176
applyselflearning node properties 177
applysequence node properties 177
applysvm node properties 177
applytimeseries node properties 178
applytwostep node properties 178
apriori models
node scripting properties 127, 169
apriori node properties 127
arguments
command file 53
IBM SPSS Collaboration and
Deployment Services Repository
connection 52
server connection 51
system 50
asexport node properties 217
asimport node properties 62
Auto Classifier models
node scripting properties 170
Auto Classifier node
node scripting properties 127
Auto Cluster models
node scripting properties 170
Auto Cluster node
node scripting properties 129
auto numeric models
node scripting properties 131
Auto Numeric models
node scripting properties 170
autoclassifier node properties 127
autocluster node properties 129
autodataprep node properties 91
automatic data preparation
properties 91
autonumeric node properties 131
B
Balance node
properties 80
balance node properties 80
bayesian network models
node scripting properties 132
Bayesian Network models
node scripting properties 170
bayesnet node properties 132
Binning node
properties 94
binning node properties 94
blocks of code 17
buildr properties 133
C
C&R tree models
node scripting properties 135, 171
C5.0 models
node scripting properties 133, 171
c50 node properties 133
CARMA models
node scripting properties 134, 171
carma node properties 134
cart node properties 135
CHAID models
node scripting properties 137, 172
chaid node properties 137
clear generated palette command 48
cognosimport node properties 63
Collection node
properties 113
collection node properties 113
command line
list of arguments 50, 51, 52
multiple arguments 53
parameters 51
running IBM SPSS Modeler 49
scripting 48
conditional execution of streams 4, 7
Cox regression models
node scripting properties 138, 172
coxreg node properties 138
creating a class 22
creating nodes 28, 29, 30
D
Data Audit node
properties 206
dataaudit node properties 206
Database export node
properties 219
database modeling 179
Database node
properties 64
database node properties 64
databaseexport node properties 219
datacollectionexport node properties 222
251
E
encoded passwords
adding to scripts 47
Ensemble node
properties 97
ensemble node properties 97
Enterprise View node
properties 68
error checking
scripting 47
Evaluation node
properties 115
evaluation node properties 115
evimport node properties 68
examples 18
Excel export node
properties 222
Excel source node
properties 68
excelexport node properties 222
excelimport node properties 68
executing scripts 8
Executing streams 25
execution order
changing with scripts 47
export nodes
node scripting properties 217
G
generalized linear models
node scripting properties 145, 173
generated keyword 48
generated models
scripting names 233, 235
genlin node properties 145
GLMM models
node scripting properties 148, 174
glmm node properties 148
graph nodes
scripting properties 113
Graphboard node
properties 116
graphboard node properties 116
252
J
Jython
13
H
hidden variables 23
Histogram node
properties 118
histogram node properties 118
History node
properties 99
history node properties 99
F
factor node properties
142
K
K-Means models
node scripting properties
kmeans node properties 151
KNN models
node scripting properties
knn node properties 152
kohonen models
node scripting properties
Kohonen models
node scripting properties
151, 174
174
153
174
153
L
linear models
node scripting properties
linear node properties 154
linear regression models
node scripting properties
177
lists 14
logistic regression models
node scripting properties
logreg node properties 155
looping in streams 4, 5
154, 175
162, 176,
155, 175
M
mathematical methods 19
Matrix node
properties 207
matrix node properties 207
Means node
properties 208
means node properties 208
Merge node
properties 82
merge node properties 82
Microsoft models
node scripting properties
Migrating
accessing objects 244
commands 237
editing streams 241
executing streams 243
file system 244
functions 237
general differences 237
getting properties 241
looping 242
miscellaneous 245
model types 240
node references 240
node types 240
output types 240
overview 237
property names 240
repository 244
scripting context 237
setting properties 241
variables 240
model nuggets
node scripting properties
scripting names 233, 235
model objects
scripting names 233, 235
modeling nodes
node scripting properties
models
scripting names 233, 235
modifying streams 28, 31
MS Decision Tree
node scripting properties
MS Linear Regression
node scripting properties
MS Logistic Regression
node scripting properties 179, 181
MS Neural Network
node scripting properties 179, 181
MS Sequence Clustering
node scripting properties 181
MS Time Series
node scripting properties 181
msassoc node properties 179
msbayes node properties 179
mscluster node properties 179
mslogistic node properties 179
msneuralnetwork node properties 179
msregression node properties 179
mssequencecluster node properties 179
mstimeseries node properties 179
mstree node properties 179
Multiplot node
properties 119
multiplot node properties 119
179, 181
169
125
179, 181
179, 181
O
object oriented 21
operations 14
oraabn node properties 182
oraai node properties 182
oraapriori node properties 182
Oracle Adaptive Bayes models
node scripting properties 182, 188
Oracle AI models
node scripting properties 182
Oracle Apriori models
node scripting properties 182, 188
Oracle Decision Tree models
node scripting properties 182, 188
Oracle Generalized Linear models
node scripting properties 182
Oracle KMeans models
node scripting properties 182, 188
Oracle MDL models
node scripting properties 182, 188
Oracle models
node scripting properties 182
Oracle Naive Bayes models
node scripting properties 182, 188
Oracle NMF models
node scripting properties 182, 188
Oracle O-Cluster
node scripting properties 182, 188
Oracle Support Vector Machines models
node scripting properties 182, 188
oradecisiontree node properties 182
oraglm node properties 182
orakmeans node properties 182
oramdl node properties 182
oranb node properties 182
oranmf node properties 182
oraocluster node properties 182
orasvm node properties 182
output nodes
scripting properties 205
output objects
scripting names 235
outputfile node properties 223
Index
253
parameters 3, 55, 57
scripting 14
SuperNodes 231
Partition node
properties 100
partition node properties 100
passing arguments 17
passwords
adding to scripts 47
encoded 51
PCA models
node scripting properties 142, 173
PCA/Factor models
node scripting properties 142, 173
Plot node
properties 120
plot node properties 120
properties
common scripting 56
database modeling nodes 179
scripting 55, 56, 125, 169, 217
stream 57
SuperNodes 231
Python 13
scripting 14
Q
QUEST models
node scripting properties
quest node properties 161
161, 176
R
R Build node
node scripting properties 133
R Output node
properties 210
R Process node
properties 84
Reclassify node
properties 100
reclassify node properties 100
referencing nodes 26
finding nodes 27
setting properties 27
regression node properties 162
regular expressions 9
remarks 16
Reorder node
properties 101
reorder node properties 101
Report node
properties 209
report node properties 209
Restructure node
properties 101
restructure node properties 101
RFM Aggregate node
properties 83
RFM Analysis node
properties 102
rfmaggregate node properties 83
rfmanalysis node properties 102
Routput node properties 210
254
84
S
Sample node
properties 85
sample node properties 85
SAS export node
properties 224
SAS source node
properties 71
sasexport node properties 224
sasimport node properties 71
scripting
abbreviations used 55
common properties 56
compatibility with earlier versions 48
conditional execution 4, 7
context 26
diagrams 25
error checking 47
executing 8
file paths 48
from the command line 48
graph nodes 113
in SuperNodes 3
interrupting 8
iteration key 5
iteration variable 6
legacy scripting 238, 239, 242, 244,
245
model replacement 47
modeling node execution 47
output nodes 205
overview 1, 13
Python scripting 238, 239, 242, 244,
245
selecting fields 7
standalone scripts 1, 25
stream execution order 47
streams 1, 25
SuperNode scripts 1, 25
SuperNode streams 25
syntax 14, 15, 16, 17, 18, 19, 20, 21,
22, 23
user interface 1, 3, 9
visual looping 4, 5
Scripting API
accessing generated objects 38
example 35
global values 44
handling errors 39
introduction 35
metadata 35
multiple streams 44
searching 35
session parameters 40
standalone scripts 44
stream parameters 40
SuperNode parameters 40
scripts
conditional execution 4, 7
importing from text files 1
iteration key 5
iteration variable 6
looping 4, 5
saving 1
scripts (continued)
selecting fields 7
security
encoded passwords 47, 51
Select node
properties 86
select node properties 86
Self-Learning Response models
node scripting properties 164, 177
sequence models
node scripting properties 163, 177
sequence node properties 163
server
command line arguments 51
Set Globals node
properties 211
Set to Flag node
properties 103
setglobals node properties 211
setting properties 27
settoflag node properties 103
Sim Eval node
properties 211
Sim Fit node
properties 212
Sim Gen node
properties 71
simeval node properties 211
simfit node properties 212
simgen node properties 71
Simulation Evaluation node
properties 211
Simulation Fit node
properties 212
Simulation Generate node
properties 71
slot parameters 3, 55, 56
SLRM models
node scripting properties 164, 177
slrm node properties 164
Sort node
properties 86
sort node properties 86
source nodes
properties 61
Space-Time-Boxes node
properties 80
standalone scripts 1, 3, 25
statements 16
Statistics node
properties 212
statistics node properties 212
statisticsexport node properties 228
statisticsimport node properties 227
statisticsmodel node properties 228
statisticsoutput node properties 228
statisticstransform node properties 227
stream execution order
changing with scripts 47
Streaming Time Series node
properties 87
streamingts node properties 87
streams
conditional execution 4, 7
execution 25
looping 4, 5
modifying 28
streams (continued)
multiset command 55
properties 57
scripting 1, 25
strings 15
supernode 55
SuperNode
stream 25
SuperNodes
parameters 231
properties 231
scripting 231
scripts 1, 3, 25
setting properties within 231
streams 25
support vector machine models
node scripting properties 177
Support vector machine models
node scripting properties 165
SVM models
node scripting properties 165
svm node properties 165
system
command line arguments 50
variables
scripting
14
W
Web node
properties 123
web node properties
123
X
XML export node
properties 224
XML source node
properties 77
xmlexport node properties 224
xmlimport node properties 77
T
Table node
properties 213
table node properties 213
Time Intervals node
properties 104
Time Plot node
properties 122
time series models
node scripting properties 166, 178
timeintervals node properties 104
timeplot node properties 122
timeseries node properties 166
tm1import node properties 64
Transform node
properties 216
transform node properties 216
Transpose node
properties 108
transpose node properties 108
traversing through nodes 31
TwoStep models
node scripting properties 168, 178
twostep node properties 168
Type node
properties 108
type node properties 108
U
User Input node
properties 74
userinput node properties
74
V
Variable File node
properties 75
variablefile node properties
75
Index
255
256
Printed in USA