0% encontró este documento útil (0 votos)
303 vistas398 páginas

ModelerScriptingAutomation PDF

Cargado por

Carlos Javier
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
303 vistas398 páginas

ModelerScriptingAutomation PDF

Cargado por

Carlos Javier
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

IBM SPSS Modeler 18.1.

1 Guía de
automatización y scripts Python

IBM
Nota
Antes de utilizar esta información y el producto al que da soporte, lea la información del apartado “Avisos” en la página
381.

Información de producto
Esta edición se aplica a la versión 18, release 1, modificación 1 de IBM SPSS Modeler y a todos los releases y las
modificaciones posteriores hasta que se indique lo contrario en nuevas ediciones.
Contenido
Capítulo 1. Scripts y lenguaje de scripts 1 Creación de nodos y modificación de rutas . . . . 31
Visión general de scripts . . . . . . . . . . 1 Creación de nodos . . . . . . . . . . . 31
Tipos de scripts . . . . . . . . . . . . . 1 Enlazar y desenlazar nodos . . . . . . . . 31
Scripts de ruta . . . . . . . . . . . . . . 1 Importar, sustituir y eliminar nodos . . . . . 33
Ejemplo de script de ruta: entrenamiento de una Atravesar los nodos de una ruta . . . . . . 33
red neuronal . . . . . . . . . . . . . 3 Borrado o eliminación de elementos . . . . . . 34
Límites de tamaño de código Jython . . . . . 4 Obtener información sobre los nodos . . . . . . 34
Scripts autónomos . . . . . . . . . . . . 4
Ejemplo de script autónomo: guardar y cargar un Capítulo 4. API de scripts. . . . . . . 37
modelo . . . . . . . . . . . . . . . 4 Introducción a la API de scripts . . . . . . . 37
Ejemplo de script autónomo: Generación de un Ejemplo 1: buscar nodos utilizando un filtro
modelo de selección de características . . . . . 5 personalizado . . . . . . . . . . . . . 37
Scripts de Supernodo . . . . . . . . . . . 5 Ejemplo 2: permitir a los usuarios obtener
Script de supernodo de ejemplo . . . . . . . 6 información de directorio o archivo basándose en
Creación de bucles y ejecución condicional en rutas . 6 sus privilegios . . . . . . . . . . . . . 37
Bucles en rutas . . . . . . . . . . . . 7 Metadatos: información sobre datos . . . . . . 38
Ejecución condicional en rutas . . . . . . . 11 Acceso a objetos generados . . . . . . . . . 41
Ejecutar e interrumpir scripts . . . . . . . . 12 Manejo de errores . . . . . . . . . . . . 42
Buscar y reemplazar . . . . . . . . . . . 12 Parámetros de ruta, sesión y Supernodo . . . . . 43
Valores globales . . . . . . . . . . . . . 46
Capítulo 2. Language de scripts . . . . 15 Trabajar con varias rutas: Scripts autónomos . . . 47
Visión general de lenguaje de script . . . . . . 15
Python y Jython . . . . . . . . . . . . . 15 Capítulo 5. Sugerencias para scripts 49
Scripts de Python . . . . . . . . . . . . 16 Modificación de ejecución de rutas . . . . . . 49
Operaciones . . . . . . . . . . . . . 16 Nodos de recorrido en bucle. . . . . . . . . 49
Listas . . . . . . . . . . . . . . . 16 Acceso a objetos en el Repositorio de IBM SPSS
Cadenas . . . . . . . . . . . . . . 17 Collaboration and Deployment Services . . . . . 50
Observaciones . . . . . . . . . . . . 18 Generación de una contraseña codificada . . . . 52
Sintaxis de las sentencias . . . . . . . . . 19 Comprobación de script . . . . . . . . . . 52
Identificadores . . . . . . . . . . . . 19 Scripts desde la línea de comandos . . . . . . 52
Bloques de código . . . . . . . . . . . 19 Compatibilidad con releases anteriores . . . . . 53
Pasar argumentos a un script . . . . . . . 20 Acceder a resultados de ejecución de la ruta . . . 53
Ejemplos . . . . . . . . . . . . . . 20 Modelo de contenido de tabla . . . . . . . 54
Métodos matemáticos . . . . . . . . . . 21 Modelo de contenido XML . . . . . . . . 55
Utilización de caracteres no ASCII . . . . . . 22 Modelo de contenido JSON . . . . . . . . 57
Programación orientada a objetos . . . . . . . 23 Modelo de contenido de estadísticas de columna
Definición de una clase . . . . . . . . . 24 y modelo de contenido de estadísticas por pares . 58
Creación de una instancia de clase. . . . . . 24
Añadir atributos a una instancia de clase . . . 24 Capítulo 6. Argumentos de la línea de
Definición de atributos de clase y métodos . . . 24
comandos . . . . . . . . . . . . . 63
Variables ocultas. . . . . . . . . . . . 25
Invocación del software . . . . . . . . . . 63
Heredado . . . . . . . . . . . . . . 25
Utilización de argumentos de la línea de comandos 63
Argumentos del sistema . . . . . . . . . 64
Capítulo 3. Scripts de IBM SPSS Argumentos de parámetros . . . . . . . . 65
Modeler . . . . . . . . . . . . . . 27 Argumentos de conexión del servidor . . . . 66
Tipos de scripts . . . . . . . . . . . . . 27 Repositorio de IBM SPSS Collaboration and
Rutas, rutas de supernodo y diagramas . . . . . 27 Deployment Services Argumentos de conexión . 67
Rutas . . . . . . . . . . . . . . . 27 Argumentos de conexión de IBM SPSS Analytic
Rutas de Supernodo . . . . . . . . . . 27 Server . . . . . . . . . . . . . . . 68
Diagramas. . . . . . . . . . . . . . 27 Combinación de varios argumentos . . . . . 68
Ejecución de una ruta . . . . . . . . . . . 27
El contexto de los scripts . . . . . . . . . . 28 Capítulo 7. Referencia de propiedades 69
Referencia a nodos existentes . . . . . . . . 29 Visión general de referencia de propiedades . . . 69
Buscar nodos . . . . . . . . . . . . . 29 Sintaxis para propiedades . . . . . . . . 69
Establecimiento de propiedades . . . . . . 30

iii
Ejemplos de las propiedades node y stream . . 71 propiedades de reprojectnode . . . . . . . . 148
Visión general de propiedades de nodo . . . . . 71 propiedades de restructurenode . . . . . . . 149
Propiedades de nodos comunes . . . . . . 71 propiedades de rfmanalysisnode . . . . . . . 149
propiedades de settoflagnode . . . . . . . . 151
Capítulo 8. Propiedades de ruta . . . . 73 propiedades de statisticstransformnode . . . . . 151
Propiedades timeintervalsnode (en desuso) . . . 152
Propiedades de transposenode . . . . . . . 156
Capítulo 9. Propiedades de nodos de
propiedades de typenode . . . . . . . . . 157
origen . . . . . . . . . . . . . . . 77
Propiedades comunes de nodos de origen . . . . 77
Capítulo 12. Propiedades de nodos
Propiedades de asimport . . . . . . . . . . 81
Propiedades del nodo cognosimport . . . . . . 82 Gráfico . . . . . . . . . . . . . . 163
propiedades de databasenode . . . . . . . . 84 Propiedades comunes del nodo Gráfico. . . . . 163
Propiedades de datacollectionimportnode . . . . 86 Propiedades de collectionnode. . . . . . . . 164
Propiedades de excelimportnode . . . . . . . 88 Propiedades de distributionnode . . . . . . . 165
Propiedades de extensionimportnode . . . . . . 89 Propiedades de evaluationnode . . . . . . . 166
Propiedades de fixedfilenode . . . . . . . . 92 Propiedades de graphboardnode . . . . . . . 168
Propiedades del nodo gsdata_import . . . . . . 94 Propiedades de histogramnode . . . . . . . 170
Propiedades de sasimportnode . . . . . . . . 94 Propiedades de mapvisualization . . . . . . . 171
propiedades de simgennode . . . . . . . . . 95 Propiedades de multiplotnode . . . . . . . . 175
Propiedades de statisticsimportnode . . . . . . 97 Propiedades de plotnode . . . . . . . . . 176
Propiedades del nodo tm1odataimport . . . . . 97 Propiedades de timeplotnode . . . . . . . . 178
Propiedades del nodo tm1import (en desuso) . . . 98 Propiedades eplotnode . . . . . . . . . . 179
Propiedades del nodo twcimport . . . . . . . 99 Propiedades tsnenode . . . . . . . . . . 180
Propiedades de userinputnode . . . . . . . 100 Propiedades de webnode . . . . . . . . . 182
Propiedades de variablefilenode . . . . . . . 100
Propiedades de xmlimportnode . . . . . . . 104 Capítulo 13. Propiedades de nodos de
Propiedades de dataviewimport . . . . . . . 104 modelado . . . . . . . . . . . . . 185
Propiedades comunes de nodos de modelado . . 185
Capítulo 10. Propiedades de nodos de propiedades de anomalydetectionnode . . . . . 185
operaciones con registros . . . . . . 107 propiedades de apriorinode . . . . . . . . 187
propiedades de appendnode . . . . . . . . 107 propiedades associationrulesnode . . . . . . 188
propiedades de aggregatenode . . . . . . . 107 propiedades de autoclassifiernode . . . . . . 191
propiedades de balancenode . . . . . . . . 108 Propiedades de ajustes de algoritmo. . . . . 192
Propiedades cplexoptnode . . . . . . . . . 109 propiedades de nodo de agrupación en clústeres
Propiedades derive_stbnode . . . . . . . . 111 automática . . . . . . . . . . . . . . 193
propiedades de distinctnode . . . . . . . . 113 propiedades de autonumericnode . . . . . . 194
Propiedades de extensionprocessnode . . . . . 115 Propiedades de bayesnetnode . . . . . . . . 196
propiedades de mergenode . . . . . . . . . 116 propiedades de c50node . . . . . . . . . . 198
propiedades rfmaggregatenode . . . . . . . 118 propiedades de carmanode . . . . . . . . . 199
propiedades de samplenode . . . . . . . . 120 propiedades de cartnode . . . . . . . . . 200
propiedades de selectnode . . . . . . . . . 122 propiedades de chaidnode . . . . . . . . . 203
propiedades de sortnode . . . . . . . . . 122 propiedades de coxregnode. . . . . . . . . 205
Propiedades de spacetimeboxes . . . . . . . 123 Propiedades de decisionlistnode . . . . . . . 206
Propiedades streamingtimeseries . . . . . . . 125 propiedades de discriminantnode . . . . . . 208
Propiedades de extensionmodelnode . . . . . 209
propiedades de factornode . . . . . . . . . 212
Capítulo 11. Propiedades de nodos de
propiedades de featureselectionnode . . . . . 213
operaciones con campos . . . . . . 133 propiedades de genlinnode . . . . . . . . . 215
propiedades de anonymizenode . . . . . . . 133 Propiedades de glmmnode . . . . . . . . . 218
properties autodataprepnode . . . . . . . . 134 Propiedades de gle . . . . . . . . . . . 222
propiedades de astimeintervalsnode . . . . . . 137 propiedades de kmeansnode . . . . . . . . 227
propiedades de binningnode . . . . . . . . 137 propiedades de knnnode . . . . . . . . . 228
propiedades de derivenode . . . . . . . . . 140 propiedades de kohonennode . . . . . . . . 229
propiedades de ensemblenode. . . . . . . . 142 Propiedades de linearnode . . . . . . . . . 231
propiedades de fillernode . . . . . . . . . 143 Propiedades de linearasnode . . . . . . . . 232
propiedades de filternode . . . . . . . . . 144 Propiedades de logregnode . . . . . . . . . 233
propiedades de historynode . . . . . . . . 145 propiedades de lsvmnode . . . . . . . . . 237
propiedades de partitionnode . . . . . . . . 146 propiedades de neuralnetnode. . . . . . . . 238
propiedades de reclassifynode . . . . . . . . 147 Propiedades de neuralnetwork . . . . . . . 241
propiedades de reordernode . . . . . . . . 148 propiedades de questnode . . . . . . . . . 242

iv IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


propiedades randomtrees . . . . . . . . . 244 Capítulo 15. Propiedades del nodo de
Propiedades de regressionnode . . . . . . . 246 modelado de base de datos . . . . . 289
propiedades de sequencenode . . . . . . . . 248 Propiedades de nodos de modelado de Microsoft 289
propiedades de slrmnode . . . . . . . . . 249 Propiedades de nodos de modelado de
propiedades de statisticsmodelnode . . . . . . 250 Microsoft . . . . . . . . . . . . . . 289
propiedades de stpnode . . . . . . . . . . 250 Propiedades de nugget de modelo de Microsoft 291
propiedades de svmnode . . . . . . . . . 254 Propiedades de nodos de modelado de Oracle . . 293
Propiedades de tcmnode . . . . . . . . . 255 Propiedades de nodos de modelado de Oracle 293
Propiedades ts . . . . . . . . . . . . . 259 Propiedades de nugget de modelo de Oracle 299
propiedades de treeas . . . . . . . . . . 265 Propiedades de nodos de modelado de IBM
Propiedades de twostepnode . . . . . . . . 267 Netezza Analytics . . . . . . . . . . . . 300
Propiedades de twostepAS . . . . . . . . . 268 Propiedades de nodos de modelado de Netezza 300
Propiedades de nugget de modelo de Netezza 311
Capítulo 14. Propiedades del nodo de
nugget de modelo . . . . . . . . . 271 Capítulo 16. Propiedades del nodo de
Propiedades de applyanomalydetectionnode . . . 271 resultados. . . . . . . . . . . . . 313
Propiedades de applyapriorinode. . . . . . . 271 propiedades de analysisnode . . . . . . . . 313
Propiedades de applyassociationrulesnode . . . 272 propiedades de dataauditnode . . . . . . . 314
Propiedades de applyautoclassifiernode . . . . 272 Propiedades de extensionoutputnode . . . . . 316
Propiedades de applyautoclusternode . . . . . 273 propiedades de matrixnode. . . . . . . . . 317
Propiedades de applyautonumericnode. . . . . 273 propiedades de meansnode. . . . . . . . . 319
Propiedades de applybayesnetnode . . . . . . 273 propiedades de reportnode . . . . . . . . . 320
Propiedades de applyc50node . . . . . . . . 273 propiedades de setglobalsnode . . . . . . . 322
Propiedades de applycarmanode . . . . . . . 274 propiedades de simevalnode . . . . . . . . 322
Propiedades de applycartnode. . . . . . . . 274 propiedades de simfitnode . . . . . . . . . 323
Propiedades de applychaidnode . . . . . . . 274 propiedades de statisticsnode . . . . . . . . 324
Propiedades de applycoxregnode . . . . . . . 275 Propiedades de statisticsoutputnode . . . . . . 325
Propiedades de applydecisionlistnode . . . . . 275 propiedades de tablenode . . . . . . . . . 325
Propiedades de applydiscriminantnode. . . . . 275 propiedades de transformnode . . . . . . . 328
Propiedades de applyextension . . . . . . . 276
Propiedades de applyfactornode . . . . . . . 277
Propiedades de applyfeatureselectionnode. . . . 278
Capítulo 17. Propiedades de nodos
Propiedades de applygeneralizedlinearnode . . . 278 Exportar . . . . . . . . . . . . . 331
Propiedades de applyglmmnode . . . . . . . 278 Propiedades de nodos Exportar comunes . . . . 331
Propiedades de applygle . . . . . . . . . 279 Propiedades de asexport. . . . . . . . . . 331
Propiedades de applykmeansnode . . . . . . 279 Propiedades del nodo de exportación Cognos . . 332
Propiedades de applyknnnode . . . . . . . 280 propiedades de databaseexportnode . . . . . . 334
Propiedades de applykohonennode . . . . . . 280 Propiedades de datacollectionexportnode . . . . 338
Propiedades de applylinearnode . . . . . . . 280 Propiedades de excelexportnode . . . . . . . 338
Propiedades de applylinearasnode . . . . . . 280 Propiedades de extensionexportnode . . . . . 339
Propiedades de applylogregnode . . . . . . . 281 Propiedades de outputfilenode . . . . . . . 340
Propiedades de applylsvmnode . . . . . . . 281 Propiedades de sasexportnode. . . . . . . . 341
Propiedades de applyneuralnetnode . . . . . . 281 Propiedades de statisticsexportnode . . . . . . 342
propiedades de applyneuralnetworknode . . . . 282 Propiedades del nodo tm1odataexport . . . . . 342
Propiedades de applyocsvmnode . . . . . . . 282 Propiedades del nodo tm1export (en desuso) . . . 343
Propiedades de applyquestnode . . . . . . . 282 Propiedades de xmlexportnode . . . . . . . 345
Propiedades applyrandomtrees . . . . . . . 283
Propiedades de applyregressionnode . . . . . 284 Capítulo 18. Propiedades de nodos de
propiedades de applyselflearningnode . . . . . 284 IBM SPSS Statistics . . . . . . . . 347
Propiedades de applysequencenode . . . . . . 284 Propiedades de statisticsimportnode . . . . . . 347
Propiedades de applysvmnode . . . . . . . 284 propiedades de statisticstransformnode . . . . . 347
Propiedades de applystpnode . . . . . . . . 284 propiedades de statisticsmodelnode . . . . . . 348
Propiedades de applytcmnode. . . . . . . . 285 Propiedades de statisticsoutputnode . . . . . . 348
Propiedades applyts . . . . . . . . . . . 285 Propiedades de statisticsexportnode . . . . . . 349
Propiedades applytimeseriesnode (en desuso) . . 285
Propiedades de applytreeas. . . . . . . . . 286
Capítulo 19. Propiedades de nodo
Propiedades de applytwostepnode . . . . . . 286
Propiedades de applytwostepAS . . . . . . . 286 Python . . . . . . . . . . . . . . 351
Propiedades de applyxgboosttreenode . . . . . 287 Propiedades de ocsvmnode. . . . . . . . . 351
Propiedades de applyxgboostlinearnode . . . . 287 Propiedades rfnode . . . . . . . . . . . 353
Propiedades tsnenode . . . . . . . . . . 354

Contenido v
Propiedades de smotenode . . . . . . . . . 356 Literales y comentarios . . . . . . . . . . 372
Propiedades xgboostlinearnode . . . . . . . 357 Operadores . . . . . . . . . . . . . . 372
Propiedades de xgboosttreenode . . . . . . . 358 Comandos condicionales y de bucle . . . . . . 373
Variables . . . . . . . . . . . . . . . 374
Capítulo 20. Propiedades de nodo Tipos modelo, resultado y nodo . . . . . . . 374
Spark . . . . . . . . . . . . . . . 361 Nombres de propiedades . . . . . . . . . 374
Referencias de nodos . . . . . . . . . . . 374
Propiedades isotonicasnode . . . . . . . . 361
Obtener y establecer propiedades. . . . . . . 375
Propiedades xgboostasnode . . . . . . . . 361
Edición de rutas . . . . . . . . . . . . 375
Operaciones de nodo . . . . . . . . . . 376
Capítulo 21. Propiedades de Bucle . . . . . . . . . . . . . . . . 377
supernodo . . . . . . . . . . . . 365 Ejecución de rutas . . . . . . . . . . . . 377
Acceso a objetos mediante el sistema de archivos y
Apéndice A. Referencia de nombres el repositorio . . . . . . . . . . . . . 378
de nodo . . . . . . . . . . . . . . 367 Operaciones de ruta . . . . . . . . . . 379
Nombres de nugget de modelo . . . . . . . 367 Operaciones de modelo . . . . . . . . . 379
Evitar nombres duplicados del modelo . . . . . 369 Operaciones de resultado de documento . . . 379
Nombres de tipo de resultados . . . . . . . 369 Otras diferencias entre scripts heredados y scripts
Python . . . . . . . . . . . . . . . 380
Apéndice B. Migración desde scripts
Avisos . . . . . . . . . . . . . . 381
de herencia a scripts Python. . . . . 371
Marcas comerciales . . . . . . . . . . . 382
Visión general de la migración de scripts de
Términos y condiciones para la documentación del
herencia . . . . . . . . . . . . . . . 371
producto . . . . . . . . . . . . . . . 383
Diferencias generales . . . . . . . . . . . 371
El contexto de los scripts . . . . . . . . . 371
Comparativa de comandos y funciones . . . . . 371 Índice. . . . . . . . . . . . . . . 385

vi IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Capítulo 1. Scripts y lenguaje de scripts
Visión general de scripts
Los scripts en IBM® SPSS Modeler son una herramienta potente para automatizar procesos en la interfaz
de usuario. Los scripts pueden realizar los mismos tipos de acciones que se realizan con el ratón o el
teclado y se utilizan para automatizar tareas que resultarían extremadamente repetitivas o llevarían
mucho tiempo si se realizaran manualmente.

Puede utilizar los scripts para:


v Imponer un orden concreto para la ejecución de nodos en una ruta.
v Establecer propiedades de los nodos y realizar derivaciones usando un subconjunto de CLEM (Control
Language for Expression Manipulation).
v Especificar una secuencia automática de acciones que normalmente implican la interacción del usuario
(por ejemplo, puede generar un modelo y comprobarlo a continuación).
v Configurar procesos complejos que requieren una interacción sustancial del usuario, como los
procedimientos de validación cruzada que requieren una repetitiva generación y comprobación de
modelo.
v Configurar procesos que manipulen rutas; por ejemplo, puede tomar una ruta de entrenamiento de
modelo, ejecutarla y producir la ruta de comprobación del modelo automáticamente.

Este capítulo proporciona descripciones de alto nivel y ejemplos de scripts de nivel de ruta, scripts
autónomos y scripts en Supernodos en la interfaz de IBM SPSS Modeler. Para obtener más información
sobre el lenguaje, la sintaxis y los comandos consulte los capítulos siguientes.

Nota:

No puede importar y ejecutar scripts creados en IBM SPSS Statistics dentro de IBM SPSS Modeler.

Tipos de scripts
IBM SPSS Modeler utiliza tres tipos de scripts:
v Los scripts de la ruta se guardan como una propiedad de ruta y se guardan y se cargan con una ruta
específica. Por ejemplo, puede escribir un script de ruta que automatice el proceso de entrenamiento y
aplicación de un nugget de modelo. También puede especificar que cuando se ejecute una ruta
particular, se ejecute el script, en lugar del contenido del lienzo de la ruta.
v Los scripts autónomos no están asociados a ninguna ruta en particular y se guardan en archivos de
texto externos. Puede utilizar un script autónomo, por ejemplo, para manipular varias rutas a la vez.
v Los scripts Supernodos se guardan como una propiedad de ruta de supernodo. Los scripts
Supernodos sólo están disponibles en supernodos terminales. Puede utilizar un script de supernodo
para controlar la secuencia de ejecución del contenido del supernodo. En supernodos no terminales
(origen o proceso), puede definir propiedades del supernodo o los nodos que contiene en su script de
ruta directamente.

Scripts de ruta
Los scripts se pueden utilizar para personalizar operaciones dentro de una ruta particular y se guardan
con esa ruta. Los scripts de la ruta se pueden utilizar para especificar un orden de ejecución particular
para los nodos terminales de una ruta. El cuadro de diálogo del script de ruta se utiliza para editar el
script que está guardado con la ruta actual.

© Copyright IBM Corp. 1994, 2017 1


Para acceder a la pestaña de scripts de ruta en el cuadro de diálogo Propiedades de ruta:
1. Desde el menú Herramientas, elija:
Propiedades de ruta > Ejecución
2. Pulse en la pestaña Ejecución para trabajar con scripts en la ruta actual.

Utilice los iconos de barra de herramientas en la parte superior del recuadro de diálogo del script de ruta
para las operaciones siguientes:
v Importar el contenido de un script autónomo preexistente en la ventana.
v Guardar un script como archivo de texto.
v Imprimir un script.
v Añadir script predeterminado.
v Editar un script (deshacer, cortar, copiar, pegar y otras funciones de edición comunes).
v Ejecutar el script completo actual.
v Ejecutar líneas concretas de un script.
v Detener un script durante la ejecución. (Este icono sólo está habilitado cuando un script se está
ejecutando).
v Comprobar la sintaxis del script y, si se encuentra algún error, mostrarlos para la revisión en el panel
inferior del recuadro de diálogo.

Nota: A partir de la versión 16.0, SPSS Modeler utiliza el lenguaje de scripts Python. Todas las versiones
anteriores a la 16.0 utilizaban un lenguaje de script exclusivo para SPSS Modeler, al que ahora se
denomina como script de legado. Según el tipo de script con el que trabaje, en la pestaña Ejecución
seleccione la modalidad de ejecución Predeterminada (script opcional) y, a continuación, seleccione
Python o Legacy.

Puede especificar si un script se va a ejecutar o no cuando se ejecuta la ruta. Para ejecutar el script cada
vez que se ejecuta la ruta, respectando el orden de ejecución del script, seleccione Ejecutar este script. De
este modo se proporciona una automatización a nivel de ruta para acelerar la generación del modelo. Sin
embargo, la configuración predeterminada es omitir el script durante la ejecución de la ruta. Incluso si
selecciona la opción Omitir este script, siempre puede ejecutar la ruta directamente desde este cuadro de
diálogo.

El editor de scripts incluye las siguientes características que ayudan a crear scripts:
v Resaltado de sintaxis. Se resaltan las palabras claves, los valores literales (tales como cadenas y
números) y los comentarios.
v Numeración de líneas.
v Coincidencia de bloques. Cuando se coloca el cursor al inicio de un bloque de programa, también se
resalta el bloque final correspondiente.
v Finalización automática sugerida.

Los colores y los estilos de texto que utiliza la función de resaltado de la sintaxis se pueden personalizar
utilizando las preferencias de visualización de IBM SPSS Modeler. Para acceder a las preferencia de
visualización, elija Herramientas > Opciones > Opciones de usuario y seleccione la pestaña Sintaxis.

Se puede acceder a una lista de finalizaciones de sintaxis sugeridas seleccionando la Sugerencia


automática en el menú de contexto o pulsando Ctrl más espacio. Utilice las teclas de cursor para
desplazarse hacia arriba y hacia abajo por la lista y, a continuación, pulse Intro para insertar el texto
seleccionado. Para salir de la modalidad de sugerencia automática sin modificar el texto existente, pulse
Esc.

La pestaña Depurar muestra mensajes de depuración y se puede utilizar para evaluar el estado del script
una vez que se haya ejecutado. La pestaña Depurar está formada por un área de texto de solo lectura y

2 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


un campo de texto de entrada de una sola línea. El área de texto muestra el texto que se envía a la salida
estándar o un error estándar mediante los scripts, por ejemplo, a través del texto del mensaje de error. El
campo de texto de entrada toma la entrada del usuario. Esta entrada se evalúa dentro del contexto del
script que se ha ejecutado más recientemente en el diálogo (conocido como el contexto de los scripts). El
área de texto contiene el comando y la salida resultante, de modo que el usuario puede ver un rastreo de
los comandos. El campo de entrada de texto siempre contiene el indicador de comandos (--> para el
script de legado).

Un contexto de script nuevo se crea en las circunstancias siguientes:


v Se ejecuta un script utilizando Ejecutar este script o Ejecutar líneas seleccionadas.
v Se modifica el lenguaje de script.

Si se crea un nuevo contexto de script, el área de texto se borra.

Nota: La ejecución de una ruta fuera del panel del script no modifica el contexto del script del panel del
script. Los valores de las variables que se han creado como parte de la ejecución no son visibles dentro
del recuadro de diálogo de script.

Ejemplo de script de ruta: entrenamiento de una red neuronal


Una ruta se puede usar para entrenar un modelo de red neuronal cuando se ejecute. Normalmente, para
comprobar el modelo, se inserta el nodo de modelado para agregar el modelo a la ruta, realizar las
conexiones adecuadas y ejecutar el nodo Análisis.

Mediante un script de IBM SPSS Modeler se puede automatizar el proceso de comprobar el nugget de
modelo tras crearlo. Por ejemplo, el siguiente script de ruta para la ruta de demostración [Link]
(disponible en la carpeta /Demos/streams/ de su instalación de IBM SPSS Modeler) se puede ejecutar
desde el cuadro de diálogo de propiedades de ruta (Herramientas > Propiedades de ruta > Ruta):
stream = [Link]()
neuralnetnode = [Link]("neuralnetwork", None)
results = []
[Link](results)
appliernode = [Link](results[0], "Drug", 594, 187)
analysisnode = [Link]("analysis", "Drug", 688, 187)
typenode = [Link]("type", None)
[Link](appliernode, typenode, analysisnode)
[Link]([])

Los puntos siguientes describen cada línea de este ejemplo de script.


v La primera línea define una variable que apunta a la ruta actual.
v En la línea 2, el script busca el nodo generador Red neuronal.
v En la línea 3, el script crea una lista donde los resultados de la ejecución se pueden almacenar.
v En la línea 4, se crea el nugget de modelo Red neuronal. Se almacena en la lista definida en línea 3.
v En la línea 5, se crea un nodo de aplicación de modelo para el nugget de modelo y se coloca en el
lienzo de rutas.
v En la línea 6, se crea un nodo de análisis denominado Drug.
v En la línea 7, el script busca el nodo Type.
v En la línea 8, el script conecta el nodo de aplicación de modelo creado en la línea 5 entre el nodo Type
y el nodo Analysis.
v Finalmente, el nodo Análisis se ejecuta para producir el informe Análisis.

Es posible utilizar un script para crear y ejecutar una ruta desde cero, comenzando con un lienzo vacío.
Para obtener más información sobre el lenguaje de script en general, consulte Conceptos básicos del
lenguaje de scripts.

Capítulo 1. Scripts y lenguaje de scripts 3


Límites de tamaño de código Jython
Jython compila cada script para el código de bytes Java que, a continuación, es ejecutado por la máquina
virtual Java (JVM). Sin embargo, Java impone un límite en el tamaño de un único archivo de código de
bytes. Así, cuando Jython intenta cargar el código de bytes, puede hacer que la JVM se bloquee. IBM
SPSS Modeler no puede evitar que esto suceda.

Asegúrese de escribir los scripts Jython utilizando buenas prácticas de codificación (por ejemplo
minimizando el código duplicado utilizando variables o funciones para calcular valores intermedios
comunes). Si es necesario, puede que sea necesario dividir el código en varios archivos de origen o
definirlo utilizando módulos porque éstos se compilan en archivos de código de bytes independientes.

Scripts autónomos
El cuadro de diálogo script autónomo se usa para crear o editar un script que se ha guardado como
archivo de texto. En él se muestra el nombre del archivo y se proporcionan recursos para la carga,
almacenamiento, importación y ejecución de scripts.

Para acceder al cuadro de diálogo del script autónomo:

En el menú principal, elija:

Herramientas > Script autónomo

Los scripts autónomos y los de ruta comparten las mismas opciones de comprobación de sintaxis de
scripts y barra de herramientas. Consulte el tema “Scripts de ruta” en la página 1 para obtener más
información.

Ejemplo de script autónomo: guardar y cargar un modelo


Los scripts autónomos son útiles para la manipulación de rutas. Presuponga que tiene dos rutas, una que
crea un modelo y otra que usa diagramas para examinar el conjunto de reglas generado a partir de la
primera ruta con campos de datos existentes. Un script autónomo para este escenario tendría un aspecto
similar a éste:
taskrunner = [Link]().getTaskRunner()

# Modify this to the correct Modeler installation Demos folder.


# Note use of forward slash and trailing slash.
installation = "C:/Archivos de programa/IBM/SPSS/Modeler/18.1.1/Demos/"

# First load the model builder stream from file and build a model
druglearn_stream = [Link](installation + "streams/[Link]", True)
results = []
druglearn_stream.findByType("c50", None).run(results)

# Save the model to file


[Link](results[0], "[Link]")

# Now load the plot stream, read the model from file and insert it into the stream
drugplot_stream = [Link](installation + "streams/[Link]", True)
model = [Link]("[Link]", True)
modelapplier = drugplot_stream.createModelApplier(model, "Drug")

# Now find the plot node, disconnect it and connect the


# model applier node between the derive node and the plot node
derivenode = drugplot_stream.findByType("derive", None)
plotnode = drugplot_stream.findByType("plot", None)
drugplot_stream.disconnect(plotnode)

4 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


[Link](derivenode, plotnode)
drugplot_stream.linkBetween(modelapplier, derivenode, plotnode)
[Link]("color_field", "$C-Drug")
[Link]([])

Nota: Para obtener más información sobre el lenguaje de scripts en general, consulte Conceptos básicos
del lenguaje de scripts.

Ejemplo de script autónomo: Generación de un modelo de selección


de características
Comenzando con un lienzo vacío, este ejemplo crea una ruta que genera un modelo de selección de
características, aplica el modelo y crea una tabla que indica los 15 campos más importantes respecto al
objetivo especificado.
stream = [Link]().createProcessorStream("featureselection", True)

statisticsimportnode = [Link]("statisticsimport", "Statistics File", 150, 97)


[Link]("full_filename", "$CLEO_DEMOS/customer_dbase.sav")

typenode = [Link]("type", "Type", 258, 97)


[Link]("direction", "response_01", "Target")

featureselectionnode = [Link]("featureselection", "Feature Selection", 366, 97)


[Link]("top_n", 15)
[Link]("max_missing_values", 80.0)
[Link]("selection_mode", "TopN")
[Link]("important_label", "Check Me Out!")
[Link]("criteria", "Likelihood")

[Link](statisticsimportnode, typenode)
[Link](typenode, featureselectionnode)
models = []
[Link](models)

# Assumes the stream automatically places model apply nodes in the stream
applynode = [Link]("applyfeatureselection", None)
tablenode = [Link]("table", "Table", [Link]() + 96,
[Link]())
[Link](applynode, tablenode)
[Link]([])

El script crea un nodo de origen para leer en los datos, utiliza un nodo Tipo para definir el rol del campo
response_01 hacia Destino y, a continuación, crea y ejecuta un nodo Selección de características. Este
script también conecta cada nodo y posiciones en el lienzo de la ruta para producir un diseño legible. El
nugget de modelo resultante se conecta al nodo Tabla, que indica los 15 campos más importantes, tal y
como determinan las propiedades selection_mode y top_n. Consulte el tema “propiedades de
featureselectionnode” en la página 213 para obtener más información.

Scripts de Supernodo
Puede crear y guardar scripts en cualquier supernodo de terminal utilizando el lenguaje de script de IBM
SPSS Modeler. Estos scripts sólo están disponibles para supernodos terminales y se suelen utilizar cuando
crea rutas de plantilla o para imponer un orden de ejecución especial del contenido del supernodo. Los
scripts de supernodo también permiten ejecutar más de un script en una ruta.

Por ejemplo, supongamos que necesita especificar el orden de ejecución de una ruta compleja y su
supernodo contiene varios nodos, incluyendo un nodo Val. globales, que se debe ejecutar antes de derivar
un nuevo campo utilizado en un nodo Gráfico. En este caso, puede crear un script de supernodo que

Capítulo 1. Scripts y lenguaje de scripts 5


ejecute el nodo Val. globales en primer lugar. Los valores calculados por este nodo, como la media o la
desviación estándar, se pueden usar posteriormente cuando se ejecute el nodo Gráfico.

En un script de Supernodo, puede especificar las propiedades del nodo de la misma manera que otros
scripts. También puede cambiar y definir las propiedades de cualquier supernodo o sus nodos
encapsulados directamente desde un script de ruta. Consulte el tema Capítulo 21, “Propiedades de
supernodo”, en la página 365 para obtener más información. Este método funciona para supernodos de
origen y proceso y supernodos terminales.

Nota: Puesto que solo los supernodos de terminal pueden ejecutar sus propios scripts, la pestaña Scripts
del recuadro de diálogo Supernodo solo está disponible para los supernodos de terminal.

Para abrir el cuadro de diálogo de script de supernodo desde el lienzo principal:

Seleccione un supernodo terminal en el lienzo de rutas y, en el menú de supernodo, seleccione:

Script de Supernodo...

Para abrir el cuadro de diálogo de script de supernodo desde el lienzo de


supernodo aumentado:

Pulse con el botón derecho del ratón en el lienzo del supernodo y en el menú contextual elija:

Script de Supernodo...

Script de supernodo de ejemplo


El siguiente script de supernodo establece el orden en que se ejecutarán los nodos terminales del
supernodo. Este orden garantiza que el nodo Val. globales se ejecuta primero para que los valores que
calcula este nodo se puedan utilizar cuando se ejecute otro nodo.
execute ’Val. globales’
execute ’gains’
execute ’profit’
execute ’age v. $CC-pep’
execute ’Table’

Bloquear y desbloquear supernodos

El ejemplo siguiente ilustra cómo puede bloquear y desbloquear un supernodo:


stream = [Link]()
superNode=[Link](’id854RNTSD5MB’)
# desbloquear un supernodo
print ’unlock the super node with password abcd’
if [Link](’abcd’):
print ’unlocked.’
else:
print ’invalid password.’
# bloquear un supernodo
print ’lock the super node with password abcd’
[Link](’abcd’)

Creación de bucles y ejecución condicional en rutas


A partir de la versión 16.0, SPSS Modeler permite crear scripts básicos desde dentro de una ruta
seleccionando valores en varios cuadros de diálogo en lugar de tener que escribir instrucciones
directamente en lenguaje de script. Los dos principales tipos de script que pueden crearse de este modo
son los bucles sencillos y un modo de ejecutar nodos si se cumple una condición.

6 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


En una misma ruta pueden combinarse bucles y reglas de ejecución condicional. Por ejemplo, suponga
que tiene datos relativos a ventas de vehículos de fabricantes de todo el mundo. Podría crearse un bucle
para procesar los datos en una ruta, identificando los detalles por país del fabricante, y sacar los datos a
distintas gráficas para mostrar detalles tales como volumen de ventas por modelo, niveles de emisión por
fabricante y cilindrada, etc. Si solo le interesara analizar la información procedente de Europa, también
podría añadir condiciones al bucle que impidieran la creación de gráficas de fabricantes procedentes de
América y Asia.

Nota: Puesto que tanto un bucle como una ejecución condicional están basados en scripts de segundo
plano, solo se aplican a una ruta entera cuando se ejecuta.
v Bucles Los bucles pueden utilizarse para automatizar tareas repetitivas. Por ejemplo, esto podría
suponer añadir un determinado número de nodos a una ruta y modificar un parámetro del nodo cada
vez. De forma opcional, podría controlarse la ejecución de una ruta o rama varias veces, como en los
ejemplos siguientes:
– Ejecutar la ruta un determinado número de veces y cambiar el origen cada vez.
– Ejecutar la ruta un determinado número de veces cambiando el valor de una variable cada vez.
– Ejecutar la ruta un determinado número de veces especificando un campo adicional en cada
ejecución.
– Construir un modelo un determinado número de veces y cambiar la configuración del modelo cada
vez.
v Ejecución condicional Puede utilizarse para controlar cómo ejecutan los nodos en función de
condiciones definidas previamente como, por ejemplo:
– Dependiendo de si un determinado valor es verdadero o falso, se controla la ejecución de un nodo.
– Definir si la iteración de nodos se ejecutará en paralelo o de forma secuencial.

Tanto bucles ejecuciones condicionales se configuran en la pestaña Ejecución dentro del cuadro de
diálogo Propiedades de ruta. Los nodos que se utilicen en bucles o de forma condicional aparecerán con
un símbolo adicional en el lienzo de rutas para indicar que forman parte de una ejecución por bucles o
condicional.

Puede accederse a la pestaña Ejecución de tres maneras:


v Mediante los menús de la parte superior del cuadro de diálogo principal:
1. En el menú Herramientas, seleccione:
Propiedades de la ruta > Ejecución.
2. Pulse en la pestaña Ejecución para trabajar con los scripts de la ruta actual.
v Dentro de una ruta:
1. Pulse con el botón derecho en un nodo y seleccione Bucles/Ejecución condicional.
2. Seleccione la opción de submenú que corresponda.
v En la barra de herramientas gráfica de la parte superior del cuadro de diálogo principal, pulse en el
icono de propiedades de ruta.

Si es la primera vez que configura los detalles de un bucle o de una ejecución condicional, en la pestaña
Ejecución seleccione el modo de ejecución Ejecución de bucles/condicional y después seleccione la
subpestaña Condicional o Bucles.

Bucles en rutas
Con la creación de bucles puede automatizar las tareas repetitivas en las rutas, por ejemplo:
v Ejecutar la ruta un determinado número de veces y cambiar el origen cada vez.
v Ejecutar la ruta un determinado número de veces cambiando el valor de una variable cada vez.
v Ejecutar la ruta un determinado número de veces especificando un campo adicional en cada ejecución.

Capítulo 1. Scripts y lenguaje de scripts 7


v Construir un modelo un determinado número de veces y cambiar la configuración del modelo cada
vez.

Configurar las condiciones que deben cumplirse en la subpestaña Bucle de la pestaña Ejecución de la
ruta. Para visualizar la subpestaña, seleccione el modo de ejecución Ejecución en bucle/condicional.

Los requisitos de bucle que defina entrarán en vigor cuando se ejecute la ruta, si se ha establecido la
modalidad de ejecución Ejecución en bucle/condicional. De forma opcional, puede generar el código de
script para los requisitos de bucle y pegarlo en el editor de scripts pulsando Pegar... en el ángulo inferior
derecho de la subpestaña Bucle y la visualización de la pestaña Ejecución principal cambiará para
mostrar la modalidad de ejecución Predeterminada (script opcional) con el script en la parte superior de
la pestaña. Esto significa que puede definir bucles utilizando las diferentes opciones del cuadro de
diálogo de bucle antes de generar un script que puede personalizar adicionalmente en el editor de
scripts. Tenga en cuenta que cuando pulsa Pegar... los requisitos de bucle que ha definido también se
mostrarán en el script generado.

Importante: Las variables de bucle que establezca en una ruta de SPSS Modeler pueden sustituirse si se
ejecuta la ruta en un trabajo IBM SPSS Collaboration and Deployment Services. Esto se debe a que la
entrada del editor del trabajo IBM SPSS Collaboration and Deployment Services sobrescribe la entrada de
SPSS Modeler. Por ejemplo, si se establece una variable de bucle en la ruta para crear un nombre de
archivo de salida diferente para cada bucle, los archivos se especifican correctamente en SPSS Modeler,
pero son sustituidos por la entrada fija especificada en la pestaña Resultado del Gestor de despliegue de
IBM SPSS Collaboration and Deployment Services.

Para configurar un bucle


1. Cree una clave de iteración para definir la estructura principal del bucle principal que se creará en
una ruta. Consulte el tema Crear una clave de iteración para obtener más información.
2. Si es necesario, defina una o varias variables de iteración. Consulte el tema Crear una variable de
iteración para obtener más información.
3. Las iteraciones y las variables que cree se muestran en el cuerpo principal de la subpestaña. De forma
predeterminada, las iteraciones se ejecutan en el orden en que aparecen. Para subir o bajar una
iteración en la lista, pulse la iteración para seleccionarla y, a continuación, utilice la flecha arriba o la
flecha abajo de la columna de la derecha de la subpestaña para cambiar el orden.

Creación de una clave de iteración para bucles de rutas


Utilice una clave de iteración para definir la estructura principal del bucle principal que se creará en una
ruta. Por ejemplo, si está analizando las ventas de automóviles, puede crear un parámetro de ruta País de
fabricación y utilizarlo como la clave de la iteración. Cuando se ejecute la ruta, esta clave se establece en
cada valor de país diferente de sus datos durante cada iteración. Utilice el cuadro de diálogo Definir
clave de iteración para configurar la clave.

Para abrir el cuadro de diálogo, seleccione el botón Clave de iteración... en el ángulo inferior izquierdo
de la subpestaña Bucle o pulse con el derecho cualquier nodo de la ruta y seleccione Ejecución en
bucle/condicional > Definir clave de iteración (campos) o Ejecución en bucle/condicional > Definir
clave de iteración (valores). Si abre el cuadro de diálogo desde la ruta, algunos campos se completan
automáticamente, tales como el nombre del nodo.

Para configurar una clave de iteración, complete los campos siguientes:

Iterar en. Puede seleccionar entre una de las opciones siguientes:


v Parámetro de ruta - Campos. Utilice esta opción para crear un bucle que establezca el valor de un
parámetro de ruta existente en cada campo especificado de forma ordenada.
v Parámetro de ruta - Valores. Utilice esta opción para crear un bucle que establezca el valor de un
parámetro de ruta existente en cada valor especificado de forma ordenada.

8 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


v Propiedad del nodo - Campos. Utilice esta opción para crear un bucle que establezca el valor de una
propiedad de nodo en cada campo especificado de forma ordenada.
v Propiedad del nodo - Valores. Utilice esta opción para crear un bucle que establezca el valor de una
propiedad de nodo en cada valor especificado de forma ordenada.

Qué se ha de establecer. Elija el elemento cuyo valor se establecerá cada vez que se ejecute el bucle.
Puede seleccionar entre una de las opciones siguientes:
v Parámetro. Solo está disponible si se selecciona Parámetro de ruta - Campos o Parámetro de ruta -
Valores. Seleccione el parámetro necesario en la lista disponible.
v Nodo. Solo está disponible si se selecciona Propiedad del nodo - Campos o Propiedad del nodo -
Valores. Seleccione el nodo para el que desee configurar un bucle. Pulse el botón Examinar para abrir
el diálogo Seleccionar nodo y elija el nodo que desee. Si hay demasiados nodos en la lista, puede filtrar
la visualización para que únicamente se muestren los nodos de una de las siguientes categorías:
Origen, Proceso, Gráfico, Modelado, Resultados o Aplicar modelo.
v Propiedad. Solo está disponible si se selecciona Propiedad del nodo - Campos o Propiedad del nodo -
Valores. Seleccione la propiedad del nodo en la lista disponible.

Campos de uso. Solo está disponible si se selecciona Parámetro de ruta - Campos o Propiedad del nodo
- Campos. Seleccione el campo o los campos de un nodo que se utilizarán para proporcionar los valores
de iteración. Puede seleccionar entre una de las opciones siguientes:
v Nodo. Solo está disponible si se selecciona Parámetro de ruta - Campos. Seleccione el nodo que
contiene los detalles para los que desea configurar un bucle. Pulse el botón Examinar para abrir el
diálogo Seleccionar nodo y elija el nodo que desee. Si hay demasiados nodos en la lista, puede filtrar la
visualización para que únicamente se muestren los nodos de una de las siguientes categorías: Origen,
Proceso, Gráfico, Modelado, Resultados o Aplicar modelo.
v Lista de campos. Pulse el botón de lista de la columna derecha para visualizar el cuadro de diálogo
Seleccionar campos, donde puede seleccionar los campos del nodo para proporcionar los datos de
iteración. Para obtener más información, consulte “Selección de campos en iteraciones” en la página 10.

Valores de uso. Solo está disponible si se selecciona Parámetro de ruta - Valores o Propiedad del nodo -
Valores. En el campo seleccionado, seleccione el o los valores que se utilizarán como valores de iteración.
Puede seleccionar entre una de las opciones siguientes:
v Nodo. Solo está disponible si se selecciona Parámetro de ruta - Valores. Seleccione el nodo que
contiene los detalles para los que desea configurar un bucle. Pulse el botón Examinar para abrir el
diálogo Seleccionar nodo y elija el nodo que desee. Si hay demasiados nodos en la lista, puede filtrar la
visualización para que únicamente se muestren los nodos de una de las siguientes categorías: Origen,
Proceso, Gráfico, Modelado, Resultados o Aplicar modelo.
v Lista de campos. Seleccione el campo del nodo para proporcionar los datos de iteración.
v Lista de valores. Pulse el botón de lista de la columna derecha para visualizar el cuadro de diálogo
Seleccionar valores, donde puede seleccionar los valores del campo para proporcionar los datos de
iteración.

Creación de una variable de iteración para bucles de rutas


Puede utilizar variables de iteración para cambiar los valores de los parámetros o las propiedades de ruta
de los nodos seleccionados en una ruta, cada vez que se ejecute un bucle. Por ejemplo, si el bucle de ruta
está analizando los datos de ventas de automóviles y utiliza País de fabricación como clave de iteración,
puede tener un gráfico de resultados que muestre las ventas por modelo y otro gráfico de resultados que
muestre información sobre emisiones contaminantes. En estos casos puede crear variables de iteración
que creen nuevos títulos para los gráficos resultantes, tales como Emisiones de vehículos suecos y Ventas de
automóviles japoneses por modelo. Utilice el cuadro de diálogo Definir variable de iteración para configurar
las variables que necesite.

Capítulo 1. Scripts y lenguaje de scripts 9


Para abrir el cuadro de diálogo, seleccione el botón Añadir variable... en el ángulo superior izquierdo de
la subpestaña Bucle, o pulse con el botón derecho cualquier nodo de la ruta y seleccione Ejecución en
bucle/condicional > Definir variable de iteración.

Para configurar una variable de iteración, complete los campos siguientes:

Cambiar. Seleccione el tipo de atributo que desea enmendar. Puede elegir Parámetro de ruta o Propiedad
del nodo.
v Si selecciona Parámetro de ruta, elija el parámetro necesario y, a continuación, utilizando una de las
opciones siguientes, si están disponibles en su ruta, defina cómo se debe establecer el valor de dicho
parámetro con cada iteración del bucle:
– Variable global. Seleccione la variable global en la que se debe establecer el parámetro de ruta.
– Casilla de resultados de tabla. Para que un parámetro de ruta sea el valor de una casilla de
resultados de tabla, seleccione la tabla en la lista y especifique la Fila y la Columna que se han de
utilizar.
– Especificar manualmente. Seleccione esta opción si desea especificar manualmente el valor que
tomará este parámetro en cada iteración. Cuando regrese a la subpestaña Bucle se habrá creado una
columna nueva en la que puede especificar el texto necesario.
v Si selecciona Propiedad del nodo, elija el nodo necesario y una de sus propiedades, a continuación,
establezca el valor que desea que se utilice para dicha propiedad. Establezca el nuevo valor de la
propiedad utilizando una de las opciones siguientes:
– Solo. El valor de la propiedad utilizará el valor de la clave de iteración. Para obtener más
información, consulte “Creación de una clave de iteración para bucles de rutas” en la página 8.
– Como prefijo de tallo. Utiliza el valor de la clave de iteración como un prefijo para lo que
especifique en el campo Tallo.
– Como sufijo de tallo. Utiliza el valor de la clave de iteración como un sufijo para lo que especifique
en el campo Tallo.
Si selecciona la opción de prefijo o de sufijo se le solicitará que añada el texto adicional en el campo
Tallo. Por ejemplo, si el valor de la clave de iteración es País de fabricación y selecciona Como prefijo
de tallo, puede entrar - ventas por modelo en este campo.

Selección de campos en iteraciones


Cuando se crean iteraciones pueden seleccionarse uno o más campos mediante el cuadro de diálogo
Seleccionar campos.

Ordenar por: puede ordenar campos disponibles para su visualización eligiendo una de las siguientes
opciones:
v Natural: el orden de los campos es aquél en que pasaron desde la parte anterior de la ruta de datos al
nodo actual.
v Nombre: ordena los campos siguiendo un orden alfabético para su visualización.
v Tipo: ordena los campos en función de su nivel de medición. Esta opción es útil cuando se seleccionan
campos con un nivel de medición en particular.

Seleccione los campos de la lista de uno en uno o mantenga pulsada la tecla Mayús o Ctrl mientras
selecciona otros campos para seleccionar varios campos. También puede utilizar los botones que se
muestran bajo la lista para seleccionar grupos de campos en función de su nivel de medición o
seleccionar y anular la selección de todos los campos de la tabla.

Tenga en cuenta que los campos disponibles para su selección se filtran para mostrar solo los campos que
son adecuados para el parámetro de ruta o la propiedad de nodo que se están utilizando. Por ejemplo, si
se está utilizando un parámetro de ruta que tiene un tipo de almacenamiento de cadena, solo se
mostrarán los campos que tengan un tipo de almacenamiento de cadena.

10 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Ejecución condicional en rutas
Con la ejecución condicional puede controlar cómo se ejecutan los nodos terminales, en función de las
condiciones de coincidencia de contenido de ruta que defina. Ejemplos de ello pueden ser los siguientes:
v Dependiendo de si un determinado valor es verdadero o falso, se controla la ejecución de un nodo.
v Definir si la iteración de nodos se ejecutará en paralelo o de forma secuencial.

Configurar las condiciones que deben cumplirse en la subpestaña Condicional de la pestaña Ejecución de
la ruta. Para visualizar la subpestaña, seleccione el modo de ejecución Ejecución en bucle/condicional.

Los requisitos de ejecución condicional que defina entrarán en vigor cuando se ejecute la ruta, si se ha
establecido la modalidad de ejecución Ejecución en bucle/condicional. De forma opcional, puede generar
el código de script para los requisitos de ejecución condicional y pegarlo en el editor de scripts pulsando
Pegar... en el ángulo inferior derecho de la subpestaña Condicional; la visualización de la pestaña
Ejecución principal cambiará para mostrar la modalidad de ejecución Predeterminada (script opcional)
con el script en la parte superior de la pestaña. Esto significa que puede definir condiciones utilizando las
diferentes opciones del cuadro de diálogo de bucle antes de generar un script que puede personalizar
adicionalmente en el editor de scripts. Tenga en cuenta que cuando pulsa Pegar... los requisitos de bucle
que ha definido también se mostrarán en el script generado.

Para configurar una condición:


1. En la columna de la derecha de la subpestaña Condicional, pulse el botón Añadir condición nueva

para abrir el cuadro de diálogo Añadir sentencia de ejecución condicional. En este diálogo
especifica la condición que se debe cumplir para que se ejecute el nodo.
2. En el cuadro de diálogo Sentencia de ejecución condicional, especifique lo siguiente:
a. Nodo. Seleccione el nodo para el que desee configurar una ejecución condicional. Pulse el botón
Examinar para abrir el diálogo Seleccionar nodo y elija el nodo que desee. Si hay demasiados
nodos en la lista, puede filtrar la visualización para que únicamente se muestren los nodos de una
de las siguientes categorías: Exportar, Gráfico, Modelado o Resultados.
b. Condición basada en. Especifique la condición que se debe cumplir para que se ejecute el nodo.
Puede elegir una de estas cuatro opciones: Parámetro de ruta, Variable global, Casilla de
resultados de tabla o Siempre verdadero. Los detalles que especifique en la mitad inferior del
cuadro de diálogo están controlados por la condición que elija.
v Parámetro de ruta. Seleccione el parámetro de la lista disponible y, a continuación, seleccione el
Operador para ese parámetro; por ejemplo, el operador puede ser Más, Igual, Menor que, Entre,
etc. A continuación especifique el Valor, o los valores mínimos o máximos, dependiendo del
operador seleccionado.
v Variable global. Seleccione la variable de la lista disponible; por ejemplo, esto podría incluir:
Media, Suma, Valor mínimo, Valor máximo o Desviación estándar. A continuación, seleccione
Operador y los valores necesarios.
v Casilla de resultados de tabla. Seleccione el nodo de tabla de la lista disponible y, a
continuación, seleccione la Fila y la Columna en la tabla. A continuación, seleccione Operador y
los valores necesarios.
v Siempre verdadero. Seleccione esta opción si siempre se ha de ejecutar el nodo. Si selecciona
esta opción, no hay parámetros adicionales que seleccionar.
3. Repita los pasos 1 y 2 tantas veces como sea necesario hasta que haya configurado todas las
condiciones que requiere. El nodo que ha seleccionado y la condición que se debe cumplir antes de
que se ejecute el nodo se muestran en el cuerpo principal de la subpestaña de las columnas Ejecutar
nodo y Si esta condición es verdadera respectivamente.
4. De forma predeterminada, los nodos y las condiciones se ejecutan en el orden en que aparecen. Para
subir o bajar un nodo y condición en la lista, pulse el nodo para seleccionarlo y, a continuación, utilice
la flecha arriba o la flecha abajo en la columna de la derecha de la subpestaña para cambiar el orden.

Capítulo 1. Scripts y lenguaje de scripts 11


Además, puede establecer las siguientes opciones en la parte inferior de la subpestaña Condicional:
v Evaluar todo en orden. Seleccione esta opción para evaluar cada condición en el orden en que se
muestra en la subpestaña. Los nodos para los que se han encontrado condiciones que son "True" se
ejecutarán una vez evaluadas todas las condiciones.
v Ejecutar uno por uno. Sólo está disponible si se selecciona Evaluar todo en orden. Si se selecciona
significa que si la condición se evalúa como "True", el nodo asociado con esa condición se ejecutará
antes de que se evalúe la siguiente condición.
v Evaluar hasta primer acierto. Si se selecciona, significa que solo se ejecutará el primer nodo cuya
evaluación de las condiciones devuelva el valor "True".

Ejecutar e interrumpir scripts


Existen diversas formas de ejecutar scripts. Por ejemplo, en el script de ruta o en el cuadro de diálogo del
script, el botón "Ejecutar este script" ejecuta el script completo:

Figura 1. Botón Ejecutar este script

El botón "Ejecutar líneas seleccionadas" ejecuta una única línea, o un bloque de líneas adyacentes, que ha
seleccionado en el script:

Figura 2. Botón Ejecutar líneas seleccionadas

Un script se puede ejecutar mediante cualquiera de los siguientes métodos:


v Pulse en el botón "Ejecutar este script" o "Ejecutar líneas seleccionadas" dentro de un script de ruta o
un cuadro de diálogo de script.
v Ejecutando una ruta donde Ejecutar este script esté establecido como el método de ejecución
predeterminado.
v Utilizando la marca -execute al inicio en modo interactivo. Consulte el tema “Utilización de
argumentos de la línea de comandos” en la página 63 para obtener más información.

Nota: Un script de supernodo se ejecuta cuando el supernodo se ejecuta, siempre que haya seleccionado
Ejecutar este script en el recuadro de diálogo Script de supernodo.

Interrumpir ejecución de script

En el cuadro de diálogo de scripts de ruta, se activará el botón rojo de detención durante la ejecución de
scripts. Pulsando este botón, puede abandonar la ejecución del script y de cualquier ruta actual.

Buscar y reemplazar
El cuadro de diálogo Buscar/reemplazar está disponible en lugares donde edita texto de script o de
expresión, incluido el editor de scripts, el generador de expresiones CLEM o cuando define una plantilla
en el nodo Informe. Cuando edite texto en cualquiera de estas áreas, pulse Ctrl para acceder al cuadro
de diálogo, asegurándose de que el cursor está centrado en un área de texto. Por ejemplo, si trabaja en un
nodo Rellenar, puede acceder al cuadro de diálogo desde cualquiera de las áreas de texto de la pestaña
Configuración o desde el campo de texto del generador de expresiones.
1. Con el cursor en un área de texto, pulse Ctrl+F para acceder al cuadro de diálogo Buscar/reemplazar.

12 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


2. Introduzca el texto que desee buscar o selecciónelo de la lista desplegable de elementos buscados
recientemente.
3. Introduzca el texto de reemplazo, si lo tiene.
4. Pulse en Buscar siguiente para iniciar la búsqueda.
5. Pulse en Reemplazar para reemplazar la sección actual o en Reemplazar todos para actualizar todas
las instancias o sólo las seleccionadas.
6. El cuadro de diálogo se cierra después de cada operación. Pulse F3 desde cualquier área de texto para
repetir la operación de búsqueda más reciente o pulse Ctrl+F para volver a acceder al cuadro de
diálogo.

Opciones de búsqueda

Coincidir mayúsculas y minúsculas. Especifica si la operación de búsqueda hace distinción entre


mayúsculas y minúsculas; por ejemplo, si mivar es igual que miVar. El texto de reemplazo siempre se
introduce exactamente como se ha introducido, independientemente de este ajuste.

Sólo palabras completas. Especifica si la operación de búsqueda tiene en cuenta el texto incluido dentro
de las palabras. Por ejemplo, si se selecciona, la búsqueda de fuego no será igual que cortafuegos ni que
corta-fuegos.

Expresiones regulares. Especifica si se utiliza la sintaxis de expresiones regulares (consulte la sección


siguiente). Si está seleccionado, la opción Sólo palabras completas está desactivada y su valor se ignora.

Sólo texto seleccionado. Controla el ámbito de la búsqueda al utilizar la opción Reemplazar todos.

Sintaxis de expresiones regulares

Las expresiones regulares le permiten buscar caracteres especiales como caracteres de tabulador o de
nueva línea, clases o rangos de caracteres como de la a a la d, cualquier dígito o no dígito y límites como
el principio o el final de una línea. Se admiten los siguientes tipos de expresiones.
Tabla 1. Coincidencias de caracteres.
Caracteres Coincidencias
x El carácter x
\\ El carácter de barra inclinada invertida
\0n El carácter con valor octal 0n (0 <= n <= 7)
\0nn El carácter con valor octal 0nn (0 <= n <= 7)
\0mnn El carácter con valor octal 0mnn (0 <= m <= 3, 0 <= n <= 7)
\xhh El carácter con valor hexadecimal 0xhh
\uhhhh El carácter con valor hexadecimal 0xhhhh
\t El carácter de tabulador ('\u0009')
\n El carácter de nueva línea (avance de línea) ('\u000A')
\r El carácter de retorno de carro ('\u000D')
\f El carácter de avance de página ('\u000C')
\a El carácter de alerta (campana) ('\u0007')
\e El carácter de escape ('\u001B')
\cx El carácter de control correspondiente a x

Capítulo 1. Scripts y lenguaje de scripts 13


Tabla 2. Clases de caracteres coincidentes.
Clases de caracteres Coincidencias
[abc] a, b o c (clase simple)
[^abc] Cualquier carácter excepto a, b o c (resta)
[a-zA-Z] De la a a la z o de la A a la Z, ambas inclusive (rango)
[a-d[m-p]] De la a a la d o de la m a la p (unión). Esto también puede especificarse como
[a-dm-p].
[a-z&&[def]] De la a a la z y d, e o f (intersección)
[a-z&&[^bc]] De la a a la z, excepto b y c (resta). Esto también puede especificarse como
[ad-z].
[a-z&&[^m-p]] De la a a la z y no de la m a la p (resta). Esto también puede especificarse
como [a-lq-z].

Tabla 3. Clases de caracteres predefinidas.


Clases de caracteres predefinidas Coincidencias
. Cualquier carácter (puede o no coincidir con los terminadores de línea)
\d Cualquier dígito: [0-9]
\D Un no dígito: [^0-9]
\s Un carácter de espacio en blanco: [ \t\n\x0B\f\r]
\S Un carácter de espacio en blanco: [^\s]
\w Un carácter de palabra: [a-zA-Z_0-9]
\W Un carácter que no sea de palabra: [^\w]

Tabla 4. Coincidencias de límite.


Reconocedores de límite Coincidencias
^ El comienzo de una línea
$ El final de una línea
\b Un límite alfabético
\B Un límite no alfabético
\A El comienzo de la entrada
\Z El final de la entrada pero para el terminador final, si lo hay
\z El final de la entrada

14 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Capítulo 2. Language de scripts
Visión general de lenguaje de script
El recurso de scripts para IBM SPSS Modeler le permite crear scripts que funcionen en la interfaz de
usuario de SPSS Modeler, manipular los objetos de salida y ejecutar la sintaxis de comandos. Puede
ejecutar scripts directamente desde SPSS Modeler.

Los scripts de IBM SPSS Modeler están escritos en el lenguaje de script Python. La implementación Java
de Python que IBM SPSS Modeler se denomina Jython. El lenguaje de script consta de las siguientes
características:
v Un formato para hacer referencia a nodos, rutas, proyectos, resultados y otros objetos de IBM SPSS
Modeler.
v Un conjunto de instrucciones o comandos de scripts que se puede utilizar para manipular tales objetos.
v Un lenguaje de expresión de script para establecer los valores de las variables, los parámetros y otros
objetos.
v Compatibilidad con comentarios, continuaciones y bloques de texto literal.

Las secciones siguientes describen el lenguaje de scripts Python, la implementación de Jython por parte
de Python y la sintaxis básica para empezar a crear scripts en IBM SPSS Modeler. Las secciones siguientes
recogen información sobre comandos y propiedades específicas.

Python y Jython
Jython es una implementación del lenguaje de scripts Python, escrito en el lenguaje Java e integrado con
la plataforma Java. Python es un potente lenguaje de script orientado a objetos. Jython es útil porque
proporciona las características de productividad de un lenguaje de script maduro y, a diferencia de
Python, se ejecuta en cualquier entorno que soporte una máquina virtual Java (JVM). Esto significa que
las bibliotecas Java de la máquina virtual Java están disponibles para utilizarlas cuando se escriben
programas. Con Jython, puede beneficiarse de esta diferencia y utilizar la sintaxis y la mayoría de las
características del lenguaje Python.

Como lenguaje de script, Python (y su implementación Jython) es fácil de aprender y ofrece una
codificación eficaz con la estructura mínima necesaria para crear un programa de ejecución. El código se
puede entrar de forma interactiva, es decir, una línea cada vez. Python es un lenguaje de script
interpretado; no hay ningún paso de precompilación, tal como existe en Java. Los programas de Python
simplemente son archivos de texto que se interpretan a medida que se entran (después de analizar los
errores de sintaxis). Las expresiones simples, tales como los valores definidos, y también las acciones más
complejas, tales como las definiciones de función, se ejecutan y están disponibles para su uso de forma
inmediata. Los cambios realizados en el código se pueden probar fácilmente. Sin embargo, la
interpretación del script tiene algunas desventajas. Por ejemplo, utilizar una variable no definida no es un
error del compilador, por lo tanto solo se detecta si (y cuando) se ejecuta la sentencia en la que se utiliza
la variable. En este caso, se puede editar y ejecutar el programa para depurar el error.

Python lo ve todo como un objeto, incluidos todos los datos y el código. Por lo tanto, puede manipular
estos objetos con líneas de código. Algunos tipos de selección, tales como los números y cadenas, se
consideran valores y no objetos, lo cual resulta más práctico, y Python da soporte a todo ello. Se da
soporte a un valor nulo. Este valor nulo tiene el nombre reservado de None.

Para obtener una introducción más detallada del lenguaje de script Python y Jython y algunos scripts de
ejemplo, consulte el tema [Link]
y el tema [Link] .

15
Scripts de Python
Esta guía del lenguaje de script de Python es una introducción a los componentes que tienen más
probabilidad de ser utilizados cuando se ejecutan scripts en IBM SPSS Modeler, incluidos conceptos y
principios básicos de programación. Le proporcionará los conocimientos suficientes para comenzar a
desarrollar sus propios scripts Python y utilizarlos en IBM SPSS Modeler.

Operaciones
a asignación se realiza mediante un signo de igual (=). Por ejemplo, para asignar el valor "3" a una
variable llamada "x" debe utilizar la siguiente sentencia:
x = 3

El signo igual también se utiliza para asignar datos de tipo de cadena a una variable. Por ejemplo, para
asignar el valor "a string value" a la variable "y" utilice la sentencia siguiente:
y = "a string value"

La tabla siguiente enumera algunas de las operaciones numéricas y de comparación utilizadas con más
frecuencia y sus descripciones.
Tabla 5. Operaciones numéricas y de comparación comunes
Operación Descripción
x < y ¿Es x menor que y?
x > y ¿Es x mayor que y?
x <= y ¿Es x menor que o igual a y?
x >= y ¿Es x mayor que o igual a y?
x == y ¿Es x igual a y?
x != y ¿Es x no igual a y?
x <> y ¿Es x no igual a y?
x + y Sumar y a x
x - y Restar y de x
x * y Multiplicar x por y
x / y Dividir x por y
x ** y Elevar x a la potencia de y

Listas
Las listas son secuencias de elementos. Una lista puede contener cualquier número de elementos, y los
elementos de la lista pueden ser cualquier tipo de objeto. Las listas también se pueden considerar como
matrices. El número de elementos de una lista puede aumentar o disminuir a medida que se añaden,
eliminan o sustituyen elementos.

Ejemplos

[] Cualquier lista vacía.


[1] Una lista con un solo elemento, un entero.
["Mike", 10, "Don", 20] Una lista con cuatro elementos, dos elementos de cadena
y dos elementos de entero.
[[],[7],[8,9]] Una lista de listas. Cada sublista es una lista vacía o una
lista de elementos de enteros.

16 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


x = 7; y = 2; z = 3; Una lista de enteros. Este ejemplo muestra el uso de
[1, x, y, x + y] variables y expresiones.

Puede asignar una lista a una variable, por ejemplo:


mylist1 = ["one", "two", "three"]

A continuación, puede acceder a los elementos específicos de la lista, por ejemplo:


mylist[0]

Esto genera el resultado siguiente:


one

El número entre corchetes ([]) se considera un index y hace referencia a un elemento concreto de la lista.
Los elementos de una lista se indexan a partir de 0.

También puede seleccionar un rango de elementos de una lista; esto se denomina porciones. Por ejemplo,
x[1:3] selecciona el segundo y el tercer elemento de x. El índice final es uno más allá de la selección.

Cadenas
Una cadena es una secuencia inmutable de caracteres que se trata como un valor. Las cadenas dan soporte
a todas las funciones de secuencias inmutables y operadores que generan como resultado una nueva
serie. Por ejemplo, "abcdef"[1:4] da como resultado la salida "bcd".

En Python, los caracteres se representan mediante cadenas de caracteres de longitud uno.

Los literales de cadenas se definen mediante comillas simples o triples. Las cadenas definidas mediante
comillas simples no pueden abarcar líneas, mientras que las series definidas mediante comillas triples sí
que pueden. Una cadena puede estar entre comillas simples (’) o entre comillas dobles ("). Un carácter
entrecomillado puede contener el otro carácter entrecomillado o el carácter entrecomillado de escape, que
es el carácter de barra invertida (\).

Ejemplos
"Esta es una cadena"
’Esta también es una cadena’
"Es una cadena"
’Este manual se titula "Guía de scripts y automatización Python".’
"Estas son comillas de escape (\") en una cadena entrecomillada"

El analizador de Python automáticamente concatena varias cadenas separadas por un espacio en blanco.
Esto facilita la entrada se cadenas largas y la combinación de tipos de comillas en una sola cadena, por
ejemplo:
"Esta cadena utiliza ’ y " ’esta cadena utiliza ".’

Esto resulta en la siguiente salida:


Esta cadena utiliza ’ y esa cadena utiliza ".

Las cadenas dan soporte a varios métodos útiles. Algunos de estos métodos se proporcionan en la tabla
siguiente.
Tabla 6. Métodos de serie
Método Uso
[Link]() Mayúscula inicial s
[Link](ss {,start {,end}}) Recuento de apariciones de ss en s[start:end]

Capítulo 2. Language de scripts 17


Tabla 6. Métodos de serie (continuación)
Método Uso
[Link](str {, start {, end}}) Probar si s comienza por str
[Link](str {, start {, end}}) Probar si s acaba en str
[Link]({size}) Sustituir tabulaciones por espacios, el valor
predeterminado de size es 8
[Link](str {, start {, end}}) Busca el primer índice de str en s; si no se encuentra, el
[Link](str {, start {, end}}) resultado es -1. rfind busca de derecha a izquierda.
[Link](str {, start {, end}}) Busca el primer índice de str en s; si no se encuentra: se
[Link](str {, start {, end}}) genera ValueError. rindex busca de derecha a izquierda.
[Link] Probar si la cadena es alfanumérica
[Link] Probar si la cadena es alfabética
[Link] Probar si la cadena es numérica
[Link] Probar si la cadena está toda en mayúsculas
[Link] Probar si la cadena está toda en minúsculas
[Link] Probar si la cadena está toda en espacios en blanco
[Link] Probar si la cadena es una secuencia de cadenas
alfanuméricas con mayúscula inicial
[Link]() Convertir todo a minúsculas
[Link]() Convertir todo a mayúsculas
[Link]() Convertir de mayúsculas a minúsculas o viceversa
[Link]() Convertir todo a mayúsculas o minúsculas del título
[Link](seq) Unir las cadenas de seq con s como separador
[Link]({keep}) Dividir s en líneas, si keep es true, mantener las nuevas
líneas
[Link]({sep {, max}}) Dividir s en "palabras" utilizando sep (el valor
predeterminado de sep es un espacio en blanco) para un
máximo de max veces
[Link](width) Justificar cadena a izquierda ancho de campo width
[Link](width) Justificar cadena a derecha ancho de campo width
[Link](width) Justificar cadena al centro ancho de campo width
[Link](width) Rellenar con 0.
[Link]() Eliminar espacios en blanco iniciales
[Link]() Eliminar espacios en blanco de cola
[Link]() Eliminar espacios en blanco iniciales y de cola
[Link](str {,delc}) Traducir s utilizando la tabla, después eliminar cualquier
carácter de delc. str debe ser una cadena con una
longitud de == 256.
[Link](old, new {, max}) Sustituye todas las apariciones de max de la cadena old
por la cadena new

Observaciones
Los comentarios se introducen con el signo de almohadilla (#) o hash. Todo el texto que sigue al signo de
almohadilla en la misma línea se considera parte del comentario y se omite. Un comentario puede
comenzar en cualquier columna. El ejemplo siguiente muestra el uso de los comentarios:
#The HelloWorld application is one of the most simple
print ’Hello World’ # print the Hello World line

18 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Sintaxis de las sentencias
La sintaxis de las sentencias para Python es muy sencilla. En general, cada línea de origen es una sola
sentencia. A excepción de las sentencias expression y assignment, cada sentencia se introduce mediante
un nombre de palabra clave, tal como if o for. Las líneas en blanco o las líneas de comentarios se
pueden insertar en cualquier lugar entre cualquier sentencia del código. Si existe más de una sentencia en
una línea, cada sentencia debe estar separada por un signo de punto y coma (;).

Las sentencias muy largas puede continuar en más de una línea. En este caso, la sentencia que ha de
continuar en la línea siguiente debe acabar con una barra invertida (\), por ejemplo:
x = "A loooooooooooooooooooong string" + \
"another looooooooooooooooooong string"

Cuando una estructura está encerrada entre paréntesis (()), corchetes ([]) o llaves ({}), la sentencia puede
continuar en una línea nueva después de cualquier coma, sin tener que insertar una barra invertida, por
ejemplo:
x = (1, 2, 3, "hello",
"goodbye", 4, 5, 6)

Identificadores
Los identificadores se utilizan para el nombre de las variables, funciones, clases y palabras clave. Los
identificadores pueden tener cualquier longitud, pero debe empezar con un carácter alfabético en
mayúsculas o minúsculas o el carácter de subrayado (_). Los nombres que empiezan con un carácter de
subrayado están generalmente reservados para los nombres internos o privados. Después del primer
carácter, el identificador puede contener cualquier número y combinación de caracteres alfabéticos, los
números del 0-9, y el carácter de subrayado.

Existen algunas palabras reservadas en Jython que no se pueden utilizar para el nombre de variables,
funciones o clases. Estas palabras entran en las siguientes categorías:
v Introducciones de sentencias: assert, break, class, continue, def, del, elif, else, except, exec,
finally, for, from, global, if, import, pass, print, raise, return, try y while
v Introducciones de parámetros: as, import y in
v Operadores: and, in, is, lambda, not y or

El uso incorrecto de palabras claves suele generar SyntaxError.

Bloques de código
Bloques de código son grupos de sentencias que se utilizan donde se esperan sentencias individuales. Los
bloques de código pueden seguir a cualquiera de las sentencias siguientes: if, elif, else, for, while, try,
except, def y class. Estas sentencias introducen el bloque de código con el carácter de dos puntos (:),
por ejemplo:
if x == 1:
y = 2
z = 3
elif:
y = 4
z = 5

Se utiliza la indentación para delimitar los bloques de código (en lugar de las llaves que se utilizan en
Java). Todas las líneas de un bloque han de indentarse en la misma posición. Esto es debido a que un
cambio en la indentación indica el final de un bloque de código. Normalmente la indentación es de
cuatro espacios por nivel. Se recomienda utilizar espacios para la indentación, en lugar de tabulaciones.
No se deben combinar espacios y tabulaciones. Las líneas del bloque de un módulo situado más al
extremo deben comenzar en la columna uno, de lo contrario, se genera el error SyntaxError.

Capítulo 2. Language de scripts 19


Las sentencias que componen un bloque de código (y siguen el signo de dos puntos) también deben estar
en una sola línea, separadas por signos de punto y coma, por ejemplo:
if x == 1: y = 2; z = 3;

Pasar argumentos a un script


Pasar argumentos a un script puede resultar útil para poder utilizar un script reiteradamente sin
modificarlo. Los argumentos se pasan en la línea de comandos como valores de la lista [Link]. El
número de valores que se pasan se puede obtener mediante el comando len([Link]). Por ejemplo:
import sys
print "test1"
print [Link][0]
print [Link][1]
print len([Link])

En este ejemplo, el comando import importa toda la clase sys, por lo que se pueden utilizar los métodos
existentes para esta clase, tales como argv.

El script de este ejemplo se puede invocar utilizando la línea siguiente:


/u/mjloos/test1 mike don

Esto genera el resultado siguiente:


/u/mjloos/test1 mike don
test1
mike
don
3

Ejemplos
La palabra clave print imprime los argumentos situados inmediatamente después de la misma. Si la
sentencia va seguida de una coma, no se incluye una línea nueva en los resultados. Por ejemplo:
print "Esto muestra el uso de una",
print " coma al final de una sentencia de impresión."

Esto genera el resultado siguiente:


Esto muestra el uso de una coma al final de una sentencia de impresión.

La sentencia for se utiliza para la iteración por un bloque de código. Por ejemplo:
mylist1 = ["one", "two", "three"]
for lv in mylist1:
print lv
continue

En este ejemplo, se asignan tres cadenas a la lista mylist1. Los elementos de la lista se imprimen a
continuación, con un elemento de cada línea. Esto genera el resultado siguiente:
uno
two
tres

En este ejemplo, el iterador lv toma el valor de cada elemento de la lista mylist1 por orden, mientras el
bucle for implementa el bloque de código de cada elemento. Un iterador puede ser cualquier
identificador válido de cualquier longitud.

La sentencia if es una sentencia condicional. Evalúa la condición y devuelve true o false, en función del
resultado de la evaluación. Por ejemplo:

20 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


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

En este ejemplo, se evalúa el valor del iterador lv. Si el valor de lv es two se devuelve una cadena
diferente a la cadena que se devuelve si el valor de lv no es two. Esto resulta en la siguiente salida:
The value of lv is not two, but one
The value of lv is two
The value of lv is not two, but three

Métodos matemáticos
Desde el módulo matemáticas puede acceder a métodos matemáticos útiles. Algunos de estos métodos se
proporcionan en la tabla siguiente. A menos que se especifique lo contrario, todos los valores se
devuelven como valores flotantes.
Tabla 7. Métodos matemáticos
Método Uso
[Link](x) Devuelve el punto más alto de x como un valor flotante,
que es el entero más pequeño mayor o igual a x
[Link](x, y) Devuelve x con el signo de y. copysign(1, -0.0)
devuelve -1
[Link](x) Devuelve el valor absoluto de x
[Link](x) Devuelve el factor de x. Si x es negativo o no es un
entero, se genera ValueError.
[Link](x) Devuelve el punto más bajo de x como un valor flotante,
que es el entero más alto menor o igual a x
[Link](x) Devuelve la mantisa (m) y el exponente (e) de x como el
par (m, e). m es un valor flotante y e es un entero, tal
como x == m * 2**e exactamente. Si x es cero, devuelve
(0,0, 0), de lo contrario 0,5 <= abs(m) < 1.
[Link](iterable) Devuelve una suma de coma flotante precisa de los
valores de iterable
[Link](x) Comprueba si el valor flotante x es positivo o negativo
infinito
[Link](x) Comprueba si el valor flotante x es NaN (no es un
número)
[Link](x, i) Devuelve x * (2**i). Esencialmente es la función
inversa de frexp.
[Link](x) Devuelve las partes de fracción y entero de x. Los dos
resultados llevan el signo de x y son flotantes.
[Link](x) Devuelve el valor Real de x, que se ha truncado en un
Integral.
[Link](x) Devuelve e**x
[Link](x[, base]) Devuelve el logaritmo de x para el valor dado de base.
Si no se especifica base, se devuelve el logaritmo natural
de x.
math.log1p(x) Devuelve el logaritmo natural de 1+x (base e)
math.log10(x) Devuelve el logaritmo de base-10 de x

Capítulo 2. Language de scripts 21


Tabla 7. Métodos matemáticos (continuación)
Método Uso
[Link](x, y) Devuelve x elevado a la potencia de y. pow(1.0, x) y
pow(x, 0.0) siempre devuelve 1, incluso si x es cero o
NaN.
[Link](x) Devuelve la raíz cuadrada de x

Además de las funciones matemáticas, hay algunos métodos trigonométricos útiles. Estos métodos se
muestran en la siguiente tabla.
Tabla 8. Métodos trigonométricos
Método Uso
[Link](x) Devuelve el arco coseno de x en radianes
[Link](x) Devuelve el arcoseno de x en radianes
[Link](x) Devuelve el arco tangente de x en radianes
math.atan2(y, x) Devuelve atan(y / x) en radianes.
[Link](x) Devuelve el coseno de x en radianes.
[Link](x, y) Devuelve la norma euclidiana de sqrt(x*x + y*y). Esta
es la longitud del vector desde el origen al punto (x, y).
[Link](x) Devuelve el seno de x en radianes
[Link](x) Devuelve la tangente de x en radianes
[Link](x) Convierte el ángulo x de radianes a grados
[Link](x) Convierte el ángulo x de grados a radianes
[Link](x) Devuelve el coseno hiperbólico inverso de x
[Link](x) Devuelve el seno hiperbólico inverso de x
[Link](x) Devuelve la tangente hiperbólica inversa de x
[Link](x) Devuelve el coseno hiperbólico de x
[Link](x) Devuelve el coseno hiperbólico de x
[Link](x) Devuelve la tangente hiperbólica de x

También hay constantes matemáticas. El valor de [Link] es la constante matemática pi. El valor de
math.e es la constante matemática e.

Utilización de caracteres no ASCII


Para utilizar caracteres no ASCII, Python requiere la codificación y descodificación explícitas de las
cadenas en Unicode. En IBM SPSS Modeler, se presupone que los scripts Python están codificados UTF-8,
la cual es una codificación Unicode estándar que da soporte a caracteres no ASCII. El script siguiente se
compilará porque SPSS Modeler ha establecido el compilador Python en UTF-8.

Sin embargo, el nodo resultante tendrá una etiqueta incorrecta.

22 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Figura 3. Etiqueta del nodo que contiene caracteres no ASCII, visualiza incorrectamente

La etiqueta es incorrecta porque Python ha convertido el propio literal de serie en una cadena ASCII.

Python permite que los literales de cadenas Unicode se especifiquen añadiendo un prefijo con el carácter
u antes del literal de cadena:

Esto crear una cadena Unicode y la etiqueta aparecerá correctamente.

Figura 4. Etiqueta de nodo que contiene caracteres no ASCII, visualizados correctamente

La utilización de Python y Unicode es un tema de gran volumen que no entra dentro del ámbito de este
documento. Existen muchas publicaciones y recursos en línea disponibles que describen detalladamente
este tema.

Programación orientada a objetos


La programación orientada a objetos se basa en el concepto de crear un modelo del problema de destino
en sus programas. La programación orientada a objetos disminuye los errores y promociona la
reutilización del código. Python es un lenguaje orientado a objetos. Los objetos definidos en Python
tienen las características siguientes:
v Identidad. Cada objeto debe ser distinguido y ello debe poder demostrarse mediante pruebas. Las
pruebas is e is not existen para este fin.
v Estado Cada objeto debe ser capaz de almacenar el estado. Para este fin, existen atributos, tales como
variables de instancias y campos.
v Comportamiento. Cada objeto debe ser capaz de manipular su estado. Para este fin existen métodos.

Python incluye las características siguientes para dar soporte a la programación orientada a objetos:
v Creación de objetos basada en clases. Las clases son plantillas para la creación de objetos. Los objetos
son estructuras de datos con el comportamiento asociado.
v Herencia con polimorfismo. Python da soporte a la herencia individual y múltiple. Todos los métodos
de instancias de Python son polimórficos y se pueden alterar temporalmente mediante subclases.
v Encapsulación con ocultación de datos. Python permite ocultar los atributos. Cuando se ocultan los
atributos, se puede acceder a los mismos desde fuera de la clase únicamente mediante los métodos de
la clase. Las clases implementan métodos para modificar los datos.

Capítulo 2. Language de scripts 23


Definición de una clase
En una clase Python, se pueden definir tanto variables como métodos. A diferencia de Java, en Python
puede definir cualquier número de clases públicas por archivo de origen (o module). Por lo tanto, un
módulo en Python puede considerarse similar a un paquete en Java.

En Python, las clases se definen utilizando la sentencia class. La sentencia class tiene el formato
siguiente:
class name (superclasses): statement

o
class name (superclasses):
assignment
.
.
function
.
.

Cuando define una clase tiene la opción de proporcionar cero o más sentencias assignment. Estos crean
atributos de clase que comparten todas las instancias de la clase. Puede proporcionar cero o más
definiciones de function. Estas definiciones de función crean métodos. La lista de superclases es opcional.

El nombre de clase debe ser exclusivo en el mismo ámbito, esto es, dentro de un módulo, función o clase.
Puede definir varias variables para que hagan referencia a la misma clase.

Creación de una instancia de clase


Las clases se utilizan para contener (o compartir) los atributos de clase o para crear instancias de clase.
Para crear una instancia de una clase, debe llamar a la clase como si fuera una función. Por ejemplo,
considere las clases siguientes:
class MyClass:
pass

Aquí, se utiliza la sentencia pass por que se requiere una sentencia para completar la clase, pero no se
requiere ninguna acción de programación.

La sentencia siguiente crea una instancia de la clase MyClass:


x = MyClass()

Añadir atributos a una instancia de clase


A diferencia de Java, en Python los clientes pueden añadir atributos a una instancia de una clase. Solo se
cambia la instancia. Por ejemplo, para añadir atributos a una instancia de x, establezca valores nuevos en
dicha instancia:
x.attr1 = 1
x.attr2 = 2
.
.
[Link] = n

Definición de atributos de clase y métodos


Cualquier variable enlazada a una clase es un atributo de clase. Cualquier función definida en una clase es
un método. Los métodos reciben como primer argumento una instancia de la clase, que
convencionalmente se denomina self. Por ejemplo, para definir algunos atributos de clase y métodos,
puede entrar el siguiente código:

24 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


class MyClass
attr1 = 10 #class attributes
attr2 = "hello"

def method1(self):
print MyClass.attr1 #reference the class attribute

def method2(self):
print MyClass.attr2 #reference the class attribute

def method3(self, text):


[Link] = text #instance attribute
print text, [Link] #print my argument and my attribute

method4 = method3 #make an alias for method3

Dentro de una clase, debe cualificar todas las referencias a los atributos de clase con el nombre de clase;
por ejemplo, MyClass.attr1. Todas las referencias a los atributos de la instancia deben cualificarse con la
variable self, por ejemplo, [Link]. Fuera de la clase, debe cualificar todas las referencias a los
atributos de clase con el nombre de clase (por ejemplo, MyClass.attr1) o con una instancia de la clase
(por ejemplo, x.attr1, donde x es una instancia de la clase). Fuera de la clase, todas las referencias a las
variables de la instancia deben cualificarse con una instancia de la clase, por ejemplo, [Link].

Variables ocultas
Los datos se pueden ocultar creando variables privadas. Solo la propia clase puede acceder a las variables
privadas. Si declara nombres con el formato __xxx o __xxx_yyy, estos es, con dos signos de subrayado
antes de los nombres, el analizador Python automáticamente añadirá el nombre de clase al nombre
declarado y creará las variables ocultas, por ejemplo:
class MyClass:
__attr = 10 #private class attribute

def method1(self):
pass

def method2(self, p1, p2):


pass

def __privateMethod(self, text):


self.__text = text #private attribute

A diferencia de Java, en Python todas las referencias a variables de instancia deben estar calificadas con
self; no existe un uso implícito de this.

Heredado
La posibilidad de herencia de las clases es fundamental en la programación orientada a objetos. Python
da soporte a la herencia individual y múltiple. Herencia individual significa que solo puede haber una
superclase. Herencia múltiple significa que puede haber más de una superclase.

La herencia se implementa generando subclases de otras clases. Cualquier número de clases Python
pueden ser superclases. En la implementación de Jython en Python, solo se puede heredar directa o
indirectamente de una clase Java. No es necesario suministrar una superclase.

Cualquier atributo o método de una superclase también está en cualquier subclase y lo puede utilizar la
propia clase o cualquier cliente, siempre que el atributo o método no esté oculto. Se puede utilizar
cualquier instancia de una subclase; esto se denomina polimorfismo. Estas características permiten la
reutilización y facilitan la extensión.

Ejemplo

Capítulo 2. Language de scripts 25


class Class1: pass #no inheritance

class Class2: pass

class Class3(Class1): pass #single inheritance

class Class4(Class3, Class2): pass #multiple inheritance

26 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Capítulo 3. Scripts de IBM SPSS Modeler
Tipos de scripts
En IBM SPSS Modeler existen tres tipos de scripts:
v Los scripts de ruta se utilizan para controlar la ejecución de una sola ruta y se almacenan dentro de la
ruta.
v Los scripts Supernodo se utilizan para controlar el comportamiento de los supernodos.
v Los scripts autónomos o de sesión se pueden utilizar para coordinar la ejecución entre un número de
rutas diferentes.

Existen diferentes métodos disponibles que puede utilizar en scripts en IBM SPSS Modeler lo que le
permite acceder a una amplia gama de funciones de SPSS Modeler. Estos métodos se utilizan también en
Capítulo 4, “API de scripts”, en la página 37 para crear funciones más avanzadas.

Rutas, rutas de supernodo y diagramas


La mayoría de las veces, el término ruta significa lo mismo independientemente de que se trate de una
ruta cargada de un archivo o utilizada dentro de un supernodo. En general significa una colección de
nodos conectados entre sí que puede ejecutarse. Sin embargo, en la creación de scripts no todas las
operaciones se soportan en todos los sitios, lo que significa que el autor de un script deberá tener en
cuenta qué variante de ruta está utilizando.

Rutas
Una ruta es el principal tipo de documento de IBM SPSS Modeler. Se puede guardar, cargar, editar y
ejecutar. Las rutas también pueden tener parámetros, valores globales, un script y otra información
asociada a ellos.

Rutas de Supernodo
Una ruta de Supernodo es el tipo de ruta que se utiliza en un Supernodo. Al igual que una ruta normal,
contiene nodos enlazados entre sí. Las rutas de Supernodo tienen una serie de diferencias respecto de una
ruta normal.
v Los parámetros y scripts están asociados al Supernodo propietario de la ruta de Supernodo en lugar de
a la propia ruta de Supernodo.
v Las rutas de Supernodo tienen nodos de conector de entrada y salida adicionales dependiendo del tipo
de Supernodo. Estos nodos de conector se utilizan en los flujos de información entrantes y salientes de
la ruta de Supernodo y se crean automáticamente cuando se crea el Supernodo.

Diagramas
El término diagrama abarca las funciones soportadas en rutas normales y en rutas de supernodo como,
por ejemplo, la adición y eliminación de nodos y la modificación de conexiones entre nodos.

Ejecución de una ruta


El ejemplo siguiente ejecuta todos los nodos ejecutables en la ruta y es el tipo de script de ruta más
sencillo:
[Link]().runAll(None)

El ejemplo siguiente también se ejecuta todos los nodos ejecutables de la ruta:

27
stream = [Link]()
[Link](None)

En este ejemplo, la ruta se almacena en una variable denominada stream. Almacenar la ruta en una
variable resulta útil ya que un script se utiliza generalmente para modificar la ruta o los nodos
contenidos en una ruta. Si se crea una variable que almacena los resultados de la ruta, el script resultará
más conciso.

El contexto de los scripts


El módulo [Link] proporciona el contexto en el que se ejecuta un script. El módulo se importa
automáticamente a un script de SPSS Modeler durante la ejecución. El módulo define cuatro funciones
que proporcionan un script con acceso a su entorno de ejecución:
v La función session() devuelve la sesión para el script. La sesión define información, tal como el
entorno local y el proceso de fondo de SPSS Modeler (ya sea un proceso local o un proceso de SPSS
Modeler Server conectado a la red) que se está utilizando para ejecutar rutas.
v La función stream() se puede utilizar con la ruta y los scripts Supernodo. Esta función devuelve la
ruta que es propietaria del script de ruta o el script Supernodo que se está ejecutando.
v La función diagram() se puede utilizar con los scripts Supernodo. Esta función devuelve el diagrama
dentro del Supernodo. Para otros tipos de script, esta función devuelve el mismo que la función
stream().
v La función supernode() se puede utilizar con los scripts Supernodo. Esta función devuelve el
Supernodo propietario del script que se está ejecutando.

En la tabla siguiente se resumen las cuatro funciones y sus resultados.


Tabla 9. Resumen de las funciones de [Link]
Tipo de script session() stream() diagram() supernode()
Autónomo Devuelve una sesión Devuelve la ruta Igual que para No es aplicable
gestionada actual en stream()
el momento en que se
invoca el script (por
ejemplo, la ruta se
pasa con la opción
-stream de
modalidad de proceso
por lotes) o None.
Ruta Devuelve una sesión Devuelve una ruta Igual que para No es aplicable
stream()
Supernodo Devuelve una sesión Devuelve una ruta Devuelve una ruta Devuelve un
Supernodo Supernodo

El módulo [Link] también define un modo de finalizar el script con un código de salida. La
función exit(exit-code) detiene la ejecución del script y devuelve el código de salida de entero
suministrado.

Uno de los métodos que se define para una ruta es runAll(List). Este método ejecuta todos los nodos
ejecutables. Los modelos o resultados que se generan mediante la ejecución de los nodos se añaden a la
lista suministrada.

Es común que la ejecución de ruta genere resultados, tales como modelos, gráficos y otros. Para capturar
este resultado, un script puede proporcionar una variable que se inicializa en una lista, por ejemplo:

28 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


stream = [Link]()
results = []
[Link](results)

Cuando se completa la ejecución, se puede acceder a todos los objetos generados por la ejecución en la
lista results.

Referencia a nodos existentes


Una ruta suele estar construida previamente con algunos parámetros que se deben modificar antes de
ejecutar la ruta. Para modificar estos parámetros se han de realizar las tareas siguientes:
1. Localizar los nodos en la ruta relevante.
2. Cambiar los valores de los nodos o de la ruta (o de ambas cosas).

Buscar nodos
Las rutas proporcionan varios modos de localizar un nodo existente. Estos métodos se resumen en la
siguiente tabla.
Tabla 10. Métodos para localizar un nodo existente
Método Tipo devuelto Descripción
[Link](type, label) Colección Devuelve una lista de todos los
nodos con el tipo y la etiqueta. El
tipo o la etiqueta pueden ser None, en
cuyo caso se utiliza el otro
parámetro.
[Link](filter, recursive) Colección Devuelve una colección de todos los
nodos que están aceptados por el
filtro especificado. Si el distintivo
recursivo es True, también se buscan
los supernodos contenidos en la ruta
especificada.
[Link](id) Nodo Devuelve el nodo con el ID
proporcionado o None si no existe
dicho nodo. La búsqueda se limita a
la ruta actual.
[Link](type, label) Nodo Devuelve el nodo con el tipo,
etiqueta o ambas cosas. El tipo o el
nombre pueden ser None, en cuyo
caso se utiliza el otro parámetro. Si
varios nodos dan como resultado una
coincidencia, se elige uno arbitrario y
se devuelve. Si ningún nodo da como
resultado una coincidencia, se
devuelve el valor None.
[Link](fromNodes) Colección Busca en la lista de nodos
suministrada y devuelve el conjunto
de nodos en sentido descendente de
los nodos suministrados. La lista
devuelta incluye los nodos
proporcionados originalmente.

Capítulo 3. Scripts de IBM SPSS Modeler 29


Tabla 10. Métodos para localizar un nodo existente (continuación)
Método Tipo devuelto Descripción
[Link](fromNodes) Colección Busca en la lista de nodos
suministrada y devuelve el conjunto
de nodos en sentido ascendente de
los nodos suministrados. La lista
devuelta incluye los nodos
proporcionados originalmente.

Por ejemplo, si una ruta contiene un nodo Filtro único que el script necesita para acceso, el nodo Filtro se
puede encontrar utilizando el siguiente script:
stream = [Link]()
node = [Link]("filter", None)
...

Como alternativa, si se conoce el ID del nodo (tal como se muestra en la pestaña Anotaciones del cuadro
de diálogo del nodo) se puede utilizar el ID para buscar el nodo, por ejemplo:
stream = [Link]()
node = [Link]("id32FJT71G2") # the filter node ID
...

Establecimiento de propiedades
Los nodos, rutas, modelos y resultados tienen propiedades a las que se puede acceder y que, en la mayor
parte de los casos, se pueden establecer. Las propiedades suelen utilizarse para modificar el aspecto o el
comportamiento del objeto. En la tabla siguiente se resumen los métodos disponibles para establecer y
acceder a las propiedades de los objetos.
Tabla 11. Métodos para establecer y acceder a las propiedades de los objetos
Método Tipo devuelto Descripción
[Link](propertyName) Object Devuelve el valor de la propiedad
con nombre, o None si no existe tal
propiedad.
[Link](propertyName, No es aplicable Establece el valor de la propiedad
value) con nombre.
[Link](properties) No es aplicable Establece los valores de la propiedad
con nombre. Cada entrada de la
correlación de propiedades consta de
una clave que representa el nombre
de la propiedad y del valor que debe
asignarse a la propiedad.
[Link]( Object Devuelve el valor de la propiedad
propertyName, keyName) con nombre, o None si no existe dicha
propiedad o clave.
[Link]( No es aplicable Establece el valor de la propiedad
propertyName, keyName, value) con nombre y de la clave.

Por ejemplo, si desea establecer el valor de un nodo Archivo variable al comienzo de una ruta, puede
utilizar el siguiente script:
stream = [Link]()
node = [Link]("variablefile", None)
[Link]("full_filename", "$CLEO/DEMOS/DRUG1n")
...

30 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Como alternativa, puede que desee filtrar un campo desde un nodo Filtrar. En este caso, el valor es con
clave en el nombre de campo, por ejemplo:
stream = [Link]()
# Locate the filter node ...
node = [Link]("filter", None)
# ... and filter out the "Na" field
[Link]("include", "Na", False)

Creación de nodos y modificación de rutas


En algunas situaciones, es posible que desee añadir nuevos nodos a rutas existentes. Para añadir nodos a
rutas existentes suele ser necesario realizar las tareas siguientes:
1. Crear los nodos.
2. Enlazar los nodos con el flujo de ruta existente.

Creación de nodos
Las rutas proporcionan varios modos de crear nodos. Estos métodos se resumen en la siguiente tabla.
Tabla 12. Métodos para crear nodos
Método Tipo devuelto Descripción
[Link](nodeType, name) Nodo Crea un nodo del tipo especificado y
lo añade a la ruta especificada.
[Link](nodeType, name, x, y) Nodo Crea un nodo del tipo especificado y
lo añade a la ruta especificada en la
ubicación especificada. Si x< 0 o y <
0, no se establece la ubicación.
[Link](modelOutput, Nodo Crea un nodo aplicador de modelos
name) que se deriva del objeto de resultados
del modelo proporcionado.

Por ejemplo, para crear un tipo de nodo nuevo en una ruta puede utilizar el siguiente script:
stream = [Link]()
# Create a new type node
node = [Link]("type", "My Type")

Enlazar y desenlazar nodos


Cuando un nodo nuevo se crea dentro de una ruta, debe estar conectado a una ruta de nodos para poder
utilizarlo. Las rutas proporciona varios métodos para enlazar y desenlazar nodos. Estos métodos se
resumen en la siguiente tabla.
Tabla 13. Métodos para enlazar y desenlazar nodos
Método Tipo devuelto Descripción
[Link](source, target) No es aplicable Crea un nuevo enlace entre los nodos
de origen y destino.
[Link](source, targets) No es aplicable Crea nuevos enlaces entre el nodo de
origen y cada nodo de destino de la
lista suministrada.

Capítulo 3. Scripts de IBM SPSS Modeler 31


Tabla 13. Métodos para enlazar y desenlazar nodos (continuación)
Método Tipo devuelto Descripción
[Link](inserted, source, No es aplicable Conecta un nodo entre dos instancias
target) de otro nodo (los nodos de origen y
de destino) y establece la posición del
nodo insertado de modo que quede
entre ellos. Cualquier enlace directo
entre los nodos de origen y de
destino se elimina en primer lugar.
[Link](path) No es aplicable Crea una nueva ruta entre instancias
de nodo. El primer nodo se enlaza
con el segundo, el segundo nodo se
enlaza con el tercero y así
sucesivamente.
[Link](source, target) No es aplicable Elimina cualquier enlace directo entre
los nodos de origen y de destino.
[Link](source, targets) No es aplicable Elimina los enlaces directos entre el
nodo de origen y cada objeto de la
lista de destinos.
[Link](path) No es aplicable Elimina cualquier ruta que existe
entre las instancias del nodo.
[Link](node) No es aplicable Elimina los enlaces entre el nodo
suministrado y todos los demás
nodos de la ruta especificada.
[Link](source, target) booleano Devuelve True si es válido crear un
enlace entre los nodos de origen y de
destino especificados. Este método
comprueba que ambos objetos
pertenezcan a la ruta especificada,
que el nodo de origen puede
proporcionar un enlace y que el nodo
de destino puede recibir un enlace, y
que la creación de un enlace de este
tipo no creará un circularidad en la
ruta.

El script de ejemplo siguiente realiza estas cinco tareas:


1. Crea un nodo de entrada Archivo de variables, un nodo Filtro y un nodo de salida Tabla.
2. Conecta los nodos entre sí.
3. Establece el nombre de archivo del nodo de entrada Archivo de variables.
4. Filtra el campo "Drug" de la salida resultante.
5. Ejecute el nodo Tabla.
stream = [Link]()
filenode = [Link]("variablefile", "My File Input ", 96, 64)
filternode = [Link]("filter", "Filter", 192, 64)
tablenode = [Link]("table", "Table", 288, 64)
[Link](filenode, filternode)
[Link](filternode, tablenode)
[Link]("full_filename", "$CLEO_DEMOS/DRUG1n")
[Link]("include", "Drug", False)
results = []
[Link](results)

32 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Importar, sustituir y eliminar nodos
Además de crear y conectar nodos, a menudo es necesario sustituir y suprimir nodos de la ruta. Los
métodos que están disponibles para importar, sustituir y suprimir nodos se resumen en la tabla siguiente.
Tabla 14. Métodos para importar, sustituir y suprimir nodos
Método Tipo devuelto Descripción
[Link](originalNode, No es aplicable Sustituye el nodo especificado de la
replacementNode, discardOriginal) ruta actual. Tanto el nodo original
como el nodo de sustitución deben
ser propiedad de la ruta especificada.
[Link](source, nodes, newIDs) Lista Inserta copias de los nodos en la lista
suministrada. Se presupone que
todos los nodos de la lista
suministrada se encuentran dentro de
la ruta especificada. El distintivo
newIDs indica si se deben generar
nuevos ID para cada nodo o si se
debe copiar y utilizar el ID existente.
Se presupone que todos los nodos de
una ruta tienen ID exclusivos, por lo
tanto este distintivo se debe
establecer en True si la ruta de origen
es la misma que la ruta especificada.
El método devuelve la lista de nodos
recién insertados, en la que el orden
de los nodos está sin definir (es decir,
el orden no es necesariamente el
mismo que el orden de los nodos de
la lista de entrada).
[Link](node) No es aplicable Elimina el nodo especificado de la
ruta especificada. El nodo debe ser
propiedad de la ruta especificada.
[Link](nodes) No es aplicable Elimina todos los nodos especificados
de la ruta especificada. Todos los
nodos de la colección debe pertenecer
a la ruta especificada.
[Link]() No es aplicable Elimina todos los nodos de la ruta
especificada.

Atravesar los nodos de una ruta


Un requisito común es identificar los nodos que están en un punto de la ruta anterior o posterior a un
determinado nodo. La ruta proporciona una serie de métodos que pueden utilizarse para identificar estos
nodos. Estos métodos se resumen en la siguiente tabla.
Tabla 15. Métodos para identificar los nodos en sentido ascendente y descendente
Método Tipo devuelto Descripción
[Link]() Iterator Devuelve un iterador de los objetos
de nodo que están contenidos en la
ruta especificada. Si la ruta se
modifica entre llamadas a la función
next(), el comportamiento del
iterador no está definido.

Capítulo 3. Scripts de IBM SPSS Modeler 33


Tabla 15. Métodos para identificar los nodos en sentido ascendente y descendente (continuación)
Método Tipo devuelto Descripción
[Link](node, index) Nodo Devuelve el predecesor inmediato
especificado del nodo suministrado o
None si el índice está fuera de los
límites.
[Link](node) int Devuelve el número de predecesores
inmediatos del nodo suministrado.
[Link](node) Lista Devuelve los predecesores inmediatos
del nodo suministrado.
[Link](node, index) Nodo Devuelve el sucesor inmediato
especificado del nodo suministrado o
None si el índice está fuera de los
límites.
[Link](node) int Devuelve el número de sucesores
inmediatos del nodo suministrado.
[Link](node) Lista Devuelve los sucesores inmediatos
del nodo suministrado.

Borrado o eliminación de elementos


Los scripts de herencia admiten varios usos del comando claro, por ejemplo:
v clear outputs Para suprimir todos los elementos de salida de la paleta del gestor.
v clear generated palette Para borrar todos los nugget de modelos de la paleta de modelos.
v clear stream Para eliminar el contenido de una ruta.

Los scripts Python admiten un conjunto de funciones parecido; el comando removeAll() se utiliza para
borrar las rutas, las salidas y los gestores de modelos. Por ejemplo:
v Para borrar el gestor de rutas:
session = [Link]()
[Link]()
v Para borrar el gestor de salidas:
session = [Link]()
[Link]().removeAll()
v Para borrar el gestor de modelos:
session = [Link]()
[Link]().removeAll()

Obtener información sobre los nodos


Los nodos entran en diferentes categorías, tales como nodos de importación y exportación de datos,
nodos de construcción de modelos y otros tipos de nodos. Cada nodo proporciona una serie de métodos
que pueden utilizarse para obtener información sobre el nodo.

Los métodos que se pueden utilizar para obtener el ID, el nombre y la etiqueta de un nodo se resumen
en la tabla siguiente.

34 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 16. Métodos para obtener el ID, el nombre y la etiqueta de un nodo
Método Tipo devuelto Descripción
[Link]() cadena Devuelve la etiqueta de visualización
del nodo especificado. La etiqueta es
el valor de la propiedad custom_name
sólo si la propiedad es una serie no
vacía y la propiedad use_custom_name
no está establecida; de lo contrario, la
etiqueta es el valor de getName().
[Link](label) No es aplicable Establece la etiqueta de visualización
del nodo especificado. Si la nueva
etiqueta es una cadena no vacía se
asigna a la propiedad custom_name, y
False se asigna a la propiedad
use_custom_name, de tal modo que la
etiqueta especificada tiene prioridad;
de lo contrario, se asigna una serie
vacía a la propiedad custom_name y
se asigna True a la propiedad
use_custom_name.
[Link]() cadena Devuelve el nombre del nodo
especificado.
[Link]() cadena Devuelve el ID del nodo especificado.
Se crea un ID nuevo cada vez que se
crea un nuevo nodo. El ID se
conserva con el nodo cuando se
guarda como parte de una ruta de
modo que, cuando se abre la ruta, los
ID de nodo se conservan. Sin
embargo, si un nodo guardado se
inserta en una ruta, el nodo insertado
se considera un nuevo objeto y se le
asigna un nuevo ID.

Los métodos que se pueden utilizar para obtener información acerca de un nodo se resumen en la tabla
siguiente.
Tabla 17. Métodos para obtener información acerca de un nodo
Método Tipo devuelto Descripción
[Link]() cadena Devuelve el nombre de script de este
nodo. Este es el mismo nombre que
puede utilizarse para crear una nueva
instancia de este nodo.
[Link]() Booleana Devuelve True si es un nodo initial,
esto es, un nodo que aparece al inicio
de una ruta.
[Link]() Booleana Devuelve True si es un nodo in-line,
esto es, un nodo que aparece a mitad
de una ruta.
[Link]() Booleana Devuelve True si es un nodo terminal,
esto es, un nodo que aparece al final
de una ruta.
[Link]() int Devuelve el desplazamiento de la
posición x del nodo en la ruta.

Capítulo 3. Scripts de IBM SPSS Modeler 35


Tabla 17. Métodos para obtener información acerca de un nodo (continuación)
Método Tipo devuelto Descripción
[Link]() int Devuelve el desplazamiento de la
posición y del nodo en la ruta.
[Link](x, y) No es aplicable Devuelve la posición del nodo en la
ruta.
[Link](source, No es aplicable Establece la posición del nodo en la
target) ruta, de modo que esté posicionado
entre los nodos suministrados.
[Link]() Booleana Devuelve True si la memoria caché
está habilitada; devuelve False de lo
contrario.
[Link](val) No es aplicable Habilita o inhabilita la memoria
caché para este objeto. Si la memoria
caché está llena y la memoria caché
pasa a estar inhabilitada, la memoria
caché se vacía.
[Link]() Booleana Devuelve True si la memoria caché
está llena; devuelve False de lo
contrario.
[Link]() No es aplicable Vacía la memoria caché de este nodo.
No tiene efecto si la memoria caché
no está activada o no está llena.

36 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Capítulo 4. API de scripts
Introducción a la API de scripts
La API de scripts proporciona acceso a una amplia gama de funciones de SPSS Modeler. Todos los
métodos descritos hasta ahora forman parte de la API y se puede acceder a los mismos de forma
implícita en el script sin importaciones adicionales. Sin embargo, si desea hacer referencia a las clases de
la API, debe importar la API explícitamente con la sentencia siguiente:
import [Link]

Esta sentencia import es necesaria para muchos de los ejemplos de la API de scripts.

Se puede encontrar una guía completa de las clases, los métodos y parámetros que están disponibles a
través de la API de scripts en el documento Guía de referencia de la API de scripts Python de IBM SPSS
Modeler.

Ejemplo 1: buscar nodos utilizando un filtro personalizado


La sección “Buscar nodos” en la página 29 se incluye un ejemplo de cómo buscar un nodo en una ruta
utilizando el nombre de tipo del nodo como criterio de búsqueda. En algunas situaciones, se requiere una
búsqueda más genérica y ésta se puede implementar utilizando la clase NodeFilter y el método
findAll() de la ruta. Este tipo de búsqueda requiere los pasos siguientes:
1. Crear una clase nueva que amplíe NodeFilter e implemente una versión personalizada del método
accept().
2. Llamar al método findAll() de la ruta con una instancia de esta clase nueva. Esto devuelve todos los
nodos que cumplen el criterio definido en el método accept().

El ejemplo siguiente muestra cómo buscar nodos de una ruta que tienen habilitada la memoria caché de
nodo. La lista de nodos devuelta se puede utilizar para vaciar o inhabilitar las memorias caché de estos
nodos.
import [Link]

class CacheFilter([Link]):
"""A node filter for nodes with caching enabled"""
def accept(this, node):
return [Link]()

cachingnodes = [Link]().findAll(CacheFilter(), False)

Ejemplo 2: permitir a los usuarios obtener información de directorio o


archivo basándose en sus privilegios
Para evitar que la PSAPI se abra a los usuarios, se puede utilizar un método denominado
[Link]() mediante la llamada de la función PSAPI para crear un objeto de sistema
de archivos.

El ejemplo siguiente muestra cómo permitir que un usuario obtenga información de directorio o archivo
basándose en los privilegios del usuario que se conecta a IBM SPSS Modeler Server.
import [Link]
stream = [Link]()
sourceNode = [Link](’’)
session = [Link]()
fileSystem = [Link]()

37
parameter = [Link](’VPATH’)
serverDirectory = [Link](parameter)
files = [Link](serverDirectory)
for f in files:
if [Link]():
print ’Directory:’
else:
print ’File:’
[Link](’full_filename’,[Link]())
break
print [Link](),[Link]()
[Link]()

Metadatos: información sobre datos


Puesto que en una ruta los nodos se conectan entre sí, está disponible la información relativa a las
columnas o los campos disponibles en cada nodo. Por ejemplo, en la interfaz de usuario de Modeler esto
permite seleccionar por qué campos hay que ordenar o agregar. Esta información se llama modelo de
datos.

Los scripts también pueden acceder al modelo de datos inspeccionando los campos que entran en un
nodo o que salen de él. En algunos nodos coinciden los modelos de datos de entrada y salida; por
ejemplo, un nodo Ordenar se limita a cambiar el orden de los registros, sin alterar el modelo de datos.
Otros, como el nodo Derivar, pueden añadir nuevos campos. Otros, como el nodo Filtrar, pueden
renombrar o eliminar campos.

En el ejemplo siguiente, el script toma la ruta estándar IBM SPSS Modeler [Link] y, para cada
campo, construye un modelo descartando uno de los campos de entrada. Lo hace de la siguiente manera:
1. Accede al modelo de datos de salida del nodo Tipo.
2. Itera cada campo del modelo de datos de salida.
3. Modifica el nodo Filtro de cada campo de entrada.
4. Cambia el nombre del modelo que se construye.
5. Ejecuta el nodo de construcción de modelos.

Nota: Antes de ejecutar el script en la ruta [Link], no olvide establecer el lenguaje de script a
Python (la ruta se creó en una versión anterior de IBM SPSS Modeler, de modo que el lenguaje de script
de la ruta está establecido a Herencia).
import [Link]

stream = [Link]()
filternode = [Link]("filter", None)
typenode = [Link]("type", None)
c50node = [Link]("c50", None)
# Usar siempre un nombre de modelo personalizado
[Link]("use_model_name", True)

lastRemoved = None
fields = [Link]()
for field in fields:
# Si este es el campo de destino, se hace caso omiso del mismo
if [Link]() == [Link]:
continue

# Se rehabilita el campo eliminado más recientemente


if lastRemoved != None:
[Link]("include", lastRemoved, True)

# Se elimina el campo
lastRemoved = [Link]()
[Link]("include", lastRemoved, False)

38 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


# Se establece el nombre del nuevo modelo y se ejecuta la construcción
[Link]("model_name", "Exclude " + lastRemoved)
[Link]([])

El objeto DataModel (modelo de datos) proporciona una serie de métodos de acceso a la información
relativa a los campos y columnas del modelo de datos. Estos métodos se resumen en la siguiente tabla.
Tabla 18. Métodos del objeto DataModel de acceso a la información relativa a campos o columnas
Método Tipo devuelto Descripción
[Link]() int Devuelve el número de columnas del
modelo de datos.
[Link]() Iterator Devuelve un iterador que devuelve
cada columna en el orden "natural"
de inserción. El iterador devuelve
instancias de Column.
[Link]() Iterator Devuelve un iterador que devuelve el
nombre de cada columna en el orden
"natural" de inserción.
[Link](nombre) Booleana Devuelve True si en este DataModel
existe una columna con el nombre
proporcionado y False en caso
contrario.
[Link](nombre) Column Devuelve la columna cuyo nombre es
el especificado.
[Link](nombre) ColumnGroup Devuelve el grupo de columnas
nombrado o None si no existe dicho
grupo de columnas.
[Link]() int Devuelve el número de grupos de
columnas de este modelo de datos.
[Link]() Iterator Devuelve un iterador que devuelve a
su vez cada grupo de columnas.
[Link]() Column[] Devuelve el modelo de datos como
un vector de columnas. Las columnas
van ordenadas según su orden
"natural" de inserción.

Cada campo (objeto Column) incluye una serie de métodos de acceso a la información de la columna. La
tabla que se muestra a continuación muestra una selección de los mismos.
Tabla 19. Métodos del objeto Column de acceso a la información de una columna
Método Tipo devuelto Descripción
[Link]() cadena Devuelve el nombre de la columna.
[Link]() cadena Devuelve la etiqueta de la columna o
una cadena vacía si no hay ninguna
etiqueta asociada a la columna.
[Link]() MeasureType Devuelve el tipo de medición de la
columna.
[Link]() StorageType Devuelve el tipo de almacenamiento
de la columna.

Capítulo 4. API de scripts 39


Tabla 19. Métodos del objeto Column de acceso a la información de una columna (continuación)
Método Tipo devuelto Descripción
[Link]() Booleana Devuelve True si la columna es
discreta. Se consideran discretas las
columnas que son un conjunto o un
distintivo.
[Link]() Booleana Devuelve True si la columna es una
columna de resultado del modelo.
[Link]() Booleana Devuelve True si el almacenamiento
de la columna es un valor de hora,
fecha o indicación de fecha y hora.
[Link]() Booleana Devuelve True si el almacenamiento
de la columna es un entero o un
número real.
[Link](value) Booleana Devuelve True si el valor especificado
es válido para este almacenamiento y
valid cuando se conocen los valores
de columna válidos.
[Link]() ModelingRole Devuelve el rol de modelado de la
columna.
[Link]() Object[] Devuelve un vector de valores
válidos para la columna o None si se
desconocen los valores o si la
columna no es un conjunto.
[Link](valor) cadena Devuelve la etiqueta del valor de la
columna o una cadena vacía si no
hay ninguna etiqueta asociada al
valor.
[Link]() Object Devuelve el valor indicador de
"falso" de la columna o None si se
desconoce el valor o la columna no
es un indicador.
[Link]() Object Devuelve el valor indicador de
"verdadero" de la columna o None si
se desconoce el valor o la columna
no es un indicador.
[Link]() Object Devuelve el valor del límite inferior
de los valores de la columna o None
si se desconoce el valor o si la
columna no es continua.
[Link]() Object Devuelve el valor del límite superior
de los valores de la columna o None
si se desconoce el valor o si la
columna no es continua.

Observe que la mayoría de los métodos de acceso a la información de una columna tienen métodos
equivalentes definidos en el propio objeto DataModel. Por ejemplo, las dos sentencias siguientes son
equivalentes:
[Link]("unNombre").getModelingRole()
[Link]("unNombre")

40 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Acceso a objetos generados
Ejecución de una ruta normalmente implica producir objetos de salida adicionales. Estos objetos
adicionales pueden ser un nuevo modelo o un fragmento de la salida que proporciona información para
utilizarla en las ejecuciones posteriores.

En el ejemplo siguiente, la ruta [Link] se utiliza de nuevo como punto de partida para la ruta. En
este ejemplo, se ejecutan todos los nodos de la ruta y los resultados se almacenan en una lista. A
continuación, el script crea un bucle por los resultados y se guarda cualquier salida del modo resultante
de la ejecución como un archivo de modelo de IBM SPSS Modeler (.gm) y se exporta como PMML.
import [Link]

stream = [Link]()

# Set this to an existing folder on your system.


# Include a trailing directory separator
modelFolder = "C:/temp/models/"

# Execute the stream


models = []
[Link](models)

# Save any models that were created


taskrunner = [Link]().getTaskRunner()
for model in models:
# If the stream execution built other outputs then ignore them
if not(isinstance(model, [Link])):
continue

label = [Link]()
algorithm = [Link]().getAlgorithmName()

# save each model...


modelFile = modelFolder + label + algorithm + ".gm"
[Link](model, modelFile)

# ...and export each model PMML...


modelFile = modelFolder + label + algorithm + ".xml"
[Link](model, modelFile, [Link])

La clase taskrunner proporciona un modo práctico de ejecutar diferentes tareas comunes. Los métodos
que están disponibles en esta clase se resumen en la tabla siguiente.
Tabla 20. Métodos de la clase taskrunner para realizar tareas comunes
Método Tipo devuelto Descripción
[Link](name, autoConnect, Ruta Crea y devuelve una nueva ruta.
autoManage) Tenga en cuenta que el código que
debe crear las rutas de forma privada
sin que las vea el usuario debe
establecer el distintivo autoManage en
False.
[Link]( No es aplicable Exporta la descripción de la ruta a un
documentOutput, filename, archivo utilizando el formato de
fileFormat) archivo especificado.
[Link](modelOutput, No es aplicable Exporta el modelo a un archivo
filename, fileFormat) utilizando el formato de archivo
especificado.
[Link](stream, No es aplicable Exporta la ruta a un archivo
filename, fileFormat) utilizando el formato de archivo
especificado.

Capítulo 4. API de scripts 41


Tabla 20. Métodos de la clase taskrunner para realizar tareas comunes (continuación)
Método Tipo devuelto Descripción
[Link](filename, Nodo Lee un nodo en el archivo
diagram) especificado y lo devuelve
insertándolo en el diagrama
suministrado. Tenga en cuenta que lo
pueden utilizar los objetos Nodo y
Supernodo.
[Link](filename, DocumentOutput Lee un nodo en el archivo
autoManage) especificado y lo devuelve.
[Link](filename, ModelOutput Lee un modelo en el archivo
autoManage) especificado y lo devuelve.
[Link](filename, Ruta Lee una ruta en el archivo
autoManage) especificado y la devuelve.
[Link]( No es aplicable Guarda el documento en la ubicación
documentOutput, filename) de archivo especificada.
[Link](modelOutput, No es aplicable Guarda el modelo en la ubicación de
filename) archivo especificada.
[Link](stream, No es aplicable Guarda la ruta en la ubicación de
filename) archivo especificada.

Manejo de errores
El lenguaje Python proporciona manejo de errores mediante el bloque de código try...except. Se puede
utilizar en los scripts para capturar excepciones y manejar los problemas que podrían ocasionar la
finalización del script.

En el script de ejemplo siguiente, se realiza un intento para recuperar un modelo desde el Repositorio de
IBM SPSS Collaboration and Deployment Services. Esta operación puede hacer que se genere una
excepción, por ejemplo, es posible que las credenciales de inicio de sesión en el repositorio no se hayan
configurado correctamente o que la ruta del repositorio sea errónea. En el script, esto puede generar una
excepción ModelerException (todas las excepciones que genera IBM SPSS Modeler se derivan de
[Link]).
import [Link]

session = [Link]()
try:
repo = [Link]()
m = [Link]("/some-non-existent-path", None, None, True)
# print goes to the Modeler UI script panel Debug tab
print "Everything OK"
except [Link], e:
print "An error occurred:", [Link]()

Nota: Algunas operaciones de scripts pueden generar excepciones Java estándar, estas excepciones no se
derivan de ModelerException. Para capturar estas excepciones, se puede utilizar un bloque except
adicional que capture todas las excepciones Java, por ejemplo:
import [Link]

session = [Link]()
try:
repo = [Link]()
m = [Link]("/some-non-existent-path", None, None, True)
# print goes to the Modeler UI script panel Debug tab
print "Everything OK"
except [Link], e:

42 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


print "An error occurred:", [Link]()
except [Link], e:
print "A Java exception occurred:", [Link]()

Parámetros de ruta, sesión y Supernodo


Los parámetros proporcionan una forma útil de pasar valores en el momento de la ejecución, en lugar de
codificarlos directamente en un script. Los parámetros y sus valores se definen de la misma forma que las
rutas, es decir, como entradas de la tabla de los parámetros de una ruta o Supernodo o como parámetros
de la línea de comandos. Las clases de Ruta y Supernodo implementan un conjunto de funciones
definidas por el objeto ParameterProvider, como se muestra en la tabla siguiente. La sesión proporciona
una llamada getParameters() que devuelve un objeto que define dichas funciones.
Tabla 21. Funciones definidas por el objeto ParameterProvider
Método Tipo devuelto Descripción
[Link]() Iterator Devuelve un iterador de nombres de
parámetro para este objeto.
[Link]( ParameterDefinition Devuelve la definición de parámetro
parameterName) para el parámetro con el nombre
especificado, o None si no existe tal
parámetro en este proveedor. El
resultado puede ser una instantánea
de la definición en el momento en
que el método se ha llamado y que
no necesariamente refleja las
modificaciones posteriores realizadas
en el parámetro a través de este
proveedor.
[Link](parameterName) cadena Devuelve la etiqueta del parámetro
con nombre, o None si no existe tal
parámetro.
[Link](parameterName, No es aplicable Establece la etiqueta del parámetro
label) con nombre.
[Link]( ParameterStorage Devuelve el almacenamiento del
parameterName) parámetro con nombre, o None si no
existe tal parámetro.
[Link]( No es aplicable Establece el almacenamiento del
parameterName, storage) parámetro con nombre.
[Link](parameterName) ParameterType Devuelve el tipo del parámetro con
nombre, o None si no existe tal
parámetro.
[Link](parameterName, No es aplicable Establece el tipo del parámetro con
type) nombre.
[Link](parameterName) Object Devuelve el valor del parámetro con
nombre, o None si no existe tal
parámetro.
[Link](parameterName, No es aplicable Establece el valor del parámetro con
value) nombre.

En el ejemplo siguiente, el script agrega algunos datos Telco para averiguar qué región tiene los datos de
promedio de ingresos más bajos. A continuación, se establece un parámetro de ruta con esta región. Este
parámetro de ruta se utiliza en un nodo Seleccionar para excluir dicha región de los datos, antes de que
se cree un modelo de abandono en el resto.

Capítulo 4. API de scripts 43


El ejemplo es artificial porque el script genera el propio nodo Seleccionar y, por lo tanto, podría haber
generado el valor correcto directamente en la expresión del nodo Seleccionar. Sin embargo, las rutas se
suelen construir previamente, de modo que establecer los parámetros de este modo proporciona un
ejemplo útil.

La primera parte del script de ejemplo crea el parámetro de ruta que contendrá la región con el promedio
de ingresos más bajo. El script también crea los nodos de la rama de agregación y la rama de creación de
modelos y los conecta.
import [Link]

stream = [Link]()

# Inicializar un parámetro de ruta


[Link]("LowestRegion", [Link])

# Crear primero la rama de agregación para calcular el promedio de ingresos por región
statisticsimportnode = [Link]("statisticsimport", "SPSS File", 114, 142)
[Link]("full_filename", "$CLEO_DEMOS/[Link]")
[Link]("use_field_format_for_storage", True)

aggregatenode = [Link]().createAt("aggregate", "Aggregate", 294, 142)


[Link]("keys", ["region"])
[Link]("aggregates", "income", ["Mean"])

tablenode = [Link]().createAt("table", "Table", 462, 142)

[Link](statisticsimportnode, aggregatenode)
[Link](aggregatenode, tablenode)

selectnode = [Link]("select", "Select", 210, 232)


[Link]("mode", "Discard")
# Hacer referencia al parámetro de ruta en la selección
[Link]("condition", "’region’ = ’$P-LowestRegion’")

typenode = [Link]("type", "Type", 366, 232)


[Link]("direction", "churn", "Target")

c50node = [Link]("c50", "C5.0", 534, 232)

[Link](statisticsimportnode, selectnode)
[Link](selectnode, typenode)
[Link](typenode, c50node)

El script de ejemplo crea la ruta siguiente.

Figura 5. Ruta resultante del script de ejemplo

La parte siguiente del script de ejemplo ejecuta el nodo Tabla al final de la rama de agregación.

44 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


# Ejecutar primero el nodo Tabla
results = []
[Link](results)

La parte siguiente del script de ejemplo accede a la salida de la tabla que ha generado la ejecución del
nodo Tabla. A continuación, el script itera por las filas de la tabla, buscando la región con el promedio de
ingresos más bajo.
# Ejecutar el nodo tabla para generar una sola tabla como salida
table = results[0]

# la salida de la tabla contiene un RowSet que permite acceder a valores como filas y columnas
rowset = [Link]()
min_income = 1000000.0
min_region = None

# Del modo que se ha definido el nodo, la primera columna


# contiene la región y la segunda contiene el promedio de ingresos
row = 0
rowcount = [Link]()
while row < rowcount:
if [Link](row, 1) < min_income:
min_income = [Link](row, 1)
min_region = [Link](row, 0)
row += 1

La parte siguiente del script utiliza la región con el promedio de ingresos más bajo para establecer el
parámetro de ruta "LowestRegion" creado anteriormente. El script ejecuta el constructor de modelos
excluyendo la región especificada de los datos de formación.
# Comprobar que se ha asignado un valor
if min_region != None:
[Link]("LowestRegion", min_region)
else:
[Link]("LowestRegion", -1)

# Finalmente, ejecutar el constructor de modelos con el criterio de selección


[Link]([])

A continuación, se muestra el script de ejemplo.


import [Link]

stream = [Link]()

# Crear un parámetro de ruta


[Link]("LowestRegion", [Link])

# Crear primero la rama de agregación para calcular el promedio de ingresos por región
statisticsimportnode = [Link]("statisticsimport", "SPSS File", 114, 142)
[Link]("full_filename", "$CLEO_DEMOS/[Link]")
[Link]("use_field_format_for_storage", True)

aggregatenode = [Link]().createAt("aggregate", "Aggregate", 294, 142)


[Link]("keys", ["region"])
[Link]("aggregates", "income", ["Mean"])

tablenode = [Link]().createAt("table", "Table", 462, 142)

[Link](statisticsimportnode, aggregatenode)
[Link](aggregatenode, tablenode)

selectnode = [Link]("select", "Select", 210, 232)


[Link]("mode", "Discard")
# Hacer referencia al parámetro de ruta en la selección
[Link]("condition", "’region’ = ’$P-LowestRegion’")

Capítulo 4. API de scripts 45


typenode = [Link]("type", "Type", 366, 232)
[Link]("direction", "churn", "Target")

c50node = [Link]("c50", "C5.0", 534, 232)

[Link](statisticsimportnode, selectnode)
[Link](selectnode, typenode)
[Link](typenode, c50node)

# Ejecutar primero el nodo Tabla


results = []
[Link](results)

# Ejecutar el nodo tabla para generar una sola tabla como salida
table = results[0]

# la salida de la tabla contiene un RowSet que permite acceder a valores como filas y columnas
rowset = [Link]()
min_income = 1000000.0
min_region = None

# Del modo que se ha definido el nodo, la primera columna


# contiene la región y la segunda contiene el promedio de ingresos
row = 0
rowcount = [Link]()
while row < rowcount:
if [Link](row, 1) < min_income:
min_income = [Link](row, 1)
min_region = [Link](row, 0)
row += 1

# Comprobar que se ha asignado un valor


if min_region != None:
[Link]("LowestRegion", min_region)
else:
[Link]("LowestRegion", -1)

# Finalmente, ejecutar el constructor de modelos con el criterio de selección


[Link]([])

Valores globales
Los valores globales se utilizan para calcular diferentes estadísticas de resumen para los campos
especificados. Se puede acceder a estos valores de resumen desde cualquier lugar de la ruta. Los valores
globales son similares a los parámetros de ruta, ya que se puede acceder a los mismos por nombre a
través de la ruta. Se diferencian de los parámetros de ruta en que los valores asociados se actualizan
automáticamente cuando se ejecuta uno nodo Establecer globales, en lugar de asignarlos mediante script
o desde la línea de comandos. Se accede a los valores globales de una ruta invocando el método
getGlobalValues() de la ruta.

El objeto GlobalValues define las funciones que se muestran en la tabla siguiente.


Tabla 22. Funciones definidas por el objeto GlobalValues
Método Tipo devuelto Descripción
[Link]() Iterator Devuelve un iterador para cada
nombre de campo con al menos un
valor global.

46 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 22. Funciones definidas por el objeto GlobalValues (continuación)
Método Tipo devuelto Descripción
[Link](type, fieldName) Object Devuelve el valor global para el tipo
especificado y nombre de campo, o
None si no se puede localizar ningún
valor. Generalmente se espera que el
valor devuelto sea un número,
aunque en las funciones futuras se
pueden devolver tipos de valores
diferentes.
[Link](fieldName) Mapa Devuelve un mapa que contiene las
entradas conocidas para el nombre de
campo especificado o None si no hay
entradas para el campo.

[Link] define el tipo de estadísticas de resumen disponibles. Están disponibles las siguientes
estadísticas de resumen:
v MAX: el valor máximo del campo.
v MEAN: el valor medio del campo.
v MIN: el valor mínimo del campo.
v STDDEV: la desviación estándar del campo.
v SUM: la suma de los valores del campo.

Por ejemplo, el script siguiente accede el valor medio del campo "income" que calcula un nodo Val.
globales:
import [Link]

globals = [Link]().getGlobalValues()
mean_income = [Link]([Link], "income")

Trabajar con varias rutas: Scripts autónomos


Para trabajar con varias rutas se debe utilizar un script autónomo. El script autónomo se puede editar y
ejecutar dentro de la interfaz de usuario de IBM SPSS Modeler o se puede pasar como un parámetro de
línea de comandos en modalidad de proceso por lotes.

El siguiente script autónomo abre dos rutas. Una de estas rutas crea un modelo y la segunda ruta traza la
distribución de los valores predichos.
# Change to the appropriate location for your system
demosDir = "C:/Program Files/IBM/SPSS/Modeler/18.1.1/DEMOS/streams/"

session = [Link]()
tasks = [Link]()

# Open the model build stream, locate the C5.0 node and run it
buildstream = [Link](demosDir + "[Link]", True)
c50node = [Link]("c50", None)
results = []
[Link](results)

# Now open the plot stream, find the Na_to_K derive and the histogram
plotstream = [Link](demosDir + "[Link]", True)
derivenode = [Link]("derive", None)
histogramnode = [Link]("histogram", None)

# Create a model applier node, insert it between the derive and histogram nodes
# then run the histgram

Capítulo 4. API de scripts 47


applyc50 = [Link](results[0], results[0].getName())
[Link](derivenode, histogramnode)
[Link](applyc50, derivenode, histogramnode)
[Link]("color_field", "$C-Drug")
[Link]([])

# Finally, tidy up the streams


[Link]()
[Link]()

El ejemplos siguiente muestra cómo también puede iterar en las rutas abiertas (todas las rutas abiertas en
la pestaña Rutas). Tenga en cuenta que esto solo está soportado en scripts autónomos.
for stream in [Link]():
print [Link]()

48 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Capítulo 5. Sugerencias para scripts
Esta sección proporciona una visión general de las técnicas y sugerencias para utilizar scripts, incluida la
modificación de la ejecución de la ruta, la utilización de una contraseña codificada en un script y el
acceso a objetos en el Repositorio de IBM SPSS Collaboration and Deployment Services.

Modificación de ejecución de rutas


Cuando se ejecuta una ruta, sus nodos terminales se ejecutan en un orden optimizado para la situación
predeterminada. En algunos casos, es posible que prefiera un orden de ejecución diferente. Para modificar
el orden de ejecución de una ruta, lleve a cabo los siguientes pasos desde la pestaña Ejecución del cuadro
de diálogo Propiedades de ruta:
1. Comience con un script vacío.
2. Pulse en el botón Añadir script predeterminado de la barra de herramientas y añada el script de ruta
predeterminado.
3. Cambie el orden de las instrucciones del script de ruta predeterminado por el orden en que desee que
se ejecuten las instrucciones.

Nodos de recorrido en bucle


Puede utilizar un bucle for para recorrer en bucle todos los nodos de una ruta. Por ejemplo, los
siguientes dos ejemplos de script recorren en bucle todos los nodos y cambia los nombres de campos de
cualquier nodo Filtrar a mayúsculas.

Estos scripts pueden emplearse en cualquier ruta que tenga un nodo Filtrar, incluso si no hay campos
filtrados. Simplemente, añada un nodo Filtrar que recorra todos los campos para cambiar todos los
nombres de campo a mayúsculas.
# Alternative 1: using the data model nameIterator() function
stream = [Link]()
for node in [Link]():
if ([Link]() == "filter"):
# nameIterator() returns the field names
for field in [Link]().nameIterator():
newname = [Link]()
[Link]("new_name", field, newname)
# Alternative 2: using the data model iterator() function
stream = [Link]()
for node in [Link]():
if ([Link]() == "filter"):
# iterator() returns the field objects so we need
# to call getColumnName() to get the name
for field in [Link]().iterator():
newname = [Link]().upper()
[Link]("new_name", [Link](), newname)

El script recorre en bucle los nodos de la ruta actual y comprueba cada nodo para ver si es un Filtro. Si
es así, el script recorre en bucle cada campo del nodo y utiliza la función [Link]() o
[Link]().upper() para cambiar el nombre a mayúsculas.

49
Acceso a objetos en el Repositorio de IBM SPSS Collaboration and
Deployment Services
Si tiene una licencia para Repositorio de IBM SPSS Collaboration and Deployment Services, puede
almacenar y recuperar objetos del repositorio utilizando comandos de script. Utilice el repositorio para
gestionar el ciclo de vida de los modelos de minería de datos y los objetos predictivos relacionados en el
contexto de aplicaciones empresariales, herramientas y soluciones.

Conexión con Repositorio de IBM SPSS Collaboration and Deployment Services

Para acceder al repositorio, en primer lugar, debe configurar una conexión válida con el mismo, a través
del menú Herramientas de la interfaz de usuario de SPSS Modeler o a través de la línea de comandos. Si
desea obtener más información, consulte “Repositorio de IBM SPSS Collaboration and Deployment
Services Argumentos de conexión” en la página 67.

Obtener acceso al repositorio


Se puede acceder al repositorio desde la sesión, por ejemplo:
repo = [Link]().getRepository()

Recuperación de objetos del repositorio

En un script, utilice las funciones retrieve* para acceder a distintos objetos, incluyendo rutas, modelos,
salidas y nodos. Se muestra un resumen de las funciones de recuperación en la tabla siguiente.
Tabla 23. Recuperar funciones de script
Tipo de objeto Función de repositorio
Ruta [Link](String path, String version, String label, Boolean autoManage)
Modelo [Link](String path, String version, String label, Boolean autoManage)
Resultado [Link](String path, String version, String label, Boolean autoManage)
Nodo [Link](String path, String version, String label, ProcessorDiagram
diagram)

Por ejemplo, puede recuperar una ruta del repositorio con la función siguiente:
stream = [Link]("/projects/retention/risk_score.str", None, "production", True)

Este ejemplo recupera la ruta risk_score.str de la carpeta especificada. La etiqueta production identifica
qué versión de la ruta recuperar, y el último parámetro especifica que SPSS Modeler va a gestionar la
ruta (por ejemplo, por lo que la ruta aparece en la pestaña Rutas si la interfaz de usuario de SPSS
Modeler es visible). Como alternativa, para utilizar una versión específica sin etiquetar:
stream = [Link]("/projects/retention/risk_score.str", "0:2015-10-12 [Link].281",
None, True)

Nota: Si ambos parámetros, el de versión y el de etiqueta, son None,se devuelve la última versión.

Almacenar objetos en el repositorio

Para utilizar scripts para almacenar objetos en el repositorio, utilice las funciones store*. Se muestra un
resumen de las funciones de almacenamiento en la tabla siguiente.

50 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 24. Funciones de script de almacenamiento
Tipo de objeto Función de repositorio
Ruta [Link](ProcessorStream stream, String path, String label)
Modelo [Link](ModelOutput modelOutput, String path, String label)
Resultado [Link](DocumentOutput documentOutput, String path, String label)
Nodo [Link](Processor node, String path, String label)

Por ejemplo, puede almacenar una nueva versión de la ruta risk_score.str con la función siguiente:
versionId = [Link](stream,
"/projects/retention/risk_score.str", "test")

Este ejemplo almacena una nueva versión de la ruta, asocia la etiqueta "test" a la misma y devuelve el
marcador de la versión para la versión recién creada.

Nota: Si no desea asociar una etiqueta a la nueva versión, pase None para la etiqueta.

Gestión de carpetas de repositorio

Al utilizar las carpetas dentro del repositorio, puede organizar objetos en grupos lógicos y hacer que sea
más fácil ver qué objetos están relacionados. Cree carpetas utilizando la función createFolder(), como en
el ejemplo siguiente:
newpath = [Link]("/projects", "cross-sell")

Este ejemplo crea una carpeta nueva que se llama "cross-sell" en la carpeta "/projects". La función
devuelve la vía de acceso completa de la carpeta nueva.

Para cambiar el nombre de una carpeta, utilice la función renameFolder():


[Link]("/projects/cross-sell", "cross-sell-Q1")

El primer parámetro es la vía de acceso completa que se va a renombrar, y el segundo es el nombre


nuevo que se va a proporcionar a dicha carpeta.

Para suprimir una carpeta vacía, utilice la función deleteFolder():


[Link]("/projects/cross-sell")

Bloquear y desbloquear objetos

Puede bloquear un objeto desde un script para evitar que otros usuarios actualicen cualquiera de las
versiones existentes o creen nuevas versiones. También puede desbloquear un objeto que haya bloqueado.

La sintaxis para bloquear y desbloquear un objeto es:


[Link](REPOSITORY_PATH)
[Link](URI)

[Link](REPOSITORY_PATH)
[Link](URI)

Como cuando se almacenan y se recuperan objetos, RUTA_REPOSITORIO le ofrece la ubicación del objeto en
el repositorio. La ruta debe estar entre comillas y utilizar barras inclinadas como delimitadores. No
distingue entre mayúsculas y minúsculas.
[Link]("/myfolder/[Link]")
[Link]("/myfolder/[Link]")

Capítulo 5. Sugerencias para scripts 51


Si lo prefiere, puede utilizar un identificador de recursos uniforme (URI) en lugar de una ruta de
repositorio para proporcionar la ubicación del proyecto. El URI debe incluir el prefijo spsscr: y debe
estar entre comillas. Sólo se puede utilizar barras inclinadas como delimitadores, y los espacios deben
estar codificados. Es decir, utilizar %20 en lugar de un espacio en la ruta. El URI no distingue entre
mayúsculas y minúsculas. A continuación aparecen algunos ejemplos:
[Link]("spsscr:///myfolder/[Link]")
[Link]("spsscr:///myfolder/[Link]")

Tenga en cuenta que el bloqueo de objetos se aplica a todas las versiones de un objeto: no puede
bloquear o desbloquear versiones por separado.

Generación de una contraseña codificada


En algunos casos, puede que necesite incluir una contraseña en un script. Por ejemplo, es posible que
desee acceder a un origen de datos protegido con contraseña. Las contraseñas codificadas pueden
utilizarse en:
v Propiedades de los nodos para un origen de base de datos y nodos de resultado
v Argumentos de línea de comando para conectarse al servidor
v Propiedades de conexión con la base de datos almacenadas en un archivo .par (archivo de parámetro
generado desde la pestaña Publicar de un nodo de exportación)

A través de la interfaz de usuario, está disponible una herramienta para generar contraseñas codificadas
basándose en el algoritmo Blowfish (consulte [Link] si desea más
información). Una vez codificada, puede copiar y almacenar la contraseña en archivos de script y
argumentos de líneas de comando. La propiedad de nodo epassword utilizada para databasenode y
databaseexportnode almacena la contraseña codificada.
1. Para generar una contraseña codificada, en el menú Herramientas seleccione:
Codificar contraseña...
2. Especifique una contraseña en el cuadro de texto Contraseña.
3. Pulse en Codificar para generar una codificación aleatoria de la contraseña.
4. Pulse en el botón Copiar para copiar la contraseña codificada al Portapapeles.
5. Pegue la contraseña en el script o parámetro deseado.

Comprobación de script
Puede comprobar rápidamente la sintaxis de todos los tipos de scripts pulsando en el botón de
comprobación de la barra de herramientas del cuadro de diálogo Script de ruta.

Figura 6. Iconos de barra de herramientas del script de ruta

En la comprobación por script se avisa de cualquier error que se detecte en el código y se sugieren
recomendaciones de mejora. Para ver la línea con errores, pulse en los comentarios, en la mitad inferior
del cuadro de diálogo. Los errores se señalan en rojo.

Scripts desde la línea de comandos


El uso scripts permite ejecutar operaciones típicamente desarrolladas en la interfaz de usuario.
Simplemente especifique y ejecute una ruta independiente en la línea de comandos cuando ejecute IBM
SPSS Modeler. Por ejemplo:
client -script [Link] -execute

52 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


La marca -script carga el script especificado, mientras que la marca -execute ejecuta todos los comandos
del archivo de script.

Compatibilidad con releases anteriores


Los scripts creados en versiones anteriores de IBM SPSS Modeler deberían funcionar normalmente sin
cambios en la versión actual. Sin embargo, los nuggets de modelos podrán ahora insertarse en la ruta
automáticamente (es el comportamiento predeterminado) y podrán sustituir o complementar un nugget
existente del tipo en la ruta. El que esto ocurra depende de la configuración de las opciones Añadir
modelo a ruta y Sustituir modelo anterior (Herramientas > Opciones > Opciones de usuario >
Notificaciones). Por ejemplo, es posible que tenga que modificar un script de una versión anterior en el
que la sustitución del nugget se trate borrando el nugget existente e insertando uno nuevo.

Es posible que los scripts creados en esta versión no funcionen en versiones anteriores.

Si un script creó una liberación antigua utiliza un comando que se ha sustituido desde entonces (o
desaprobado), la forma antigua se seguirá admitiendo, pero aparecerá un mensaje de advertencia. Por
ejemplo, la palabra clave antigua generated se ha sustituido por model, y clear generated se ha
sustituido por clear generated palette. Los scripts que utilizan las formas antiguas se seguirán
ejecutando, pero se mostrará una advertencia.

Acceder a resultados de ejecución de la ruta


Muchos nodos de IBM SPSS Modeler producen datos de salida tales como modelos, diagramas y datos
tabulares. Muchos de estos datos de salida contienen valores útiles que pueden ser utilizados por scripts
para guiar la ejecución subsiguiente. Estos valores se agrupan en contenedores de contenido
(denominados simplemente contenedores) a los que se puede acceder utilizando etiquetas o
identificadores que identifican cada contenedor. La forma en que se accede a estos valores depende del
formato o "modelo de contenido" utilizado por el contenedor.

Por ejemplo, muchos resultados de modelo predictivo utilizan una variante de XML llamada PMML para
representar información sobre el modelo, tal como qué campos utiliza un árbol de decisiones en cada
bifurcación o cómo están conectadas las neuronas de una red neuronal y con qué intensidades. Los
resultados del modelo que utilizan PMML proporcionan un modelo de contenido XML que se puede
utilizar para acceder a esa información. Por ejemplo:
stream = [Link]()
# Suponga que la ruta contiene un nodo generador de modelos C5.0
# y que el origen de datos, los predictores y los destinos ya se han
# configurado
modelbuilder = [Link]("c50", None)
results = []
[Link](results)
modeloutput = results[0]

# Ahora que tenemos el objeto de salida del modelo C5.0, acceda al modelo
# de contenido pertinente
cm = [Link]("PMML")

# El modelo de contenido PMML es un modelo de contenido genérico basado en XML


# que utiliza sintaxis del lenguaje XPath. Utilice ese modelo para encontrar
# los nombres de los campos de datos.
# La llamada devuelve una lista de series de caracteres correspondientes a los valores XPath
dataFieldNames = [Link]("/PMML/DataDictionary/DataField", "name")

IBM SPSS Modeler es compatible con los modelos de contenido siguientes en los scripts:
v Modelo de contenido de tabla: proporciona acceso a datos tabulares simples representados como filas
y columnas
Capítulo 5. Sugerencias para scripts 53
v Modelo de contenido XML: proporciona acceso a contenido almacenado en formato XML
v Modelo de contenido JSON: proporciona acceso a contenido almacenado en formato JSON
v Modelo de contenido de estadísticas de columna: proporciona acceso a estadísticas de resumen sobre
un campo determinado
v Modelo de contenido de estadísticas de columna por pares: proporciona acceso a estadísticas de
resumen entre dos campos o valores entre dos campos separados

Modelo de contenido de tabla


El modelo de contenido de tabla proporciona un modelo sencillo para acceder a los datos simples de fila
y columna. Los valores en una columna determinada deben tener todos el mismo tipo de
almacenamiento (por ejemplo, series o enteros).

API
Tabla 25. API
Devolver Método Descripción
int getRowCount() Devuelve el número de filas en esta
tabla.
int getColumnCount() Devuelve el número de columnas en
esta tabla.
Cadena getColumnName(int columnIndex) Devuelve el nombre de la columna
en el índice de columna especificado.
El índice de columna comienza en el
0.
StorageType getStorageType(int columnIndex) Devuelve el tipo de almacenamiento
de la columna en el índice
especificado. El índice de columna
comienza en el 0.
Object getValueAt(int rowIndex, int Devuelve el valor en los índices de
columnIndex) fila y columna especificados. Los
índices de fila y columna comienzan
en el 0.
void reset() Desecha cualquier almacenamiento
interno asociado con este modelo de
contenido.

Nodos y salidas

Esta tabla lista los nodos que crean salidas que incluyen este tipo de modelo de contenido.
Tabla 26. Nodos y salidas
Nombre de nodo Nombre de resultado ID de contenedor
tabla tabla "tabla"

Script de ejemplo
stream = [Link]()
from [Link] import StorageType

# Establecer el nodo de importación de archivo de variable


varfilenode = [Link]("variablefile", "DRUG Data", 96, 96)
[Link]("full_filename", "$CLEO_DEMOS/DRUG1n")

54 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


# Crear el nodo Agregar y conectarlo al nodo de archivo de variable
aggregatenode = [Link]("aggregate", "Aggregate", 192, 96)
[Link](varfilenode, aggregatenode)

# Configurar el nodo Agregar


[Link]("keys", ["Drug"])
[Link]("aggregates", "Age", ["Min", "Max"])
[Link]("aggregates", "Na", ["Mean", "SDev"])

# Crear el nodo de salida de tabla y conectarlo al nodo Agregar


tablenode = [Link]("table", "Table", 288, 96)
[Link](aggregatenode, tablenode)

# Ejecutar el nodo de tabla y capturar el objeto de salida de resultado de la tabla


results = []
[Link](results)
tableoutput = results[0]

# Acceder al modelo de contenido del resultado de la tabla


tablecontent = [Link]("table")

# Para cada columna, imprimir el nombre de columna, tipo y la primera fila


# de valores del contenido de la tabla
col = 0
while col < [Link]():
print [Link](col), \
[Link](col), \
[Link](0, col)
col = col + 1

La salida en la pestaña Depuración de scripts tendrá un aspecto similar a este:


Age_Min Integer 15
Age_Max Integer 74
Na_Mean Real 0.730851098901
Na_SDev Real 0.116669731242
Drug String drugY
Record_Count Integer 91

Modelo de contenido XML


El modelo de contenido XML proporciona acceso a contenido basado en XML.

El modelo de contenido XML permite acceder a componentes utilizando expresiones XPath. Las
expresiones XPath son series que definen qué elementos o atributos son necesarios para el solicitante. El
modelo de contenido XML hace que sea transparente la creación de diversos objetos y expresiones de
compilación que normalmente son necesarios para el soporte de XPath. Esto hace que sea más sencillo
hacer llamadas desde scripts Python.

El modelo de contenido XML incluye una función que devuelve el documento XML como serie de
caracteres. Esto permite que los usuarios del script Python utilicen su biblioteca preferida de Python para
analizar XML.

API
Tabla 27. API
Devolver Método Descripción
Cadena getXMLAsString() Devuelve el XML en forma de serie
de caracteres.

Capítulo 5. Sugerencias para scripts 55


Tabla 27. API (continuación)
Devolver Método Descripción
Número getNumericValue(String xpath) Devuelve un resultado de tipo
numérico al analizar la vía de acceso
(por ejemplo, contar el número de
elementos que coinciden con la
expresión de vía de acceso).
Booleano getBooleanValue(String xpath) Devuelve un resultado de tipo
booleano al evaluar la expresión de
vía de acceso especificada.
Cadena getStringValue(String xpath, Devuelve el valor de atributo o valor
String attribute) de nodo XML que coincide con la vía
de acceso especificada.
Lista de series de caracteres getStringValues(String xpath, Devuelve una lista de todos los
String attribute) valores de atributo o valores de nodo
XML que coinciden con la vía de
acceso especificada.
Lista de series de caracteres getValuesList(String xpath, <Lista Devuelve una lista de todos los
de series de caracteres> valores de atributo que coinciden con
attributes, boolean includeValue) la vía de acceso especificada junto
con el valor de nodo XML si es
necesario.
Hash table (key:string, value:list getValuesMap(String xpath, String Devuelve una tabla hash que utiliza
of string) keyAttribute, <Lista de series de el atributo de clave o valor de nodo
caracteres> attributes, boolean XML como clave y la lista de valores
includeValue) de atributo especificados como
valores de la tabla.
Booleano isNamespaceAware() Indica si los analizadores XML deben
tener en cuenta los espacios de
nombres. El valor predeterminado es
False.
void setNamespaceAware(boolean value) Establece si los analizadores XML
deben tener en cuenta los espacios de
nombres. Esto también invoca a
reset() para asegurarse de que los
cambios sean captados por llamadas
posteriores.
void reset() Desecha cualquier almacenamiento
interno asociado con el modelo de
contenido (por ejemplo, un objeto
DOM almacenado en memoria
caché).

Nodos y salidas
Esta tabla lista los nodos que crean salidas que incluyen este tipo de modelo de contenido.
Tabla 28. Nodos y salidas
Nombre de nodo Nombre de resultado ID de contenedor
La mayoría de constructores de La mayoría de modelos generados "PMML"
modelos
"autodataprep" n/d "PMML"

56 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Script de ejemplo

El código del script Python para acceder al contenido puede tener este aspecto:
results = []
[Link](results)
modeloutput = results[0]
cm = [Link]("PMML")

dataFieldNames = [Link]("/PMML/DataDictionary/DataField", "name")


predictedNames = [Link]("//MiningSchema/MiningField[@usageType=’predicted’]",
"name")

Modelo de contenido JSON


El modelo de contenido JSON se utiliza para proporcionar soporte para contenido con formato JSON.
Esto proporciona una API básica para permitir que los solicitantes extraigan valores bajo la asunción de
que saben qué valores se deben acceder.

API
Tabla 29. API
Devolver Método Descripción
Cadena getJSONAsString() Devuelve el contenido JSON como
serie de caracteres.
Object getObjectAt(<Lista de objetos> Devuelve el objeto situado en la vía
path, JSONArtifact artifact) de acceso especificada. El artefacto
throws Exception raíz proporcionado puede ser nulo,
en cuyo caso se utiliza la raíz del
contenido. El valor devuelto puede
ser una serie literal, un entero, un
número real, un valor booleano o un
artefacto JSON (ya sea un objeto
JSON o una matriz JSON).
Tabla hash (key:object, getChildValuesAt(<Lista de Devuelve los valores hijo de la vía de
value:object> objetos> path, JSONArtifact acceso especificada si la vía conduce
artifact) throws Exception a un objeto JSON, o devuelve nulo en
caso contrario. Las claves de la tabla
son series, mientras que el valor
asociado puede ser una serie literal,
un entero, un número real, un valor
booleano o un artefacto JSON (ya sea
un objeto JSON o una matriz JSON).
Lista de objetos getChildrenAt(<Lista de objetos> Devuelve la lista de objetos situados
path path, JSONArtifact artifact) en la vía de acceso especificada si la
throws Exception vía conduce a una matriz JSON, o
devuelve nulo en caso contrario. Los
valores devueltos pueden ser una
serie literal, un entero, un número
real, un valor booleano o un artefacto
JSON (ya sea un objeto JSON o una
matriz JSON).
void reset() Desecha cualquier almacenamiento
interno asociado con el modelo de
contenido (por ejemplo, un objeto
DOM almacenado en memoria
caché).

Capítulo 5. Sugerencias para scripts 57


Script de ejemplo

Si existe un nodo generador de salida que crea salida en formato JSON, se puede utilizar lo siguiente
para acceder a información sobre un conjunto de libros:
results = []
[Link](results)
output = results[0]
cm = [Link]("jsonContent")

bookTitle = [Link](["books", "ISIN123456", "title"], None)

# Como alternativa, obtenga el objeto de libro y utilícelo como raíz


# para entradas subsiguientes
book = [Link](["books", "ISIN123456"], None)
bookTitle = [Link](["title"], book)

# Obtener todos los valores hijos para un libro determinado


bookInfo = [Link](["books", "ISIN123456"], None)

# Obtener la tercera entrada de libro. Se supone el valor de nivel superior "books"


# contiene una matriz JSON que se puede indexar
bookInfo = [Link](["books", 2], None)

# Obtener una lista de todas las entradas hijas


allBooks = [Link](["books"], None)

Modelo de contenido de estadísticas de columna y modelo de


contenido de estadísticas por pares
El modelo de contenido de estadísticas de columna proporciona acceso a estadísticas que se pueden
calcular para cada campo (estadísticas univariables). El modelo de contenido de estadísticas por pares
proporciona acceso a estadísticas que se pueden calcular para pares de campos o pares de valores de un
campo.

Las medidas estadísticas posibles son:


v Count
v UniqueCount
v ValidCount
v Mean
v Sum
v Min
v Max
v Range
v Variance
v StandardDeviation
v StandardErrorOfMean
v Skewness
v SkewnessStandardError
v Kurtosis
v KurtosisStandardError
v Mediana
v Mode
v Pearson

58 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


v Covariance
v TTest
v FTest

Algunos valores sólo son adecuados para estadísticas de una sola columna, mientras que otros sólo son
adecuados para estadísticas por pares.

Los nodos que generan estadísticas son los siguientes:


v El nodo Estadísticas produce estadísticas de columna y puede producir estadísticas por pares cuando
se especifican campos de correlación
v El nodo Auditoría de datos produce estadísticas de columna y puede producir estadísticas por pares
cuando se especifica un campo de preformato.
v El nodo Medias produce estadísticas por pares cuando compara pares de campos o cuando compara
valores de un campo con otros resúmenes de campo.

Qué modelos de contenido y estadísticas se pueden utilizar depende de las prestaciones del nodo en
cuestión y de los valores contenidos en ese nodo.

La API ColumnStatsContentModel
Tabla 30. La API ColumnStatsContentModel.
Devolver Método Descripción
List<StatisticType> getAvailableStatistics() Devuelve las estadísticas disponibles
en este modelo. No todos los campos
tendrán necesariamente valores para
todas las estadísticas.
List<String> getAvailableColumns() Devuelve los nombres de columna
para los que se han calculado
estadísticas.
Number getStatistic(String column, Devuelve los valores estadísticos
StatisticType statistic) asociados a la columna.
void reset() Desecha cualquier almacenamiento
interno asociado con el modelo de
contenido.

La API PairwiseStatsContentModel
Tabla 31. La API PairwiseStatsContentModel.
Devolver Método Descripción
List<StatisticType> getAvailableStatistics() Devuelve las estadísticas disponibles
en este modelo. No todos los campos
tendrán necesariamente valores para
todas las estadísticas.
List<String> getAvailablePrimaryColumns() Devuelve los nombres de columna
primaria para los que se han
calculado estadísticas.
List<Object> getAvailablePrimaryValues() Devuelve los valores de la columna
primaria para la que se han calculado
estadísticas.
List<String> getAvailableSecondaryColumns() Devuelve los nombres de columna
secundaria para los que se han
calculado estadísticas.

Capítulo 5. Sugerencias para scripts 59


Tabla 31. La API PairwiseStatsContentModel (continuación).
Devolver Método Descripción
Number getStatistic(String primaryColumn, Devuelve los valores estadísticos
String secondaryColumn, asociados a las columnas.
StatisticType statistic)
Number getStatistic(String primaryColumn, Devuelve los valores estadísticos
Object primaryValue, String asociados al valor de la columna
secondaryColumn, StatisticType primaria y la columna secundaria.
statistic)
void reset() Desecha cualquier almacenamiento
interno asociado con el modelo de
contenido.

Nodos y salidas

Esta tabla lista los nodos que generan datos de salida y que incluyen este tipo de modelo de contenido.
Tabla 32. Nodos y salidas.
Nombre de nodo Nombre de resultado ID de contenedor Notas
"means" "means" "columnStatistics"
(nodo Medias)
"means" "means" "pairwiseStatistics"
(nodo Medias)
"dataaudit" "means" "columnStatistics"
(nodo Auditoría de datos)
"statistics" "statistics" "columnStatistics" Sólo se genera cuando se
(nodo Estadísticas) examinan campos
determinados.
"statistics" "statistics" "pairwiseStatistics" Sólo se genera cuando se
(nodo Estadísticas) correlacionan campos.

Script de ejemplo
from [Link] import StatisticType
stream = [Link]()

# Definir los datos de entrada


varfile = [Link]("variablefile", "File", 96, 96)
[Link]("full_filename", "$CLEO/DEMOS/DRUG1n")

# Crear el nodo de estadísticas. Este nodo puede producir


# estadísticas de columna y estadísticas por pares
statisticsnode = [Link]("statistics", "Stats", 192, 96)
[Link]("examine", ["Age", "Na", "K"])
[Link]("correlate", ["Age", "Na", "K"])
[Link](varfile, statisticsnode)

results = []
[Link](results)
statsoutput = results[0]
statscm = [Link]("columnStatistics")
if (statscm != None):
cols = [Link]()
stats = [Link]()
print "Column stats:", cols[0], str(stats[0]), " = ", [Link](cols[0], stats[0])
60 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python
statscm = [Link]("pairwiseStatistics")
if (statscm != None):
pcols = [Link]()
scols = [Link]()
stats = [Link]()
corr = [Link](pcols[0], scols[0], [Link])
print "Pairwise stats:", pcols[0], scols[0], " Pearson = ", corr

Capítulo 5. Sugerencias para scripts 61


62 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python
Capítulo 6. Argumentos de la línea de comandos
Invocación del software
Puede utilizar la línea de comandos del sistema operativo para ejecutar IBM SPSS Modeler de la siguiente
manera:
1. En un ordenador en el que se haya instalado IBM SPSS Modeler, abra una ventana de DOS o del
indicador de comandos.
2. Para iniciar la interfaz de IBM SPSS Modeler en modo interactivo, escriba el comando clementine
seguido de los argumentos necesarios; por ejemplo:
modelerclient -stream [Link] -execute

Los argumentos disponibles (modificadores) permiten conectar con un servidor, cargar rutas, ejecutar
scripts o especificar otros parámetros, según sea necesario.

Utilización de argumentos de la línea de comandos


Se pueden añadir argumentos de línea de comandos (también denominados marcas) al comando inicial
modelerclient o para alterar la invocación de IBM SPSS Modeler.

Hay varios tipos de argumentos de línea de comandos disponibles que se describen más adelante en esta
sección.
Tabla 33. Tipos de argumentos de línea de comandos.
Tipo de argumento Dónde se describe
Argumentos del sistema Consulte el tema “Argumentos del sistema” en la página
64 para obtener más información.
Argumentos de parámetros Consulte el tema “Argumentos de parámetros” en la
página 65 para obtener más información.
Argumentos de conexión del servidor Consulte el tema “Argumentos de conexión del servidor”
en la página 66 para obtener más información.
Argumentos de conexión de Repositorio de IBM SPSS Consulte el tema “Repositorio de IBM SPSS
Collaboration and Deployment Services Collaboration and Deployment Services Argumentos de
conexión” en la página 67 para obtener más información.
Argumentos de conexión de IBM SPSS Analytic Server Consulte el tema “Argumentos de conexión de IBM SPSS
Analytic Server” en la página 68 para obtener más
información.

Por ejemplo, se pueden utilizar las marcas -server, -stream y -execute para conectar con un servidor y, a
continuación, cargar y ejecutar una ruta, de la siguiente forma:
modelerclient -server -hostname myserver -port 80 -username dminer
-password 1234 -stream [Link] -execute

Tenga en cuenta que al ejecutarse en una instalación cliente local, no se necesitan argumentos de conexión
con el servidor.

Los valores de parámetros que contienen espacios se pueden poner entre comillas dobles, por ejemplo:
modelerclient -stream [Link] -Pusername="Joe User" -execute

63
También puede ejecutar scripts y estados de IBM SPSS Modeler de esta forma, utilizando las marcas
-state y -script respectivamente.

Nota: Si utiliza un parámetro estructurado en un comando, delante de las comillas debe poner barras
invertidas. Así evitará que se quiten las comillas durante la interpretación de la serie.

Depuración de argumentos de línea de comandos


Para depurar una línea de comandos, utilice el comando modelerclient para iniciar IBM SPSS Modeler
con los argumentos deseados. Esto permite comprobar que los comandos se ejecutarán como se espera.
También puede confirmar los valores de cualquier parámetro pasado desde la línea de comandos en el
cuadro de diálogo Parámetros de sesión (menú Herramientas, Definir parámetros de sesión).

Argumentos del sistema


En la siguiente tabla se describen los argumentos del sistema disponibles para la invocación de la línea
de comandos de la interfaz de usuario.
Tabla 34. Argumentos del sistema
Argumento Comportamiento/Descripción
@ <archivo de comandos> El carácter @ seguido de un nombre de archivo especifica una lista de comandos.
Cuando modelerclient o encuentra un argumento que comienza por @, opera en los
comandos de este archivo como si hubieran estado en la línea de comandos. Consulte
el tema “Combinación de varios argumentos” en la página 68 para obtener más
información.
-directory <dir> Define el directorio de trabajo predeterminado. En el modo local, este directorio se
utiliza tanto para datos como para resultados. Ejemplo: -directory c:/ o -directory
c:\\
-server_directory <dir> Define el directorio de servidor predeterminado para datos. El directorio de trabajo,
especificado con la marca -directory, se utiliza para resultados.
-execute Después del inicio, ejecuta cualquier ruta, estado o script que se haya cargado en el
inicio. Si se carga un script además de una ruta o un estado, el script se ejecutará
solo.
-stream <ruta> Carga en el inicio la ruta especificada. Se pueden especificar varias rutas, pero la
última se definirá como la actual.
-script <script> Carga en el inicio el script autónomo especificado. Se puede especificar además de
una ruta o un estado, tal y como se describe a continuación, pero sólo se puede
cargar un único script en el inicio.
-model <modelo> En el inicio, carga el modelo generado (archivo de formato .gm) especificado.
-state <estado> Carga en el inicio el estado especificado guardado.
-project <proyecto> Carga el proyecto especificado. Sólo se puede cargar un único proyecto en el inicio.
-output <resultado> Carga en el inicio el objeto de resultados guardado (archivo de formato .cou).
-help Muestra una lista de argumentos de la línea de comandos. Cuando se especifica esta
opción, todos los demás argumentos se ignoran y se muestra la pantalla Ayuda.
-P <nombre>=<valor> Se utiliza para definir un parámetro de inicio. También se puede utilizar para definir
propiedades de nodos (parámetros de intervalo).

Nota: Los directorios predeterminados también se pueden establecer en la interfaz de usuario. Para
acceder a las opciones en el menú Archivo, seleccione Definir directorio o Definir directorio de servidor.

64 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Carga de varios archivos

Desde la línea de comandos puede cargar varias rutas, estados y resultados en el inicio repitiendo el
argumento relevante para cada objeto cargado. Por ejemplo, para cargar y ejecutar dos rutas llamadas
[Link] y [Link], utilizaría el siguiente comando:
modelerclient -stream [Link] -stream [Link] -execute

Carga de objetos desde el Repositorio de IBM SPSS Collaboration and


Deployment Services

Dado que puede cargar determinados objetos de un archivo o desde el Repositorio de IBM SPSS
Collaboration and Deployment Services (si dispone de licencia), el prefijo de nombre de archivo spsscr:
y, si lo desea, file: (para objetos en disco) indica a IBM SPSS Modeler donde buscar el objeto. El prefijo
funciona con las siguientes marcas:
v -stream
v -script
v -output
v -model
v -project

Puede utilizar el prefijo para crear un URI que especifique la ubicación del objeto, por ejemplo, -stream
"spsscr:///folder_1/scoring_stream.str". La presencia del prefijo spsscr: requiere que se especifique
una conexión válida a Repositorio de IBM SPSS Collaboration and Deployment Services en el mismo
comando. Así, por ejemplo, el comando completo sería:
modelerclient -spsscr_hostname myhost -spsscr_port 8080
-spsscr_username myusername -spsscr_password mypassword
-stream "spsscr:///folder_1/scoring_stream.str" -execute

Recuerde que en la línea de comandos debe utilizar un URI. El REPOSITORY_PATH más simple no se admite.
(Sólo funciona en scripts.) Para obtener más detalles sobre los URI para objetos en el Repositorio de IBM
SPSS Collaboration and Deployment Services, consulte el tema “Acceso a objetos en el Repositorio de
IBM SPSS Collaboration and Deployment Services” en la página 50.

Argumentos de parámetros
Los parámetros se pueden utilizar como marcas durante la ejecución de la línea de comandos de IBM
SPSS Modeler. En los argumentos de la línea de comandos, la marca -P se utiliza para denotar un
parámetro del tipo -P <nombre>=<valor>.

Los parámetros pueden ser:


v Parámetros simples (o parámetros utilizados directamente en expresiones CLEM).
v Parámetros de intervalo, también denominados propiedades de nodos. Estos parámetros se utilizan
para modificar la configuración de los nodos en la ruta. Consulte el tema “Visión general de
propiedades de nodo” en la página 71 para obtener más información.
v Parámetros de la línea de comandos, que son parámetros utilizados para alterar la invocación de IBM
SPSS Modeler.

Por ejemplo, puede proporcionar contraseñas y nombres de usuario de orígenes de datos como una
marca de la línea de comandos, por ejemplo:
modelerclient -stream [Link] -P:[Link]="{\"ORA 10gR2\",user1,mypsw,false}"

El formato es el mismo que el del parámetro datasource de la propiedad de nodo databasenode. Para
obtener más información, consulte: “propiedades de databasenode” en la página 84.

Capítulo 6. Argumentos de la línea de comandos 65


El último parámetro se debe establecer en true si está pasando una contraseña codificada. También tenga
en cuenta que no deben utilizarse espacios iniciales delante del nombre de usuario y de la contraseña de
la base de datos (a menos, por supuesto, que el nombre de usuario o la contraseña realmente contenga
un espacio inicial).

Nota: Si el nodo tiene nombre, debe encerrar el nombre del nodo entre comillas dobles y utilizar una
barra inclinada invertida como carácter de escape antes de las comillas. Por ejemplo, si el nodo de origen
de datos del ejemplo anterior tiene el nombre Source_ABC, la entrada sería la siguiente:
modelerclient -stream [Link] -P:databasenode.\"Source_ABC\".datasource="{\"ORA 10gR2\",
user1,mypsw,true}"

También se requiere una barra inclinada invertida delante de las comillas que identifican un parámetro
estructurado, como en el siguiente ejemplo de origen de datos de TM1:
clemb -server -hostname [Link] -port 28053 -username administrator
-execute -stream C:\Share\TM1_Script.str -P:tm1import.pm_host="[Link]
-P:tm1import.tm1_connection={\"SData\",\"\",\"admin\",\"apple\"}
-P:tm1import.selected_view={\"SalesPriorCube\",\"salesmargin%\"}

Argumentos de conexión del servidor


La marca -server indica a IBM SPSS Modeler que debe conectar con un servidor público, y las marcas
-hostname, -use_ssl, -port, -username, -password y -domain se utilizan para indicar a IBM SPSS Modeler
cómo conectar con el servidor público. Si no se especifica ningún argumento -server, se utilizará el
servidor predeterminado o local.

Ejemplos

Para conectarse con un servidor público:


modelerclient -server -hostname myserver -port 80 -username dminer
-password 1234 -stream [Link] -execute

Para conectarse con un clúster de servidores:


modelerclient -server -cluster "QA Machines" \
-spsscr_hostname pes_host -spsscr_port 8080 \
-spsscr_username asmith -spsscr_epassword xyz

Tenga en cuenta que para conectarse a un clúster de servidores necesita Coordinator of Processes a través
de IBM SPSS Collaboration and Deployment Services, de modo que debe utilizar el argumento -cluster
junto con las opciones de conexión de repositorio (spsscr_*). Consulte el tema “Repositorio de IBM SPSS
Collaboration and Deployment Services Argumentos de conexión” en la página 67 para obtener más
información.
Tabla 35. Argumentos de conexión del servidor.
Argumento Comportamiento/Descripción
-server Ejecuta IBM SPSS Modeler en el modo servidor, conectando con un servidor
público utilizando las marcas -hostname, -port, -username, -password y -domain.
-hostname <nombre> Nombre de host del equipo servidor. Disponible en el modo servidor solamente.
-use_ssl Especifica que la conexión debería utilizar SSL (secure socket layer). La marca es
opcional, el parámetro predeterminado no utiliza SSL.
-port <número> Número de puerto del servidor especificado. Disponible en el modo servidor
solamente.

66 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 35. Argumentos de conexión del servidor (continuación).
Argumento Comportamiento/Descripción
-cluster <nombre> Especifica una conexión a un clúster de servidores en lugar de un servidor
especificado; este argumento es una alternativa a los argumentos hostname, port y
use_ssl. El nombre es el del clúster o un URI exclusivo que identifica el clúster en
el Repositorio de IBM SPSS Collaboration and Deployment Services. Coordinator
of Processes gestiona el clúster de servidores a través de IBM SPSS Collaboration
and Deployment Services. Consulte el tema “Repositorio de IBM SPSS
Collaboration and Deployment Services Argumentos de conexión” para obtener
más información.
-username <nombre> Nombre de usuario con el que iniciar sesión en el servidor. Disponible en el modo
servidor solamente.
-password <contraseña> Contraseña con la que iniciar sesión en el servidor. Disponible en el modo servidor
solamente.
Nota: Si el argumento -password no se utiliza, se le pediría una contraseña.
-epassword <cadena de Contraseña codificada con la que iniciar sesión en el servidor. Disponible en el
contraseña codificada> modo servidor solamente.
Nota: Se puede generar una contraseña codificada desde el menú Herramientas de
la aplicación IBM SPSS Modeler.
-domain <nombre> Dominio utilizado para iniciar sesión en el servidor. Disponible en el modo
servidor solamente.
-P <nombre>=<valor> Se utiliza para definir un parámetro de inicio. También se puede utilizar para
definir propiedades de nodos (parámetros de intervalo).

Repositorio de IBM SPSS Collaboration and Deployment Services


Argumentos de conexión
Si desea almacenar o recuperar objetos de IBM SPSS Collaboration and Deployment Services a través de
la línea de comandos, debe especificar una conexión válida con Repositorio de IBM SPSS Collaboration
and Deployment Services. Por ejemplo:
modelerclient -spsscr_hostname myhost -spsscr_port 8080
-spsscr_username myusername -spsscr_password mypassword
-stream "spsscr:///folder_1/scoring_stream.str" -execute

La siguiente tabla enumera los argumentos que pueden utilizarse para configurar la conexión.
Tabla 36. Argumentos de conexión de Repositorio de IBM SPSS Collaboration and Deployment Services
Argumento Comportamiento/Descripción
-spsscr_hostname <nombre del host o El nombre del host o la dirección IP del servidor en que se ha instalado
dirección IP> Repositorio de IBM SPSS Collaboration and Deployment Services.
-spsscr_port <número> Número de puerto en el que el Repositorio de IBM SPSS Collaboration
and Deployment Services acepta las conexiones (normalmente 8080 de
forma predeterminada).
-spsscr_use_ssl Especifica que la conexión debería utilizar SSL (secure socket layer). La
marca es opcional, el parámetro predeterminado no utiliza SSL.
-spsscr_username <nombre> Nombre de usuario con el que iniciar sesión en el Repositorio de IBM
SPSS Collaboration and Deployment Services.
-spsscr_password <contraseña> Contraseña con la que iniciar sesión en el Repositorio de IBM SPSS
Collaboration and Deployment Services.
-spsscr_epassword <contraseña Contraseña cifrada con la que iniciar sesión en el Repositorio de IBM
codificada> SPSS Collaboration and Deployment Services.

Capítulo 6. Argumentos de la línea de comandos 67


Tabla 36. Argumentos de conexión de Repositorio de IBM SPSS Collaboration and Deployment
Services (continuación)
Argumento Comportamiento/Descripción
-spsscr_providername <nombre> El proveedor de autenticación utilizado para iniciar la sesión en el
Repositorio de IBM SPSS Collaboration and Deployment Services (Active
Directory o LDAP). Esto no resulta necesario si se utiliza el proveedor
nativo (repositorio local).

Argumentos de conexión de IBM SPSS Analytic Server


Si desea almacenar o recuperar objetos de IBM SPSS Analytic Server mediante la línea de comandos, debe
indicar una conexión válida con IBM SPSS Analytic Server.

Nota: La ubicación predeterminada de Analytic Server se obtiene de SPSS Modeler Server. Los usuarios
también pueden definir sus propias conexiones de Analytic Server a través de Herramientas >
Conexiones de Analytic Server.

La siguiente tabla enumera los argumentos que pueden utilizarse para configurar la conexión.
Tabla 37. Argumentos de conexión de IBM SPSS Analytic Server
Argumento Comportamiento/Descripción
-analytic_server_username Nombre de usuario con el que iniciar sesión en IBM SPSS Analytic
Server.
-analytic_server_password La contraseña con la que se inicia sesión en IBM SPSS Analytic Server.
-analytic_server_epassword La contraseña codificada con la que se inicia sesión en IBM SPSS
Analytic Server.
-analytic_server_credential Las credenciales utilizadas para iniciar sesión en IBM SPSS Analytic
Server.

Combinación de varios argumentos


Es posible combinar varios argumentos en un único archivo de comandos especificado en la invocación
utilizando el símbolo @ seguido del nombre de archivo. De este modo podrá acortar la invocación de la
línea de comandos y superar cualquier limitación del sistema operativo en la longitud del comando. Por
ejemplo, el siguiente comando de inicio utiliza todos los argumentos especificados en el archivo de
referencia <nombre de archivo de comandos>.
modelerclient @<commandFileName>

Ponga el nombre del archivo y la ruta del archivo de comandos entre comillas si hay que incluir espacios,
de la siguiente forma:
modelerclient @ "C:\Archivos de programa\IBM\SPSS\Modeler\nn\scripts\my_command_file.txt"

El archivo de comandos puede contener todos los argumentos especificados previamente a nivel
individual en el inicio. Por ejemplo:
-stream [Link]
-Porder.full_filename=APR_orders.dat
-[Link]=APR_report.txt
-execute

Cuando escriba y referencie archivos de comandos, asegúrese de cumplir estas restricciones:


v Utilice sólo un comando por línea.
v No incruste un argumento @archivo de comandos en un archivo de comandos.

68 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Capítulo 7. Referencia de propiedades
Visión general de referencia de propiedades
Puede especificar una serie de propiedades distintas para nodos, rutas, proyectos y supernodos. Algunas
propiedades son comunes a todos los nodos, como el nombre, la anotación y la información sobre
herramientas, mientras que otras son específicas para determinados tipos de nodos. Otras propiedades
hacen referencia a operaciones de rutas de alto nivel, como el comportamiento del Supernodo o el
almacenamiento en caché. Se puede acceder a las propiedades a través de la interfaz de usuario estándar
(por ejemplo, al abrir un cuadro de diálogo para editar opciones para un nodo) y se pueden utilizar
también de varias otras formas.
v Las propiedades se pueden modificar a través de los scripts, como se describe en esta sección. Si desea
obtener más información, consulte “Sintaxis para propiedades”.
v Las propiedades de los nodos se pueden utilizar en los parámetros de Supernodo.
v Asimismo, las propiedades de los nodos se pueden utilizar como parte de una opción de línea de
comandos (mediante la marca -P) al iniciar IBM SPSS Modeler.

En el contexto de los scripts de IBM SPSS Modeler, las propiedades de nodos y rutas se suelen llamar
parámetros de intervalo. En esta guía, se denominan propiedades de nodos y rutas.

Si desea obtener más información sobre el lenguaje de scripts, consulte Lenguaje de scripts.

Sintaxis para propiedades


Las propiedades se pueden establecer con la sintaxis siguiente
[Link](PROPERTY, VALUE)

o:
[Link](PROPERTY, KEY, VALUE)

El valor de propiedades se puede recuperar usando la sintaxis siguiente:


VARIABLE = [Link](PROPERTY)

o:
VARIABLE = [Link](PROPERTY, KEY)

donde OBJECT es un nodo o salida, PROPERTY es el nombre de la propiedad de nodo al que la expresión se
refiere, y KEY es el valor de la clave para las propiedades clave. Por ejemplo, la siguiente sintaxis se
utiliza para buscar el nodo de filtro y, a continuación, establecer el valor predeterminado para incluir
todos los campos y filtrar el campo Age en los datos en sentido descendente:
filternode = [Link]().findByType("filter", None)
[Link]("default_include", True)
[Link]("include", "Age", False)

Todos los nodos utilizados en IBM SPSS Modeler pueden encontrarse utilizando la función
findByType(TYPE, LABEL) de la ruta. Al menos debe especificarse TYPE o LABEL.

Propiedades estructuradas
Hay dos formas en las que los scripts utilizan propiedades estructuradas para mejorar la claridad durante
el análisis:
v Otorgando estructura a los nombres de las propiedades para los nodos complejos, como Tipo, Filtro o
Equilibrar.
69
v Proporcionando un formato para especificar varias propiedades a la vez.

Estructuración para las interfaces complejas

Los scripts para los nodos con tablas y otras interfaces complejas, como, por ejemplo, los nodos Tipo,
Filtro o Equilibrar, deben seguir una estructura determinada para realizar el análisis correctamente. Estas
propiedades necesitan un nombre más complejo que el de un solo identificador. Este nombre se
denomina clave. Por ejemplo, en un nodo Filtrar, cada campo disponible (en la parte superior) se activa o
desactiva. Para poder consultar esta información, el nodo Filtrar almacena un elemento de información
por campo (independientemente de que el campo sea verdadero o falso). Esta propiedad debe tener (o se
le ha dado) el valor True o False. Supongamos que un nodo Filtrar denominado minodo tiene (en la parte
superior) un campo denominado Edad. Para desactivar esto, establezca la propiedad include, con la clave
Age, en el valor False, del modo siguiente:
[Link]("include", "Age", False)

Estructuración para definir varias propiedades

Si hay muchos nodos, puede asignar más de una propiedad de nodo o ruta al mismo tiempo. Esto se
denomina comando de conjunto múltiple o bloque de conjuntos.

En algunos casos, una propiedad estructurada puede ser bastante compleja. A continuación se muestra un
ejemplo:
[Link]("keys", [["K", "Descending"], ["Age", "Ascending"],
["Na", "Descending"]])

Otra ventaja de las propiedades estructuradas es la capacidad de definir varias propiedades en un nodo
antes de que éste sea estable. De forma predeterminada, un conjunto múltiple define todas las
propiedades del bloque antes de realizar una acción basada en una configuración de propiedades
individuales. Por ejemplo, al definir un nodo Archivo fijo, el uso de dos pasos para definir las
propiedades del campo daría lugar a errores porque el nodo no será constante hasta que las dos
configuraciones sean válidas. La definición de las propiedades como un conjunto múltiple salva este
problema al definir ambas propiedades antes de actualizar el modelo de datos.

Abreviaturas
Las abreviaturas estándar se utilizan en la sintaxis para las propiedades de nodos. El aprendizaje de las
abreviaturas le ayudará en la creación de scripts.
Tabla 38. Abreviaturas estándar utilizadas en toda la sintaxis
Abreviatura Significado
abs Valor absoluto
lon Longitud
min Mínimo
máx Máximo
correl Correlation
covar Covariance
núm Número o numérico
pct Porcentaje
transp Transparencia
xval Validación cruzada
var Varianza o variable (en nodos de origen)

70 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Ejemplos de las propiedades node y stream
Las propiedades de nodos y rutas se pueden utilizar de varias formas con IBM SPSS Modeler.
Normalmente se utilizan como parte de un script, bien un script autónomo, utilizado para automatizar
rutas u operaciones o un script de ruta, utilizado para automatizar procesos en una sola ruta. Los
parámetros de nodo se pueden especificar también utilizando las propiedades para los nodos del
Supernodo. En el nivel más básico, las propiedades se pueden utilizar también como una opción de línea
de comandos para iniciar IBM SPSS Modeler. Si utiliza el argumento -p como parte de la invocación de la
línea de comandos, podrá utilizar una propiedad de ruta para cambiar una configuración de la ruta.
Tabla 39. Ejemplos de las propiedades node y stream
Propiedad Significado
Hace referencia a la propiedad max_size del nodo
s.max_size
denominado s.
Hace referencia a la propiedad max_size del nodo
s:samplenode.max_size
denominado s que debe ser un nodo Muestrear.
Hace referencia a la propiedad max_size del nodo
:samplenode.max_size Muestrear de la ruta actual (debe haber sólo un nodo
Muestrear).
Hace referencia a la propiedad max_size del nodo
s:sample.max_size
denominado s que debe ser un nodo Muestrear.
[Link] Hace referencia al rol del campo Edad del nodo Tipo t.
*** NO ES LEGAL *** Debe especificar el nombre o el
:.max_size
tipo de nodo.

El ejemplo s:sample.max_size muestra que no es necesario deletrear los tipos de nodos al completo.

El ejemplo [Link] muestra que algunos nombres de intervalo se pueden estructurar por sí
mismos, en aquellos casos en que los atributos de un nodo sean más complejos que los intervalos
individuales con valores individuales. Dichos intervalos se denominan estructurados o complejos.

Visión general de propiedades de nodo


Cada tipo de nodo tiene su propio conjunto de propiedades legales y cada propiedad tiene un tipo. Este
tipo puede ser un tipo general, número, marca o cadena, en cuyo caso, las configuraciones de la
propiedad se forzarán en el tipo correcto. Surgirá un error en caso de que no se puedan forzar. También
se puede dar el caso de que la referencia de la propiedad pueda especificar el rango de valores legales
como Discard, PairAndDiscard e IncludeAsText, en cuyo caso se producirá un error si se utiliza otro
valor. Las propiedades de marcas se deben leer o definir mediante los valores True y False. (Las
variaciones que contengan Off, OFF, off, No, NO, no, n, N, f, F, false, False, FALSE o 0 también se reconocen
al configurar los valores, pero pueden provocar errores al leer los valores de propiedad en algunos casos.
El resto de valores se consideran verdaderos. El uso de verdadero y falso de forma consistente evitará
confusiones). En las tablas de referencia de esta guía, las propiedades estructuradas se indican como tales
en la columna Descripción de la propiedad y se proporcionan los formatos de uso.

Propiedades de nodos comunes


Existen varias propiedades que son comunes a todos los nodos (incluidos los Supernodos) en IBM SPSS
Modeler.
Tabla 40. Propiedades comunes de nodos.
Nombre de la propiedad Tipo de datos Descripción de la propiedad
use_custom_name tag

Capítulo 7. Referencia de propiedades 71


Tabla 40. Propiedades comunes de nodos (continuación).
Nombre de la propiedad Tipo de datos Descripción de la propiedad
name cadena Propiedad de sólo lectura que lee el
nombre (automático o personalizado)
para un nodo del lienzo.
custom_name cadena Especifica un nombre personalizado
para el nodo.
tooltip cadena
annotation cadena
palabras clave cadena Intervalo estructurado que especifica
una lista de palabras clave asociadas
al objeto (por ejemplo,
["PalabraClave1" "PalabraClave2"]).
cache_enabled tag
tipo_nodo source_supernode Propiedad de sólo lectura utilizada
process_supernode para hacer referencia a un nodo por
terminal_supernode tipo. Por ejemplo, en lugar de hacer
todos los nombres de nodos tal referencia al nodo sólo por el
como se especifican para nombre, como ingresos_reales,
script puede también especificar el tipo,
como userinputnode o filternode.

Las propiedades específicas del Supernodo se tratan aparte como con los demás nodos. Consulte el tema
Capítulo 21, “Propiedades de supernodo”, en la página 365 para obtener más información.

72 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Capítulo 8. Propiedades de ruta
Los scripts pueden controlar una serie de propiedades de la ruta. Para hacer referencia a propiedades de
ruta, debe establecer el método de ejecución para que utilice scripts:
stream = [Link]()
[Link]("execute_method", "Script")

Ejemplo

La propiedad de nodo se utiliza para hacer referencia a los nodos en la ruta actual. El siguiente script de
ruta muestra un ejemplo:
stream = [Link]()
annotation = [Link]("annotation")

annotation = annotation + "\n\nEsta ruta se llama \"" + [Link]() + "\" y


contiene los nodos siguientes:\n"

for node in [Link]():


annotation = annotation + "\n" + [Link]() + " nodo denominado \"" + [Link]()
+ "\""

[Link]("annotation", annotation)

El ejemplo anterior utiliza la propiedad node para crear una lista con todos los nodos de la ruta y escribir
dicha lista en las anotaciones. La anotación generada tendrá el siguiente aspecto:
Esta ruta se llama "druglearn" y contiene los siguientes nodos:

type node called "Define Types"


derive node called "Na_to_K"
variablefile node called "DRUG1n"
neuralnetwork node called "Drug"
c50 node called "Drug"
filter node called "Discard Fields"

Las propiedades de la ruta se describen en la tabla siguiente.


Tabla 41. Propiedades de ruta.
Nombre de la propiedad Tipo de datos Descripción de la propiedad
execute_method Normal
Script

© Copyright IBM Corp. 1994, 2017 73


Tabla 41. Propiedades de ruta (continuación).
Nombre de la propiedad Tipo de datos Descripción de la propiedad
date_format "DDMMAA"
"MMDDYY"
"AAMMDD"
"YYMMDD"
"YYYYDDD"
DAY
MONTH
"DD-MM-YY"
"DD-MM-YYYY"
"MM-DD-YY"
"MM-DD-AAAA"
"DD-MES-YY"
"DD-MES-YYYY"
"YYYY-MM-DD"
"[Link]"
"[Link]"
"[Link]"
"[Link]"
"[Link]"
"DD/MM/YY"
"DD/MM/AAAA"
"MM/DD/YY"
"MM/DD/YYYY"
"DD/MES/YY"
"DD/MES/YYYY"
MON YYYY
q Q YYYY
ww WK YYYY
date_baseline number
date_2digit_baseline number
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"
"[Link]"
"[Link]"
"[Link]"
"(H)H.(M)M.(S)S"
"(H)H.(M)M"
"(M)M.(S)S"
time_rollover tag
import_datetime_as_string tag
decimal_places number
decimal_symbol Predeterminado
Period
Comma
angles_in_radians tag
use_max_set_size tag
max_set_size number
ruleset_evaluation Voting
FirstHit

74 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 41. Propiedades de ruta (continuación).
Nombre de la propiedad Tipo de datos Descripción de la propiedad
refresh_source_nodes tag Se utiliza para actualizar los nodos
de origen de forma automática al
realizar la ejecución de la ruta.
script cadena
annotation cadena
name cadena Nota: Esta propiedad es de sólo
lectura. Si desea cambiar el nombre
de una ruta, debe guardarla con un
nombre diferente.
parameters Utilice esta propiedad para actualizar
los parámetros de ruta desde dentro
de un script autónomo.
nodos Consulte la información detallada
que se muestra a continuación.
codificación SystemDefault
"UTF-8"
stream_rewriting booleano
stream_rewriting_maximise_sql booleano

stream_rewriting_optimise_clem_ booleano
ejecución

stream_rewriting_optimise_syntax_ booleano
ejecución
enable_parallelism booleano
sql_generation booleano
database_caching booleano
sql_logging booleano
sql_generation_logging booleano
sql_log_native booleano
sql_log_prettyprint booleano
record_count_suppress_input booleano
record_count_feedback_interval entero
use_stream_auto_create_node_ booleano Si es true, se utilizan los valores
valores específicos de la ruta, de lo contrario,
se utilizan las preferencias de
usuario.
create_model_applier_for_new_ booleano Si es true, cuando un constructor de
modelos modelos crea un modelo nuevo y no
tiene enlaces de actualización activos,
se añade un nuevo aplicador de
modelos.
Nota: Si utiliza IBM SPSS Modeler
Batch versión 15, debe añadir de
forma explícita el aplicador de
modelos dentro de su script.
create_model_applier_update_links createEnabled Define el tipo de enlace creado
createDisabled cuando se añade automáticamente un
doNotCreate nodo aplicador de modelos.

Capítulo 8. Propiedades de ruta 75


Tabla 41. Propiedades de ruta (continuación).
Nombre de la propiedad Tipo de datos Descripción de la propiedad
create_source_node_from_builders booleano Si es true, cuando un constructor de
modelos crea un resultado de origen
nuevo y no tiene enlaces de
actualización activos, se añade un
nuevo nodo de origen.
create_source_node_update_links createEnabled Define el tipo de enlace creado
createDisabled cuando se añade automáticamente un
doNotCreate nodo de origen.
has_coordinate_system booleano Si es verdadero, aplica un sistema de
coordenadas a la ruta completa.
coordinate_system cadena El nombre del sistema de
coordenadas proyectadas
seleccionado.
deployment_area ModelRefresh Selecciona cómo desea desplegar la
Puntuación ruta. Si este valor está establecido en
Ninguno Ninguno, no se utiliza ninguna otra
entrada de despliegue.
scoring_terminal_node_id cadena Elija la rama de puntuación en la
ruta. Puede ser cualquier terminal de
la ruta.
scoring_node_id cadena Elija el nugget de la rama de
puntuación.
model_build_node_id cadena Elija el nodo de modelado de la ruta.

76 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Capítulo 9. Propiedades de nodos de origen
Propiedades comunes de nodos de origen
Las propiedades comunes a todos los nodos de origen se enumeran a continuación, con información
sobre nodos específicos en los temas siguientes.

Ejemplo 1
varfilenode = [Link]().create("variablefile", "Var. File")
[Link]("full_filename", "$CLEO_DEMOS/DRUG1n")
[Link]("check", "Age", "None")
[Link]("values", "Age", [1, 100])
[Link]("type", "Age", "Range")
[Link]("direction", "Age", "Input")

Ejemplo 2

Este script presupone que el archivo de datos especificado contiene un campo Region que representa una
cadena de varias líneas.
from [Link] import StorageType
from [Link] import MeasureType

# Cree un nodo Archivo de variables que lee el conjunto de datos que contiene
# el campo "Region"
varfilenode = [Link]().create("variablefile", "My Geo Data")
[Link]("full_filename", "C:/mydata/[Link]")
[Link]("treat_square_brackets_as_lists", True)

# Sustituya el tipo de almacenamiento para que sea una lista...


[Link]("custom_storage_type", "Region", [Link])
# ...y especifique el tipo de los valores de la lista y la profundidad de lista
[Link]("custom_list_storage_type", "Region", [Link])
[Link]("custom_list_depth", "Region", 2)

# Cambie ahora la medición para identificar el campo como un valor geoespacial...


[Link]("measure_type", "Region", [Link])
# ...y, finalmente, especifique la información necesaria sobre el tipo
# específico de objeto geoespacial
[Link]("geo_type", "Region", "MultiLineString")
[Link]("geo_coordinates", "Region", "2D")
[Link]("has_coordinate_system", "Region", True)
[Link]("coordinate_system", "Region",
"ETRS_1989_EPSG_Arctic_zone_5-47")
Tabla 42. Propiedades comunes de nodos de origen.
Nombre de la propiedad Tipo de datos Descripción de la propiedad
dirección Input Propiedad con clave para los roles de los campos.
Destino
Both Formato de uso:
Ninguno [Link]
Partition Nota: Los valores In y Out han quedado en desuso. Es
Split posible que ya no puedan utilizarse en futuras versiones.
Frequency
RecordID

77
Tabla 42. Propiedades comunes de nodos de origen (continuación).
Nombre de la propiedad Tipo de datos Descripción de la propiedad
type Range Tipo de campo. Si se establece esta propiedad como
Flag Default, se borrará cualquier configuración del parámetro
Set values y si value_mode tiene el valor Specify, se
Sin tipo restablecerá a Read. Si value_mode se establece en Pass o
Discrete Read, la configuración de type no le afectará.
Conjunto ordenado
Predeterminado Formato de uso:
[Link]
storage Desconocido Propiedad con clave de solamente lectura para el tipo de
Cadena almacenamiento de campos.
Entero
Real Formato de uso:
Hora [Link]
Fecha
Marca de tiempo
check Ninguno Propiedad con clave para la comprobación del rango y el
Nullify tipo de campo.
Coerce
Descartar Formato de uso:
Warn [Link]
Abort
values [value value] Para un campo continuo (rango), el primer valor es el
mínimo y el último valor es el máximo. Para campos
nominales (conjunto), especifique todos los valores. Para
los campos marca, el primer valor representa falso y el
último, verdadero. La configuración de esta propiedad
establece de forma automática la propiedad value_mode
en Specify. El almacenamiento se determina en función
del primer valor de la lista, por ejemplo, si el primer
valor es una cadena, el almacenamiento se establece en
Cadena.

Formato de uso:
[Link]
value_mode Leer Determina la forma en que se han establecido los valores
Pasar para un campo en la siguiente lectura de datos.
Leer+
Actual Formato de uso:
Especifica NODO.value_mode.NOMBRECAMPO
Tenga en cuenta que no puede establecer esta propiedad
directamente en Specify. Para utilizar valores específicos,
establezca la propiedad values.
default_value_mode Leer Especifica el método predeterminado para configurar los
Pasar valores de todos los campos.

Formato de uso:
NODO.default_value_mode

Esta configuración puede anularse para determinados


campos mediante la propiedad value_mode.

78 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 42. Propiedades comunes de nodos de origen (continuación).
Nombre de la propiedad Tipo de datos Descripción de la propiedad
extend_values tag Se aplica cuando value_mode se establece en Read.
Establézcala en T para añadir nuevos valores de lectura
a los valores existentes del campo. Establézcala en F para
descartar los valores existentes y favorecer a los nuevos
valores de lectura.

Formato de uso:
NODO.extend_values.NOMBRECAMPO
value_labels cadena Se utiliza para especificar una etiqueta de valor. Tenga
en cuenta que estos valores se deben especificar primero.
enable_missing tag Cuando está definida como T, activa el seguimiento de
los valores perdidos para el campo.

Formato de uso:
NODO.enable_missing.NOMBRECAMPO
missing_values [value value ...] Especifica los valores de datos que denotan los datos
perdidos.

Formato de uso:
NODO.missing_values.NOMBRECAMPO
range_missing tag Cuando esta propiedad se establece como T, especifica si
se define un rango de valores perdidos (en blanco) para
un campo.

Formato de uso:
NODO.range_missing.NOMBRECAMPO
missing_lower cadena Si range_missing es verdadero, especifica el límite
inferior del rango de valores perdidos.

Formato de uso:
NODO.missing_lower.NOMBRECAMPO
missing_upper cadena Si range_missing es verdadero, especifica el límite
superior del rango de valores perdidos.

Formato de uso:
NODO.missing_upper.NOMBRECAMPO
null_missing tag Cuando esta propiedad se establece en T, los valores
nulos (valores no definidos que se muestran como
$null$ en el software) se consideran valores perdidos.

Formato de uso:
NODO.null_missing.NOMBRECAMPO
whitespace_missing tag Cuando esta propiedad está definida como T, los valores
que solamente contienen un espacio en blanco (espacios,
tabulaciones y líneas nuevas) se consideran valores
perdidos.

Formato de uso:
NODO.whitespace_missing.NOMBRECAMPO
description cadena Se utiliza para especificar la descripción o etiqueta de un
campo.

Capítulo 9. Propiedades de nodos de origen 79


Tabla 42. Propiedades comunes de nodos de origen (continuación).
Nombre de la propiedad Tipo de datos Descripción de la propiedad
default_include tag Propiedad con clave para especificar si el
comportamiento predeterminado es para pasar o filtrar
los campos:
NODO.default_include

Ejemplo:
set minodo:filternode.default_include = false
include tag Propiedad con clave que se utiliza para determinar si los
campos individuales se han incluido o se han filtrado:
[Link].
new_name cadena
measure_type Range / Esta propiedad con clave es similar a type en cuanto a
[Link] que puede utilizarse para definir la medición asociada al
Discrete / campo. La diferencia es que, en los scripts Python, la
[Link] función de establecimiento puede pasar también uno de
Flag / [Link] los valores MeasureType, mientras que la función de
Set / [Link] obtención siempre devolverá los valores MeasureType.
OrderedSet /
MeasureType.ORDERED_SET
Typeless /
[Link]
Collection /
[Link]
Geospatial /
[Link]
collection_measure Range / Para campos de recopilación (listas con profundidad 0),
[Link] esta propiedad con clave define el tipo de medición
Flag / [Link] asociado con los valores subyacentes.
Set / [Link]
OrderedSet /
MeasureType.ORDERED_SET
Typeless /
[Link]
geo_type Point En campos geoespaciales, esta propiedad con clave
Multipunto define el tipo del objeto geoespacial representado por
Cadena lineal este campo. Debería ser coherente con la profundidad de
Cadena multilínea lista de los valores.
Polígono
Multipolígono
has_coordinate_system booleano En campos geoespaciales, esta propiedad define si este
campo tiene un sistema de coordenadas
coordinate_system cadena En campos geoespaciales, esta propiedad con clave
define el sistema de coordenadas para este campo.

80 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 42. Propiedades comunes de nodos de origen (continuación).
Nombre de la propiedad Tipo de datos Descripción de la propiedad
custom_storage_type Unknown / Esta propiedad con clave es similar a custom_storage en
[Link] cuanto a que puede utilizarse para definir el
String / almacenamiento de alteración temporal para el campo.
[Link] La diferencia es que, en los scripts Python, la función de
Integer / establecimiento puede pasar también uno de los valores
[Link] StorageType, mientras que la función de obtención
Real / [Link] siempre devolverá los valores StorageType.
Time / [Link]
Date / [Link]
Timestamp /
[Link]
List / [Link]
custom_list_storage_type String / Para campos de lista, esta propiedad con clave especifica
[Link] el tipo de almacenamiento de los valores subyacentes.
Integer /
[Link]
Real / [Link]
Time / [Link]
Date / [Link]
Timestamp /
[Link]
custom_list_depth entero Para campos de lista, esta propiedad con clave especifica
la profundidad del campo.
max_list_length entero Solo está disponible para datos con un nivel de medición
de Geoespacial o Colección. Establezca la longitud máxima
de la lista especificando el número de elementos que
puede contener la lista.
max_string_length entero Solo está disponible para datos sin tipos y se utiliza al
generar SQL para crear una tabla. Entre el valor de la
serie más larga en los datos; esto genera una columna en
la tabla que es lo suficientemente grande para contener
la serie.

Propiedades de asimport
El origen de Analytic Server permite ejecutar una ruta en un sistema de archivos distribuido de Hadoop
(HDFS en sus siglas inglesas).

Ejemplo
[Link]("use_default_as", False)
[Link]("connection",
["false","[Link]","9080","analyticserver","ibm","admin","admin","false","","","",""])
Tabla 43. Propiedades de asimport.
Propiedades de asimport Tipo de datos Descripción de la propiedad
data_source cadena Nombre del origen de datos.
use_default_as booleano Si se establece en True, utiliza la conexión
de Analytic Server predeterminada
configurada en el archivo [Link] de
servidor. Si se establece en False, utiliza
la conexión de este nodo.

Capítulo 9. Propiedades de nodos de origen 81


Tabla 43. Propiedades de asimport (continuación).
Propiedades de asimport Tipo de datos Descripción de la propiedad
connection ["string","string","string", Una propiedad de la lista que contiene los
"string","string","string","string", detalles de conexión de Analytic Server. El
"string","string","string", "string" formato es: ["is_secure_connect",
,"string"] "server_url", "server_port",
"context_root", "consumer",
"user_name", "password",
"use-kerberos-auth",
"kerberos-krb5-config-file-path",
"kerberos-jaas-config-file-path",
"kerberos-krb5-service-principal-
name", "enable-kerberos-debug"] Donde:
is_secure_connect: indica si se utiliza la
conexión segura y es true o false.
use-kerberos-auth: indica si se utiliza
autenticación Kerberos y es true o false.
enable-kerberos-debug: indica si se
utiliza el modo de depuración de la
autenticación Kerberos y es true o false.

Propiedades del nodo cognosimport


El nodo de origen de IBM Cognos importa datos desde las bases de datos de Cognos
Analytics.

Ejemplo
node = [Link]("cognosimport", "My node")
[Link]("cognos_connection", ["[Link]
True, "", "", ""])
[Link]("cognos_package_name", "/Public Folders/GOSALES")
[Link]("cognos_items", ["[GreatOutdoors].[BRANCH].[BRANCH_CODE]",
"[GreatOutdoors]
.[BRANCH].[COUNTRY_CODE]"])
Tabla 44. propiedades del nodo cognosimport.
Propiedades del nodo
cognosimport Tipo de datos Descripción de la propiedad
mode Datos Especifica si se importarán los datos de
Informe Cognos (valor predeterminado) o informes.

82 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 44. propiedades del nodo cognosimport (continuación).
Propiedades del nodo
cognosimport Tipo de datos Descripción de la propiedad
cognos_connection ["string",flag,"string", Una propiedad de la lista que contiene los
"string" ,"string"] detalles de conexión para el servidor de
Cognos. El formato es:
["Cognos_server_URL", login_mode,
"namespace", "username", "password"]

donde:
Cognos_server_URL es la URL del servidor
de Cognos que contiene el origen.
login_mode indica si se utiliza el inicio de
sesión anónimo, y es true o false; si se
establece en true, los campos siguientes
deben establecerse en "".
namespace especifica el proveedor de
autenticación de seguridad utilizado para
registrarse en el servidor.
username y password son los utilizados para
registrarse en el servidor de Cognos.

En lugar de login_mode, también hay


disponibles las modalidades siguientes:
v anonymousMode. Por ejemplo:
[’Cognos_server_url’, ’anonymousMode’,
"namespace", "username", "password"]
v credentialMode. Por ejemplo:
[’Cognos_server_url’,
’credentialMode’, "namespace",
"username", "password"]
v storedCredentialMode. Por ejemplo:
[’Cognos_server_url’,
’storedCredentialMode’,
"stored_credential_name"]

Donde stored_credential_name es el
nombre de una credencial de Cognos del
repositorio.
cognos_package_name cadena La ruta y el nombre del paquete de Cognos
desde el que está importando objetos de
datos, por ejemplo:
/Public Folders/GOSALES
Nota: solo es válida la barra diagonal.
cognos_items ["campo","campo", ... ,"campo"] El nombre de uno o más objetos de datos
que van a importarse. El formato de campo
es [espacio de nombre].[asunto de
consulta].[elemento de consulta]
cognos_filters campo El nombre de uno o más filtros que van a
aplicarse antes de importar datos.

Capítulo 9. Propiedades de nodos de origen 83


Tabla 44. propiedades del nodo cognosimport (continuación).
Propiedades del nodo
cognosimport Tipo de datos Descripción de la propiedad
cognos_data_parameters lista Valores de parámetros de solicitud de datos.
Los pares nombre-valor van encerrados
entre corchetes, los pares múltiples están
separados por comas y toda la cadena está
encerrada entre corchetes.

Formato:
[["param1", "valor"],...,["paramN", "valor"]]
cognos_report_directory campo La ruta de Cognos de una carpeta o paquete
de la que importar informes, por ejemplo:
/Public Folders/GOSALES
Nota: solo es válida la barra diagonal.
cognos_report_name campo La ruta y nombre dentro de la ubicación del
informe de un informe que se ha de
importar.
cognos_report_parameters lista Valores de parámetros de informe. Los pares
nombre-valor van encerrados entre
corchetes, los pares múltiples están
separados por comas y toda la cadena está
encerrada entre corchetes.

Formato:
[["param1", "valor"],...,["paramN", "valor"]]

propiedades de databasenode
El nodo Base de datos se puede utilizar para importar datos de una serie de otros paquetes
utilizando ODBC (Open Database Connectivity), incluyendo Microsoft SQL Server, Db2,
Oracle y otros.

Ejemplo
import [Link]
stream = [Link]()
nnode = [Link]("database", "My node")
[Link]("mode", "Table")
[Link]("query", "SELECT * FROM drug1n")
[Link]("datasource", "Drug1n_db")
[Link]("username", "spss")
[Link]("password", "spss")
[Link]("tablename", ".Drug1n")
Tabla 45. propiedades de databasenode.
Propiedades de databasenode Tipo de datos Descripción de la propiedad
mode Tabla Especifique Table para conectarse a una tabla
Query de base de datos mediante los controles del
cuadro de diálogo, o Query para realizar una
consulta a la base de datos seleccionada
mediante SQL.

84 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 45. propiedades de databasenode (continuación).
Propiedades de databasenode Tipo de datos Descripción de la propiedad
datasource cadena Nombre de la base de datos (consulte la
siguiente nota).
nombre de usuario cadena Detalles de conexión de la base de datos
(consulte la siguiente nota).
contraseña cadena
credencial cadena Nombre de la credencial almacenada en IBM
SPSS Collaboration and Deployment Services.
Se puede utilizar en lugar de las propiedades
username y password. El nombre de usuario y
la contraseña de la credencial deben coincidir
con el nombre de usuario y la contraseña
necesarios para acceder a la base de datos
use_credential Se establece en True o False.
epassword cadena Especifica una contraseña codificada como una
alternativa a codificar una contraseña en un
script.

Consulte el tema “Generación de una


contraseña codificada” en la página 52 para
obtener más información. Esta propiedad es de
sólo lectura durante la ejecución.
tablename cadena Nombre de la tabla a la que se desea tener
acceso.
strip_spaces Ninguno Opciones para descartar los espacios iniciales y
Left finales en las cadenas.
Right
Both
use_quotes AsNeeded Especifica si los nombres de columna y tabla
Always aparecen entre comillas cuando las consultas se
Nunca envían a la base de datos (en el caso, por
ejemplo, de que contengan espacios o signos
de puntuación).
consulta cadena Especifica el código SQL para la consulta que
desea enviar.

Nota: Si el nombre de la base de datos (en la propiedad datasource) contiene uno o más espacios, puntos
(llamados también "punto y aparte") o subrayados, puede utilizar el formato de "barra inclinada invertida
y comillas dobles" para tratarlo como una cadena. Por ejemplo: "{\"db2v9.7.6_linux\"}" o: "{\"TDATA
131\"}". Además, encierre siempre los valores de cadena de datasource entre dobles comillas y llaves,
como en el ejemplo siguiente: "{\"SQL Server\",spssuser,abcd1234,false}".

Nota: Si el nombre de la base de datos (en la propiedad datasource) contiene espacios, entonces en vez
de las propiedades individuales para datasource, username y password, utilice un único origen de datos
en el siguiente formato:

Capítulo 9. Propiedades de nodos de origen 85


Tabla 46. Propiedades de databasenode - específicas de datasource.
Propiedades de databasenode Tipo de datos Descripción de la propiedad
datasource cadena Formato:
[database_name,username,password[,true |
false]]

El último parámetro se usa con contraseñas


cifradas. Si se define como true, la contraseña
se cifrará antes de usarse.

Utilice este formato también si está cambiando el origen de datos, sin embargo, si tan sólo desea cambiar
el nombre de usuario o contraseña, puede usar las propiedades username o password.

Propiedades de datacollectionimportnode
El nodo Importación de datos de Data Collection importa datos de encuesta basándose en el
modelo de datos de Data Collection utilizado por productos de investigación de mercado. Se
debe instalar la biblioteca de datos de Data Collection para utilizar este nodo.

Ejemplo
node = [Link]("datacollectionimport", "My node")
[Link]("metadata_name", "mrQvDsc")
[Link]("metadata_file", "C:/Program Files/IBM/SPSS/DataCollection/DDL/Data/
Quanvert/Museum/[Link]")
[Link]("casedata_name", "mrQvDsc")
[Link]("casedata_source_type", "File")
[Link]("casedata_file", "C:/Program Files/IBM/SPSS/DataCollection/DDL/Data/
Quanvert/Museum/[Link]")
[Link]("import_system_variables", "Common")
[Link]("import_multi_response", "MultipleFlags")
Tabla 47. propiedades de datacollectionimportnode.
propiedades de
datacollectionimportnode Tipo de datos Descripción de la propiedad
metadata_name cadena El nombre del MDSC. El valor especial
DimensionsMDD indica que se debería utilizar el
documento de metadatos de Data Collection
estándar. Otro posibles valores podrían ser:
mrADODsc
mrI2dDsc
mrLogDsc
mrQdiDrsDsc
mrQvDsc
mrSampleReportingMDSC
mrSavDsc
mrSCDsc
mrScriptMDSC

El valor especial none indica que no existe


ningún MDSC.
metadata_file cadena Nombre del archivo en el que se almacenan
los metadatos.

86 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 47. propiedades de datacollectionimportnode (continuación).
propiedades de
datacollectionimportnode Tipo de datos Descripción de la propiedad
casedata_name cadena El nombre del CDSC. Entre los posibles
valores se encuentran:
mrADODsc
mrI2dDsc
mrLogDsc
mrPunchDSC
mrQdiDrsDsc
mrQvDsc
mrRdbDsc2
mrSavDsc
mrScDSC
mrXmlDsc

El valor especial none indica que no existe


ningún CDSC.
casedata_source_type Desconocido Indica el tipo de origen del CDSC.
File
Folder
UDL
DSN
casedata_file cadena Cuando casedata_source_type es File,
especifica el archivo que contiene los datos de
casos.
casedata_folder cadena Cuando casedata_source_type es Folder,
especifica la carpeta que contiene los datos de
casos.
casedata_udl_string cadena Cuando casedata_source_type es UDL,
especifica la cadena de conexión OLD-DB del
origen de datos que contiene los datos de
casos.
casedata_dsn_string cadena Cuando casedata_source_type es DSN,
especifica la cadena de conexión ODBC del
origen de datos.
casedata_project cadena Al leer datos de casos de una base de datos de
Data Collection, puede escribir el nombre del
proyecto. Para el resto de tipos de datos de
casos, esta configuración se deberá dejar en
blanco.
version_import_mode Todos Define el modo en que deben tratarse las
Latest versiones.
Especifica
specific_version cadena Cuando version_import_mode es Specify, define
la versión de los datos de casos que se van a
importar.
use_language cadena Determina si deben usarse las etiquetas de un
idioma concreto.
language cadena Si use_language es verdadero, define el código
de idioma que se va a usar en la importación.
Este código de idioma debe incluirse entre
aquellos disponibles en los datos de casos.

Capítulo 9. Propiedades de nodos de origen 87


Tabla 47. propiedades de datacollectionimportnode (continuación).
propiedades de
datacollectionimportnode Tipo de datos Descripción de la propiedad
use_context cadena Determina si se debe importar un contexto
específico. Los contextos se utilizan para
modificar la descripción asociada con las
respuestas.
context cadena Cuando use_context es verdadero, define el
contexto de la importación. Este contexto debe
encontrarse entre aquellos disponibles en los
datos de casos.
use_label_type cadena Determina si se debe importar un tipo de
etiqueta específico.
label_type cadena Cuando use_label_type es verdadero, define
el tipo de etiqueta de la importación. Este tipo
de etiqueta debe encontrarse entre aquellos
disponibles en los datos de casos.
id_usuario cadena En el caso de las bases de datos que requieren
un inicio de sesión explícito, puede
proporcionar un ID de usuario y una
contraseña para acceder al origen de datos.
contraseña cadena
import_system_variables Común Especifica las variables del sistema que se
Ninguno importan.
Todos
import_codes_variables tag
import_sourcefile_variables tag
import_multi_response MultipleFlags
Single

Propiedades de excelimportnode
El nodo de importación Excel importa datos de Microsoft Excel en formato de archivo .xlsx.
No es necesario un origen de datos ODBC.

Ejemplos
#Para usar un rango con nombre:
node = [Link]("excelimport", "My node")
[Link]("excel_file_type", "Excel2007")
[Link]("full_filename", "C:/[Link]")
[Link]("use_named_range", True)
[Link]("named_range", "DRUG")
[Link]("read_field_names", True)

#Para usar un rango explícito:


node = [Link]("excelimport", "My node")
[Link]("excel_file_type", "Excel2007")
[Link]("full_filename", "C:/[Link]")
[Link]("worksheet_mode", "Name")

88 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


[Link]("worksheet_name", "Drug")
[Link]("explicit_range_start", "A1")
[Link]("explicit_range_end", "F300")
Tabla 48. propiedades de excelimportnode.
Propiedad de excelimportnode Tipo de datos Descripción de la propiedad
excel_file_type Excel2007
full_filename cadena El nombre completo del archivo, incluyendo la
ruta.
use_named_range Booleana Si usar un rango con nombre. Si es verdadero,
la propiedad named_range se utiliza para
especificar el rango de lectura y se ignoran el
resto de configuraciones de rango de datos y
hojas de trabajo.
named_range cadena
worksheet_mode Índice Determina si la hoja de trabajo se define por el
Name índice o por el nombre.
worksheet_index entero Índice de la hoja de trabajo que se va a leer,
siendo 0 la primera hoja de trabajo, 1 la
segunda, etc.
worksheet_name cadena Nombre de la hoja de trabajo que se va a leer.
data_range_mode FirstNonBlank Especifica cómo debe establecerse el rango.
ExplicitRange
blank_rows StopReading Cuando data_range_mode es FirstNonBlank,
ReturnBlankRows especifica cómo deben tratarse las filas en
blanco.
explicit_range_start cadena Cuando data_range_mode es ExplicitRange,
especifica el punto de partida del rango de
lectura.
explicit_range_end cadena
read_field_names Booleana Determina si la primera fila del rango concreto
debería usarse como nombres de campo
(columna).

Propiedades de extensionimportnode

Con el nodo de importación de extensión, puede ejecutar


scripts R o Python para Spark para importar datos.

Ejemplo de Python para Spark


##### Ejemplo de script de Python para Spark
import [Link]
stream = [Link]()
node = [Link]("extension_importer", "extension_importer")
[Link]("syntax_type", "Python")

python_script = """

Capítulo 9. Propiedades de nodos de origen 89


import [Link]
from [Link] import *

cxt = [Link]()

_schema = StructType([StructField(’id’, LongType(), nullable=False), \


StructField(’age’, LongType(), nullable=True), \
StructField(’Sex’, StringType(), nullable=True), \
StructField(’BP’, StringType(), nullable=True), \
StructField(’Cholesterol’, StringType(), nullable=True), \
StructField(’K’, DoubleType(), nullable=True), \
StructField(’Na’, DoubleType(), nullable=True), \
StructField(’Drug’, StringType(), nullable=True)])

if [Link]():
[Link](_schema)
else:
df = [Link]()
if df is None:
drugList=[(1,23,’F’,’HIGH’,’HIGH’,0.792535,0.031258,’drugY’), \
(2,47,’M’,’LOW’,’HIGH’,0.739309,0.056468,’drugC’),\
(3,47,’M’,’LOW’,’HIGH’,0.697269,0.068944,’drugC’),\
(4,28,’F’,’NORMAL’,’HIGH’,0.563682,0.072289,’drugX’),\
(5,61,’F’,’LOW’,’HIGH’,0.559294,0.030998,’drugY’),\
(6,22,’F’,’NORMAL’,’HIGH’,0.676901,0.078647,’drugX’),\
(7,49,’F’,’NORMAL’,’HIGH’,0.789637,0.048518,’drugY’),\
(8,41,’M’,’LOW’,’HIGH’,0.766635,0.069461,’drugC’),\
(9,60,’M’,’NORMAL’,’HIGH’,0.777205,0.05123,’drugY’),\
(10,43,’M’,’LOW’,’NORMAL’,0.526102,0.027164,’drugY’)]
sqlcxt = [Link]()
rdd = [Link]().parallelize(drugList)
print ’pyspark read data count = ’+str([Link]())
df = [Link](rdd, _schema)

[Link](df)
"""

[Link]("python_syntax", python_script)

Ejemplo de R
#### Ejemplo de script de R
[Link]("syntax_type", "R")

R_script = """# ’JSON Import’ Node v1.0 for IBM SPSS Modeler
# Paquete ’RJSONIO’ creado por Duncan Temple Lang - [Link]
# Paquete ’plyr’ creado por Hadley Wickham [Link]
# Desarrollador de nodo: Danil Savine - IBM Extreme Blue 2014
# Descripción: Este nodo le permite importar a SPSS datos de una tabla de un JSON.
# Instalar función para paquetes
packages <- function(x){
x <- [Link]([Link]()[[2]])
if (!require(x,[Link]=TRUE)){
[Link](pkgs=x,repos="[Link]
require(x,[Link]=TRUE)
}
}
# paquetes
packages(RJSONIO)
packages(plyr)
### Esta función se utiliza para generar automáticamente el dataModel
getMetaData <- function (data) {
if (dim(data)[1]<=0) {

print("Warning : modelerData has no line, all fieldStorage fields set to strings")


getStorage <- function(x){return("string")}

90 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


} else {

getStorage <- function(x) {


res <- NULL
#si x es un factor, typeof devolverá un entero para que tratemos el caso en el lado
if([Link](x)) {
res <- "string"
} else {
res <- switch(typeof(unlist(x)),
integer = "integer",
double = "real",
character = "string",
"string")
}
return (res)
}
}

col = vector("list", dim(data)[2])


for (i in 1:dim(data)[2]) {
col[[i]] <- c(fieldName=names(data[i]),
fieldLabel="",
fieldStorage=getStorage(data[i]),
fieldMeasure="",
fieldFormat="",
fieldRole="")
}
mdm<-[Link](cbind,col)
mdm<-[Link](mdm)
return(mdm)
}
# De JSON a una lista
txt <- readLines(’C:/[Link]’)
formatedtxt <- paste(txt, collapse = ’’)
[Link] <- fromJSON(formatedtxt)
# Aplicar ruta a [Link]
if(strsplit(x=’true’, split=’
’ ,fixed=TRUE)[[1]][1]) {
[Link] <- unlist(strsplit(x=’id_array’, split=’,’))
i = 1
while(i<length([Link])+1){
if([Link](getElement([Link], [Link][i]))){
[Link] <- [Link][[1]]
}else{
[Link] <- getElement([Link], [Link][i])
i <- i+1
}
}
}
# De lista a marco de datos a través de json no listado
i <-1
filled <- [Link]()
while(i < length([Link])+ 1){
[Link] <- unlist([Link][[i]])
[Link] <- [Link](t([Link]([Link], [Link] = names([Link]))),
stringsAsFactors=FALSE)
filled <- [Link](filled,[Link])
i <- 1 + i
}
# Exportar a datos de SPSS Modeler
modelerData <- filled
print(modelerData)
modelerDataModel <- getMetaData(modelerData)
print(modelerDataModel)

Capítulo 9. Propiedades de nodos de origen 91


"""

[Link]("r_syntax", R_script)
Tabla 49. Propiedades de extensionimportnode
Propiedades de extensionimportnode Tipo de datos Descripción de la propiedad
syntax_type R Especifica qué script se ejecuta: R o
Python Python (R es el valor
predeterminado).
r_syntax string Sintaxis de scripts R a ejecutar.
python_syntax string Sintaxis de scripts Python a
ejecutar.

Propiedades de fixedfilenode
El nodo Archivo fijo importa datos desde archivos de texto de campo fijo; esto es, archivos
cuyos campos no están delimitados pero empiezan en la misma posición y tienen una
longitud fija. Los datos heredados o generados por la máquina se suelen almacenar en
formato de campo fijo.

Ejemplo
node = [Link]("fixedfile", "My node")
[Link]("full_filename", "$CLEO_DEMOS/DRUG1n")
[Link]("record_len", 32)
[Link]("skip_header", 1)
[Link]("fields", [["Age", 1, 3], ["Sex", 5, 7], ["BP", 9, 10], ["Cholesterol",
12, 22], ["Na", 24, 25], ["K", 27, 27], ["Drug", 29, 32]])
[Link]("decimal_symbol", "Period")
[Link]("lines_to_scan", 30)
Tabla 50. propiedades de fixedfilenode.
Propiedad de fixedfilenode Tipo de datos Descripción de la propiedad
record_len number Especifica el número de caracteres de cada
registro.
line_oriented tag Omite el carácter de nueva línea al final de
cada registro.
decimal_symbol Predeterminado Tipo de separador decimal utilizado en el
Comma origen de datos.
Period
skip_header number Especifica el número de líneas que se
ignorarán al principio del primer registro. Esto
resulta útil para ignorar las cabeceras de
columna.
auto_recognize_datetime tag Especifica si las fechas o las horas se
identifican automáticamente en los datos de
origen.
lines_to_scan number
campos list Propiedad estructurada.
full_filename cadena Nombre completo del archivo que se va a leer,
incluido el directorio.

92 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 50. propiedades de fixedfilenode (continuación).
Propiedad de fixedfilenode Tipo de datos Descripción de la propiedad
strip_spaces Ninguno Descarta los espacios iniciales y finales en las
Left cadenas de importación.
Right
Both
invalid_char_mode Descartar Elimina los caracteres no válidos (nulo, 0 o
Replace cualquier carácter que no exista en la
codificación actual) de la entrada de datos o
sustituye los caracteres no válidos con el
símbolo especificado de un carácter.
invalid_char_replacement cadena
use_custom_values tag
custom_storage Desconocido
Cadena
Entero
Real
Hora
Fecha
Marca de tiempo
custom_date_format "DDMMYY" Aplicable solamente si ha especificado un
"MMDDYY" almacenamiento personalizado.
"YYMMDD"
"YYMMDD"
"YYYYDDD"
DAY
MONTH
"DD-MM-YY"
"DD-MM-YYYY"
"MM-DD-YY"
"MM-DD-YYYY"
"DD-MES-YY"
"DD-MES-YYYY"
"YYYY-MM-DD"
"[Link]"
"[Link]"
"[Link]"
"[Link]"
"[Link]"
"[Link]"
"DD/MM/YY"
"DD/MM/YYYY"
"MM/DD/YY"
"MM/DD/YYYY"
"DD/MES/YY"
"DD/MES/YYYY"
MON YYYY
q Q YYYY
ww WK YYYY

Capítulo 9. Propiedades de nodos de origen 93


Tabla 50. propiedades de fixedfilenode (continuación).
Propiedad de fixedfilenode Tipo de datos Descripción de la propiedad
custom_time_format "HHMMSS" Aplicable solamente si ha especificado un
"HHMM" almacenamiento personalizado.
"MMSS"
"HH:MM:SS"
"HH:MM"
"MM:SS"
"(H)H:(M)M:(S)S"
"(H)H:(M)M"
"(M)M:(S)S"
"[Link]"
"[Link]"
"[Link]"
"(H)H.(M)M.(S)S"
"(H)H.(M)M"
"(M)M.(S)S"
custom_decimal_symbol campo Aplicable solamente si ha especificado un
almacenamiento personalizado.
codificación StreamDefault Especifica el método de codificación de textos.
SystemDefault
"UTF-8"

Propiedades del nodo gsdata_import


Utilice el nodo de origen Geospacial para llevar datos de mapa o espaciales en su sesión de
minería de datos.

Tabla 51. propiedades del nodo gsdata_import


Propiedades del nodo gsdata_import Tipo de datos Descripción de la propiedad
full_filename cadena Entre la vía de acceso del archivo .shp que desea
cargar.
map_service_URL cadena Escriba el URL de servicio de mapas al que
conectarse.
map_name cadena Sólo si se utiliza map_service_URL; esto contiene la
estructura de carpeta de nivel superior del servicio
de mapa.

Propiedades de sasimportnode
El nodo importar SAS importa datos SAS a IBM SPSS Modeler.

Ejemplo

94 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


node = [Link]("sasimport", "My node")
[Link]("format", "Windows")
[Link]("full_filename", "C:/data/retail.sas7bdat")
[Link]("member_name", "Test")
[Link]("read_formats", False)
[Link]("full_format_filename", "Test")
[Link]("import_names", True)
Tabla 52. propiedades de sasimportnode.
Propiedad de sasimportnode Tipo de datos Descripción de la propiedad
format Windows Formato del archivo que se va a importar.
UNIX
Transport
SAS7
SAS8
SAS9
full_filename cadena El nombre completo del archivo introducido,
incluyendo su ruta.
member_name cadena Especifique el miembro para importar desde el
archivo de transporte SAS especificado.
read_formats tag Lee formatos de datos (como etiquetas de
variables) del archivo de formatos especificado.
full_format_filename cadena
import_names NamesAndLabels Especifica el método para la correlación de
LabelsasNames nombres y etiquetas de variables en la
importación.

propiedades de simgennode
El nodo de generación de simulación proporciona una manera fácil de generar datos, ya sea
desde cero utilizando las distribuciones o estadísticas especificada por el usuario o
automáticamente utilizando las distribuciones obtenidas de la ejecución de un nodo de
simulación de ajuste sobre datos históricos. Esto es útil cuando desea evaluar el resultado de
un modelo predictivo en caso de dudas sobre las entradas del modelo.

Tabla 53. propiedades de simgennode.


propiedades de simgennode Tipo de datos Descripción de la propiedad
campos Propiedad estructurada Ver ejemplo
correlaciones Propiedad estructurada Ver ejemplo
keep_min_max_setting booleano
refit_correlations booleano
max_cases entero El valor mínimo es 1000, el valor máximo
es 2,147,483,647.
create_iteration_field booleano
iteration_field_name cadena
replicate_results booleano
random_seed entero
parameter_xml cadena Devuelve el XML del parámetro como
una cadena.

Capítulo 9. Propiedades de nodos de origen 95


Ejemplo de fields

Este es un parámetro de ranura estructurado con la sintaxis siguiente:


[Link]("fields", [
[field1, storage, locked, [distribution1], min, max],
[field2, storage, locked, [distribution2], min, max],
[field3, storage, locked, [distribution3], min, max]
])

distribution es una declaración de nombre de distribución seguido por una lista con parejas de nombres
de atributo y valores. Cada distribución se define de la siguiente forma:
[distributionname, [[par1], [par2], [par3]]]

simgennode = [Link]().createAt("simgen", u"Sim Gen", 726, 322)


[Link]("fields",
[["Age", "integer", False, ["Uniform",[["min","1"],["max","2"]]], "", ""]])

Por ejemplo, para crear un nodo que genere un solo campo con una distribución binomial puede utilizar
el siguiente script:
simgen_node1 = [Link]().createAt("simgen", u"Sim Gen", 200, 200)
simgen_node1.setPropertyValue("fields", [["Education", "Real", False, ["Binomial", [["n", 32],
["prob", 0.7]]], "", ""]])

La distribución binomial tiene 2 parámetros: n y prob. Puesto que binomial no admite los valores mínimo
y máximo, éstos se suministran como una serie vacía.

Nota: No se puede establecer distribution directamente; utilícelo en combinación con la propiedad


fields.

Los ejemplos siguientes muestran todos los tipos de distribución posibles. Tenga en cuenta que el umbral
se especifica como thresh en NegativeBinomialFailures y en NegativeBinomialTrial.
stream = [Link]()

simgennode = [Link]("simgen", u"Sim Gen", 200, 200)

beta_dist = ["Field1", "Real", False, ["Beta",[["shape1","1"],["shape2","2"]]], "", ""]


binomial_dist = ["Field2", "Real", False, ["Binomial",[["n" ,"1"],["prob","1"]]], "", ""]
categorical_dist = ["Field3", "String", False, ["Categorical", [["A",0.3],["B",0.5],["C",0.2]]], "", ""]
dice_dist = ["Field4", "Real", False, ["Dice", [["1" ,"0.5"],["2","0.5"]]], "", ""]
exponential_dist = ["Field5", "Real", False, ["Exponential", [["scale","1"]]], "", ""]
fixed_dist = ["Field6", "Real", False, ["Fixed", [["value","1" ]]], "", ""]
gamma_dist = ["Field7", "Real", False, ["Gamma", [["scale","1"],["shape"," 1"]]], "", ""]
lognormal_dist = ["Field8", "Real", False, ["Lognormal", [["a","1"],["b","1" ]]], "", ""]
negbinomialfailures_dist = ["Field9", "Real", False, ["NegativeBinomialFailures",[["prob","0.5"],["thresh","1"]]], "", ""]
negbinomialtrial_dist = ["Field10", "Real", False, ["NegativeBinomialTrials",[["prob","0.2"],["thresh","1"]]], "", ""]
normal_dist = ["Field11", "Real", False, ["Normal", [["mean","1"] ,["stddev","2"]]], "", ""]
poisson_dist = ["Field12", "Real", False, ["Poisson", [["mean","1"]]], "", ""]
range_dist = ["Field13", "Real", False, ["Range", [["BEGIN","[1,3]"] ,["END","[2,4]"],["PROB","[[0.5],[0.5]]"]]], "", ""]
triangular_dist = ["Field14", "Real", False, ["Triangular", [["min","0"],["max","1"],["mode","1"]]], "", ""]
uniform_dist = ["Field15", "Real", False, ["Uniform", [["min","1"],["max","2"]]], "", ""]
weibull_dist = ["Field16", "Real", False, ["Weibull", [["a","0"],["b","1 "],["c","1"]]], "", ""]
[Link]("fields", [\
beta_dist, \
binomial_dist, \
categorical_dist, \
dice_dist, \
exponential_dist, \
fixed_dist, \
gamma_dist, \
lognormal_dist, \
negbinomialfailures_dist, \
negbinomialtrial_dist, \
normal_dist, \
poisson_dist, \
range_dist, \
triangular_dist, \
uniform_dist, \
weibull_dist
])

96 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Ejemplo de correlations

Este es un parámetro de ranura estructurado con la sintaxis siguiente:


[Link]("correlations", [
[field1, field2, correlation],
[field1, field3, correlation],
[field2, field3, correlation]
])

La correlación puede ser cualquier número entre +1 y -1. Puede especificar tantas correlaciones como
desee. Las correlaciones no especificadas se establecen en cero. Si alguno de los campos se desconocen, el
valor de la correlación debe establecerse en la matriz de correlación (o tabla) y se muestra en texto rojo.
Cuando hay campos desconocidos, no es posible ejecutar el nodo.

Propiedades de statisticsimportnode
El nodo IBM SPSS StatisticsArchivo lee los datos desde un formato de archivo .sav que utiliza
IBM SPSS Statistics y archivos caché guardados en IBM SPSS Modeler, que también puede
utilizar el mismo formato.

Las propiedades de este nodo están descritas en “Propiedades de statisticsimportnode” en la página 347.

Propiedades del nodo tm1odataimport


El nodo de origen de IBM Cognos TM1 importa datos desde las bases de datos de Cognos
TM1.

Tabla 54. propiedades del nodo tm1odataimport


Propiedades del nodo tm1odataimport Tipo de datos Descripción de la propiedad
admin_host cadena El URL del nombre de host de la API REST.
server_name cadena El nombre del servidor TM1 seleccionado de
admin_host.
credential_type inputCredential o Se utiliza para indicar el tipo de credencial.
storedCredential
input_credential lista Cuando credential_type es inputCredential;
especifique el dominio, el nombre de usuario y la
contraseña.
stored_credential_name cadena Cuando credential_type es storedCredential;
especifique el nombre de la credencial en el
servidor C&DS.
selected_view ["campo" "campo"] Una propiedad de la lista que contiene los detalles
del cubo TM1 seleccionado y el nombre de la vista
de cubo donde los datos se importarán en SPSS.
Por ejemplo:
TM1_import.setPropertyValue("selected_view",
[’plan_BudgetPlan’, ’Goal Input’])

Capítulo 9. Propiedades de nodos de origen 97


Tabla 54. propiedades del nodo tm1odataimport (continuación)
Propiedades del nodo tm1odataimport Tipo de datos Descripción de la propiedad
is_private_view flag Especifica si selected_view es una vista privada. El
valor predeterminado es false.
selected_columns ["field" ] Especifique la columna seleccionada; solo se puede
especificar un elemento.

Por ejemplo:
setPropertyValue("selected_columns",
["Measures"])
selected_rows ["campo" "campo"] Especifique las filas seleccionadas:

Por ejemplo: setPropertyValue("selected_rows",


["Dimension_1_1", "Dimension_2_1",
"Dimension_3_1", "Periods"])

Propiedades del nodo tm1import (en desuso)


El nodo de origen de IBM Cognos TM1 importa datos desde las bases de datos de Cognos
TM1.

Nota: Este nodo estaba en desuso en Modeler 18.0. El nombre del script del nodo de sustitución es
tm1odataimport.
Tabla 55. propiedades del nodo tm1import.
Propiedades del nodo tm1import Tipo de datos Descripción de la propiedad
pm_host cadena Nota: sólo para la versión 16.0 y 17.0

Nombre del host. Por ejemplo:


TM1_import.setPropertyValue("pm_host",
’[Link]
tm1_connection ["campo","campo", ... Nota: sólo para la versión 16.0 y 17.0
,"campo"]
Una propiedad de la lista que contiene los detalles
de conexión para el servidor de TM1. El formato
es: [ "TM1_Server_Name","tm1_ username","tm1_
password"]

Por ejemplo:
TM1_import.setPropertyValue("tm1_connection",
[’Planning Sample’, "admin", "apple"])
selected_view ["campo" "campo"] Una propiedad de la lista que contiene los detalles
del cubo TM1 seleccionado y el nombre de la vista
de cubo donde los datos se importarán en SPSS.
Por ejemplo:
TM1_import.setPropertyValue("selected_view",
[’plan_BudgetPlan’, ’Goal Input’])

98 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 55. propiedades del nodo tm1import (continuación).
Propiedades del nodo tm1import Tipo de datos Descripción de la propiedad
selected_column ["field" ] Especifique la columna seleccionada; solo se puede
especificar un elemento.

Por ejemplo:
setPropertyValue("selected_columns",
["Measures"])
selected_rows ["campo" "campo"] Especifique las filas seleccionadas:

Por ejemplo: setPropertyValue("selected_rows",


["Dimension_1_1", "Dimension_2_1",
"Dimension_3_1", "Periods"])

Propiedades del nodo twcimport


El nodo de origen de TWC importa datos meteorológicos de The Weather Company, una
empresa de IBM. Puede utilizarlo para obtener datos meteorológicos históricos o predicción
para una ubicación. Esto puede ayudarle a desarrollar soluciones empresariales dirigidas a la
meteorología para una mejor toma de decisiones utilizando los datos meteorológicos más
exactos y precisos disponibles.

Tabla 56. Propiedades del nodo twcimport


Propiedades del nodo twcimport Tipo de datos Descripción de la propiedad
[Link] Real Especifica un valor de latitud con el formato
[-90.0⌂90.0]
[Link] Real Especifica un valor de longitud con el formato
[-180.0⌂180.0].
[Link] string Especifica la clave de licencia obtenida de The
Weather Company.
[Link] English Especifica la unidad de medida. Los valores
Metric posibles son English, Metric o Hybrid. Metric es
Hybrid el valor predeterminado.
[Link] Historical Especifica el tipo de datos meteorológicos para la
Forecast entrada. Los valores posibles son Historical o
Prediction. Histórico es el valor predeterminado.
[Link] Entero Si se especifica Histórico para
[Link], especifique una fecha de
inicio con el formato aaaaMMdd.
[Link] Entero Si se especifica Histórico para
[Link], especifique una fecha de
finalización con el formato aaaaMMdd.
[Link] 6 Si se especifica Predicción para
12 [Link], especifique 6, 12, 24 o 48
24 para la hora.
48

Capítulo 9. Propiedades de nodos de origen 99


Propiedades de userinputnode
El nodo Datos de usuario proporciona una manera fácil de crear datos sintéticos, ya sea
partiendo de cero o modificando los datos existentes. Esto resulta útil, por ejemplo, cuando
desee crear un conjunto de datos de comprobación para el modelado.

Ejemplo
node = [Link]("userinput", "My node")
[Link]("names", ["test1", "test2"])
[Link]("data", "test1", "2, 4, 8")
[Link]("custom_storage", "test1", "Integer")
[Link]("data_mode", "Ordered")
Tabla 57. propiedades de userinputnode.
Propiedad de userinputnode Tipo de datos Descripción de la propiedad
datos
nombres Intervalo estructurado que establece o
devuelve una lista de nombres de campos
generados por el nodo.
custom_storage Desconocido Intervalo con clave que establece o devuelve el
Cadena almacenamiento para un campo.
Entero
Real
Hora
Fecha
Marca de tiempo
data_mode Combined Si se especifica Combined, los registros se
Ordered generarán para cada combinación de valores
del conjunto y valores mínimos y máximos. El
número de registros generados será igual al
producto del número de valores de cada
campo. Si se especifica Ordered, se tomará un
valor de cada columna para cada registro con
el fin de generar una fila de datos. El número
de registros generados será igual al número
más grande de valores asociados a un campo.
Los campos que tengan menos valores de
datos se rellenarán con valores nulos.
values Nota: Esta propiedad ya no se utiliza, y no
debe usarse; en su lugar, se usa
[Link].

Propiedades de variablefilenode
El nodo Archivo variable lee datos desde los archivos de texto de campo libre, esto es,
campos cuyos registros contienen un número constante de campos pero un número variado
de caracteres. Este nodo resulta también útil para los archivos con texto de cabecera de
longitud fija y determinados tipos de anotaciones.

Ejemplo

100 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


node = [Link]("variablefile", "My node")
[Link]("full_filename", "$CLEO_DEMOS/DRUG1n")
[Link]("read_field_names", True)
[Link]("delimit_other", True)
[Link]("other", ",")
[Link]("quotes_1", "Discard")
[Link]("decimal_symbol", "Comma")
[Link]("invalid_char_mode", "Replace")
[Link]("invalid_char_replacement", "|")
[Link]("use_custom_values", "Age", True)
[Link]("direction", "Age", "Input")
[Link]("type", "Age", "Range")
[Link]("values", "Age", [1, 100])
Tabla 58. propiedades de variablefilenode.
Propiedad de variablefilenode Tipo de datos Descripción de la propiedad
skip_header number Especifica el número de caracteres que se
ignorarán al principio del primer registro.
num_fields_auto tag Determina el número de campos de cada
registro de forma automática. Los registros
deben terminar con un carácter de nueva
línea.
num_fields number Especifica manualmente el número de campos
de cada registro.
delimit_space tag Especifica el carácter utilizado para delimitar
los límites de los campos del archivo.
delimit_tab tag
delimit_new_line tag
delimit_non_printing tag
delimit_comma tag En aquellos casos en los que la coma sea el
delimitador del campo y el separador decimal
para rutas, establezca delimit_other en True y
especifique una coma como delimitador
mediante la propiedad other.
delimit_other tag Permite especificar un delimitador
personalizado mediante la propiedad other.
other cadena Especifica el delimitador utilizado cuando
delimit_other es True.
decimal_symbol Predeterminado Especifica el separador decimal utilizado en el
Comma origen de datos.
Period
multi_blank tag Trata varios caracteres delimitadores vacíos
adyacentes como un único delimitador.
read_field_names tag Trata la primera fila del archivo de datos como
etiquetas para la columna.
strip_spaces Ninguno Descarta los espacios iniciales y finales en las
Left cadenas de importación.
Right
Both

Capítulo 9. Propiedades de nodos de origen 101


Tabla 58. propiedades de variablefilenode (continuación).
Propiedad de variablefilenode Tipo de datos Descripción de la propiedad
invalid_char_mode Descartar Elimina los caracteres no válidos (nulo, 0 o
Replace cualquier carácter que no exista en la
codificación actual) de la entrada de datos o
sustituye los caracteres no válidos con el
símbolo especificado de un carácter.
invalid_char_replacement cadena
break_case_by_newline flag Especifica que el delimitador de línea es el
carácter de nueva línea.
lines_to_scan number Especifica cuántas líneas se van a explorar
para los tipos de datos especificados.
auto_recognize_datetime tag Especifica si las fechas o las horas se
identifican automáticamente en los datos de
origen.
quotes_1 Descartar Especifica cómo se tratarán las comillas
PairAndDiscard simples en la importación.
IncludeAsText
1uotes_2 Descartar Especifica cómo se tratarán las comillas dobles
PairAndDiscard en la importación.
IncludeAsText
full_filename cadena Nombre completo del archivo que se va a leer,
incluido el directorio.
use_custom_values tag
custom_storage Desconocido
Cadena
Entero
Real
Hora
Fecha
Marca de tiempo

102 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 58. propiedades de variablefilenode (continuación).
Propiedad de variablefilenode Tipo de datos Descripción de la propiedad
custom_date_format "DDMMYY" Aplicable solamente si ha especificado un
"MMDDYY" almacenamiento personalizado.
"YYMMDD"
"YYMMDD"
"YYYYDDD"
DAY
MONTH
"DD-MM-YY"
"DD-MM-YYYY"
"MM-DD-YY"
"MM-DD-YYYY"
"DD-MES-YY"
"DD-MES-YYYY"
"YYYY-MM-DD"
"[Link]"
"[Link]"
"[Link]"
"[Link]"
"[Link]"
"[Link]"
"DD/MM/YY"
"DD/MM/YYYY"
"MM/DD/YY"
"MM/DD/YYYY"
"DD/MES/YY"
"DD/MES/YYYY"
MON YYYY
q Q YYYY
ww WK YYYY
custom_time_format "HHMMSS" Aplicable solamente si ha especificado un
"HHMM" almacenamiento personalizado.
"MMSS"
"HH:MM:SS"
"HH:MM"
"MM:SS"
"(H)H:(M)M:(S)S"
"(H)H:(M)M"
"(M)M:(S)S"
"[Link]"
"[Link]"
"[Link]"
"(H)H.(M)M.(S)S"
"(H)H.(M)M"
"(M)M.(S)S"
custom_decimal_symbol campo Aplicable solamente si ha especificado un
almacenamiento personalizado.
codificación StreamDefault Especifica el método de codificación de textos.
SystemDefault
"UTF-8"

Capítulo 9. Propiedades de nodos de origen 103


Propiedades de xmlimportnode
El nodo de origen XML importa datos en formato XML en la ruta. Puede importar un único
archivo o todos los archivos en un directorio. Puede especificar opcionalmente un archivo de
esquema para leer la estructura XML.

Ejemplo
node = [Link]("xmlimport", "My node")
[Link]("full_filename", "c:/import/[Link]")
[Link]("records", "/author/name")
Tabla 59. propiedades de xmlimportnode.
propiedades de xmlimportnode Tipo de datos Descripción de la propiedad
read single Lee un único archivo de datos (valor
directorio predeterminado) o todos los archivos XML de
un directorio.
recurse tag Especifica si leer además archivos XML de
todos los subdirectorios del directorio
especificado.
full_filename cadena (obligatorio) Ruta completa y nombre de
archivo del archivo XML a importar (si read =
single).
directory_name cadena (obligatorio) Ruta completa y nombre del
directorio desde el que importar los archivos
XML (si read = directory).
full_schema_filename cadena Ruta completa y nombre de archivo del
archivo XSD o DTD desde el que leer la
estructura XML. Si omite este parámetro, se
leerá la estructura desde el archivo de origen
XML.
records cadena Expresión XPath ([Link]. /author/name) para
definir el límite del registro. Cada vez que este
elemento se encuentra en el archivo de origen
se crea un nuevo registro.
mode read Lee todos los datos (valor predeterminado) o
specify especifica qué elementos leer.
campos Lista de elementos (elementos y atributos) para
importar. Cada elemento de la lista es una
expresión XPath.

Propiedades de dataviewimport
El nodo Vista de datos importa datos de Vista de datos en IBM SPSS Modeler.

Ejemplo

104 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


stream = [Link]()

dvnode = [Link]("dataviewimport", "Data View", 96, 96)


[Link]("analytic_data_source",
["","/folder/adv", "LATEST"])
[Link]("table_name", ["","[Link]"])
[Link]("data_access_plan",
["","DataAccessPlan"])
[Link]("optional_attributes",
[["","NewDerivedAttribute"]])
[Link]("include_xml", True)
[Link]("include_xml_field", "xml_data")
Tabla 60. propiedades de dataviewimport
Propiedades de dataviewimport Tipo de datos Descripción de la propiedad
analytic_data_source cadena La objeto Vista de datos analíticos almacenado
en IBM SPSS Collaboration and Deployment
Services. El nombre de vía de acceso y la
etiqueta de la versión que se va a utilizar.
["Object ID","Full path", "Version"]
table_name cadena La tabla de vista de datos utilizada en la Vista
de datos analíticos. El nombre de la tabla debe
estar cualificada para [Link] obtener el
paquete exportando la lista de materiales del
cliente de gestor de despliegue de IBM SPSS
Collaboration and Deployment Services y
buscando en el archivo [Link] en el
archivo ZIP exportado. El nombre del paquete
siempre debe ser el mismo a menos que la lista
de materiales se haya importado de IBM
Operational Decision Management (iLOG).
["Object ID", "Name"]
data_access_plan cadena El plan de acceso de datos que se utiliza para
proporcionar los datos para la Vista de datos
analíticos.
["Object ID","Name"]
optional_attributes cadena Una lista de los atributos derivados a incluir.
[["ID1","Name1"], ["ID2", "Name2"]]
include_xml booleano True si se va a incluir un campo con datos de
instancia XOM. A menos que se utilicen nodos
de IBM Analytical Decision Management
iLOG, el valor recomendado es false. La
activación de esta opción puede añadir una
gran cantidad de proceso adicional.
include_xml_field cadena El nombre del campo a añadir cuando
include_xml se establece en true.

Capítulo 9. Propiedades de nodos de origen 105


106 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python
Capítulo 10. Propiedades de nodos de operaciones con
registros
propiedades de appendnode
El nodo Añadir concatena conjuntos de registros. Es útil para combinar conjuntos de datos
con estructuras parecidas, pero con datos diferentes.

Ejemplo
node = [Link]("append", "My node")
[Link]("match_by", "Name")
[Link]("match_case", True)
[Link]("include_fields_from", "All")
[Link]("create_tag_field", True)
[Link]("tag_field_name", "Append_Flag")
Tabla 61. propiedades de appendnode.
Propiedad de appendnode Tipo de datos Descripción de la propiedad
match_by Position Se pueden añadir conjuntos de datos basándose
Name en la posición que tienen los campos en el origen
de datos principal o el nombre de los campos en
los conjuntos de datos de entrada.
match_case tag Activa la coincidencia de mayúsculas y
minúsculas al hacer coincidir nombres de
campos.
include_fields_from Main
Todos
create_tag_field tag
tag_field_name cadena

propiedades de aggregatenode
El nodo Agregar reemplaza una secuencia de registros de entrada con registros de salida
agregados y resumidos.

Ejemplo
node = [Link]("aggregate", "My node")
# dbnode es un nodo de importación de base de datos configurado
[Link](dbnode, node)
[Link]("contiguous", True)
[Link]("keys", ["Drug"])
[Link]("aggregates", "Age", ["Sum", "Mean"])

107
[Link]("inc_record_count", True)
[Link]("count_field", "index")
[Link]("extension", "Aggregated_")
[Link]("add_as", "Prefix")
Tabla 62. propiedades de aggregatenode.
Propiedad de aggregatenode Tipo de datos Descripción de la propiedad
keys lista Enumera los campos que se pueden usar como
claves en la agregación. Por ejemplo, si Sexo y
Región son los campos clave, cada combinación
exclusiva de V y M con las regiones N y S (cuatro
combinaciones exclusivas) tendrá un registro
agregado.
contiguous tag Seleccione esta opción si sabe que todos los
registros con los mismos valores clave se
agrupan en la entrada (por ejemplo, si la entrada
se clasifica en los campos clave). Con ello puede
mejorar el rendimiento.
aggregates Enumera los campos numéricos cuyos valores se
añadirán, así como los modos de agregación
elegidos.
aggregate_exprs Propiedad con clave que aplica claves al nombre
de campo derivado con la expresión agregada
utilizada para calcularla. Por ejemplo:
[Link]
("aggregate_exprs", "Na_MAX", "MAX(’Na’)")
extensión cadena Especifica un prefijo o sufijo para campos
agregados duplicados (consulte un ejemplo a
continuación).
add_as Suffix
Prefix
inc_record_count tag Crea un campo adicional que indica la cantidad
de registros de entrada agregados para
conformar cada registro agregado.
count_field cadena Especifica el nombre del campo de recuento de
registros.
allow_approximation Booleana Permite la aproximación de estadísticas de
ordenación cuando se realiza la agregación en
Analytic Server
bin_count entero Especifica el número de intervalos a utilizar en la
aproximación

propiedades de balancenode
El nodo Equilibrar corrige los desequilibrios de un conjunto de datos para que cumpla una
condición determinada. La directiva de equilibrado ajusta la proporción de registros si una
condición es verdadera por el factor determinado.

Ejemplo

108 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


node = [Link]("balance", "My node")
[Link]("training_data_only", True)
[Link]("directives", [[1.3, "Age > 60"], [1.5, "Na > 0.5"]])
Tabla 63. propiedades de balancenode.
Propiedad de balancenode Tipo de datos Descripción de la propiedad
directives Propiedad estructurada para equilibrar la
proporción de los valores de campos basados en
un número determinado (consulte el ejemplo a
continuación).
training_data_only tag Especifica que sólo se deben equilibrar los datos
de entrenamiento. Si no se incluye ningún campo
de partición en la ruta, se ignorará esta opción.

Esta propiedad de nodo utiliza el siguiente formato:

[[ número, cadena ] \ [ número, cadena] \ ... [número, cadena ]].

Nota: Si las cadenas (que utilizan comillas dobles) están incrustadas en la expresión, han de estar
precedidas del carácter de escape " \ ". El carácter " \ " es también el carácter de continuación de línea,
que puede utilizar para alinear los argumentos para mayor claridad.

Propiedades cplexoptnode
El nodo Optimización de CPLEX proporciona la capacidad de utilizar la optimización basada
en CPLEX (matemática compleja) a través de un archivo de modelo OPL (Optimization
Programming Language - Lenguaje de programación de optimización). Esta funcionalidad
está disponible en el producto IBM Analytical Decision Management, pero ahora también
puede utilizar el nodo CPLEX en SPSS Modeler sin necesitar IBM Analytical Decision
Management.

Para obtener más información sobre la optimización de CPLEX y OPL, consulte la


documentación de IBM Analytical Decision Management.

Tabla 64. Propiedades cplexoptnode


Propiedades cplexoptnode Tipo de datos Descripción de la propiedad
opl_model_text string El programa de scripts OPL (Lenguaje de
programación de optimización) que ejecutará el nodo
Optimización de CPLEX y, después, generará el
resultado de la optimización.
opl_tuple_set_name string Nombre de conjunto de tuplas en el modelo OPL
que corresponde a los datos de entrada. Esto no es
necesario y, normalmente, no se establece a través
del script. Solo se debe utilizar para editar
correlaciones de campos de una fuente de datos
seleccionada.
data_input_map Lista de propiedades Las correlaciones de campos de entrada para una
estructuradas fuente de datos. Esto no es necesario y,
normalmente, no se establece a través del script. Solo
se debe utilizar para editar correlaciones de campos
de una fuente de datos seleccionada.

Capítulo 10. Propiedades de nodos de operaciones con registros 109


Tabla 64. Propiedades cplexoptnode (continuación)
Propiedades cplexoptnode Tipo de datos Descripción de la propiedad
md_data_input_map Lista de propiedades Las correlaciones de campos entre cada tupla
estructuradas definida en el OPL, con cada fuente de datos de
campo correspondiente (datos de entrada). Los
usuarios pueden editarlas de forma individual por
fuente de datos. Con este script, puede establecer la
propiedad directamente para definir todas las
correlaciones a la vez. Este valor no se muestra en la
interfaz de usuario.

Cada entidad de la lista corresponde a datos


estructurados.

Etiqueta de fuente de datos. La etiqueta de la fuente


de datos, que se puede encontrar en el desplegable
de fuentes de datos. Por ejemplo, para
0_Products_Type la etiqueta es 0.

Índice de fuentes de datos. La secuencia física


(índice) de la fuente de datos. Esto se determina
mediante el orden de conexión.

Nodo de origen. El nodo de origen (anotación) de la


fuente de datos. Este se puede encontrar en el
desplegable de fuentes de datos. Por ejemplo, para
0_Products_Type el nodo de origen es Products.

Nodo conectado. El nodo anterior (anotación) que se


conecta al nodo de optimización de CPLEX actual.
Este se puede encontrar en el desplegable de fuentes
de datos. Por ejemplo, para 0_Products_Type, el
nodo conectado es Type.

Nombre de conjunto de tuplas. El nombre de


conjunto de tuplas de la fuente de datos. Debe
coincidir con lo que está definido en el OPL.

Nombre de campo de tupla. El nombre del campo


de conjunto de tuplas de la fuente de datos. Debe
coincidir con lo que está definido en la definición del
conjunto de tuplas de OPL.

Tipo de almacenamiento. El tipo de almacenamiento


de campo. Los valores posibles son int, float o
string.

Nombre de campo de datos. El nombre de campo


de la fuente de [Link]:
[[0,0,’Product’,’Type’,’Products’,
’prod_id_tup’,’int’,’prod_id’],
[0,0,’Product’,’Type’,’Products’,
’prod_name_tup’,’string’, ’prod_name’],
[1,1,’Components’,’Type’,’Components’,
’comp_id_tup’,’int’,’comp_id’],
[1,1,’Components’,’Type’, ’Components’,
’comp_name_tup’,’string’,’comp_name’]]
opl_data_text string La definición de algunas variables o datos utilizados
para el OPL.
output_value_mode string Los valores posibles son raw o dvar. Si se
proporciona dvar, en la pestaña Resultado el usuario
debe especificar el nombre de variable de función de
objeto en OPL para el resultado. Si se especifica raw,
la función de objetivo se producirá directamente,
independientemente del nombre.

110 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 64. Propiedades cplexoptnode (continuación)
Propiedades cplexoptnode Tipo de datos Descripción de la propiedad
decision_variable_name string El nombre de variable de la función de objetivo
definido en el OPL. Este valor solo está habilitado
cuando la propiedad output_value_mode está
establecida en dvar.
objective_function _value_fieldname string El nombre del campo para el valor de la función de
objetivo para utilizar en la salida. El valor
predeterminado es _OBJECTIVE.
output_tuple_set_names string El nombre de las tuplas predefinidas a partir de los
datos entrantes. Este actúa como los índices de la
variable de decisión y se espera que sea la salida con
las salidas de variable. La tupla de salida debe ser
coherente con la definición de la variable de decisión
en el OPL. Si hay varios índices, los nombres de
tupla se deben unir con una coma (,).

Un ejemplo de una sola tupla es Products, con la


definición de OPL correspondiente que es dvar
float+ Production[Products];

Un ejemplo de varias tuplas es Products,Components,


con la definición de OPL correspondiente que es
dvar float+ Production[Products][Components];
decision_output_map Lista de propiedades La correlación de campos entre variables definidas
estructuradas en el OPL que será la salida y los campos de salidas.
Cada entidad de la lista corresponde a datos
estructurados.

Nombre de variable. El nombre de variable en el


OPL para el resultado.

Tipo de almacenamiento. Los valores posibles son


int, float o string.

Nombre de campo de salida. El nombre de campo


previsto en los resultados (salida o
exportación).Ejemplo:
[[’Production’,’int’,’res’],
[’Remark’,’string’,’res_1’]
[’Cost’, ’float’,’res_2’]]

Propiedades derive_stbnode
El nodo Cajas-espacio-tiempo deriva Cajas-espacio-tiempo de los campos latitud, longitud e
indicación de fecha y hora. Las Cajas-espacio-tiempo también pueden identificarse como
lugares comunes.

Ejemplo
node = [Link]().createAt("derive_stb", "My node", 96, 96)

# Modalidad Individual Records (registros individuales)


[Link]("mode", "IndividualRecords")
[Link]("latitude_field", "Latitude")
[Link]("longitude_field", "Longitude")
[Link]("timestamp_field", "OccurredAt")
[Link]("densities", ["STB_GH7_1HOUR", "STB_GH7_30MINS"])
[Link]("add_extension_as", "Prefix")
[Link]("name_extension", "stb_")

Capítulo 10. Propiedades de nodos de operaciones con registros 111


# Modalidad Hangouts
[Link]("mode", "Hangouts")
[Link]("hangout_density", "STB_GH7_30MINS")
[Link]("id_field", "Event")
[Link]("qualifying_duration", "30MINUTES")
[Link]("min_events", 4)
[Link]("qualifying_pct", 65)
Tabla 65. propiedades del nodo Cajas-Espacio-Tiempo
Propiedades de derive_stbnode Tipo de datos Descripción de la propiedad
mode IndividualRecords
Hangouts
latitude_field campo
longitude_field campo
timestamp_field campo
hangout_density densidad Una sola densidad. Consulte en densities los
valores de densidad válidos.
densities [densidad,densidad,..., densidad] Cada densidad es una cadena, por ejemplo,
STB_GH8_1DAY.
Nota: Existen límites para que las densidades
sean válidas. En geohash, se pueden utilizar los
valores de GH1 a GH15. Para la parte temporal, se
pueden utilizar los valores siguientes:
EVER
1YEAR
1MONTH
1DAY
12HOURS
8HOURS
6HOURS
4HOURS
3HOURS
2HOURS
1HOUR
30MINS
15MINS
10MINS
5MINS
2MINS
1MIN
30SECS
15SECS
10SECS
5SECS
2SECS
1SEC
id_field campo

112 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 65. propiedades del nodo Cajas-Espacio-Tiempo (continuación)
Propiedades de derive_stbnode Tipo de datos Descripción de la propiedad
qualifying_duration 1DAY Debe ser una cadena.
12HOURS
8HOURS
6HOURS
4HOURS
3HOURS
2Hours
1HOUR
30MIN
15MIN
10MIN
5MIN
2MIN
1MIN
30SECS
15SECS
10SECS
5SECS
2SECS
1SECS
min_events entero El valor de entero válido mínimo es de 2.
qualifying_pct entero Debe estar en el rango de 1 a 100.
add_extension_as Prefix
Suffix
name_extension cadena

propiedades de distinctnode
El nodo Distinguir se puede usar para eliminar registros duplicados pasando el primero de
los registros distintos a la ruta de datos o descartando el primer registro y pasando cualquier
duplicado a la ruta de datos en su lugar.

Ejemplo
node = [Link]("distinct", "My node")
[Link]("mode", "Include")
[Link]("fields", ["Age" "Sex"])
[Link]("keys_pre_sorted", True)
Tabla 66. propiedades de distinctnode.
Propiedad de distinctnode Tipo de datos Descripción de la propiedad
mode Incluir Se puede incluir el primer nodo distinto en la
Descartar ruta o descartar el primer nodo distinto y pasar
en su lugar todos los registros duplicados a la
ruta de datos.
grouping_fields lista Enumera los campos utilizados para determinar
si los registros son idénticos.
Nota: Esta propiedad está en desuso desde IBM
SPSS Modeler 16 y posterior.
composite_value Intervalo estructurado Vea el ejemplo que se muestra a continuación.
composite_values Intervalo estructurado Vea el ejemplo que se muestra a continuación.

Capítulo 10. Propiedades de nodos de operaciones con registros 113


Tabla 66. propiedades de distinctnode (continuación).
Propiedad de distinctnode Tipo de datos Descripción de la propiedad
inc_record_count flag Crea un campo adicional que indica la cantidad
de registros de entrada agregados para
conformar cada registro agregado.
count_field cadena Especifica el nombre del campo de recuento de
registros.
sort_keys Intervalo estructurado Nota: Esta propiedad está en desuso desde IBM
SPSS Modeler 16 y posterior.
default_ascending flag
low_distinct_key_count tag Especifica que sólo tiene un pequeño número de
registros y/o un pequeño número de valores
exclusivos del campo(s) clave.
keys_pre_sorted tag Especifica que todos los registros con los mismos
valores clave se agrupan en la entrada.
disable_sql_generation tag

Ejemplo para la propiedad composite_value

La propiedad composite_value tiene el formato general siguiente:


[Link]("composite_value", FIELD, FILLOPTION)

FILLOPTION tiene el formato [ FillType, Option1, Option2, ...].

Ejemplos:
[Link]("composite_value", "Age", ["First"])
[Link]("composite_value", "Age", ["last"])
[Link]("composite_value", "Age", ["Total"])
[Link]("composite_value", "Age", ["Average"])
[Link]("composite_value", "Age", ["Min"])
[Link]("composite_value", "Age", ["Max"])
[Link]("composite_value", "Date", ["Earliest"])
[Link]("composite_value", "Date", ["Latest"])
[Link]("composite_value", "Code", ["FirstAlpha"])
[Link]("composite_value", "Code", ["LastAlpha"])

Las opciones personalizadas requieren más de un argumento, añadidos como una lista, por ejemplo:
[Link]("composite_value", "Name", ["MostFrequent", "FirstRecord"])
[Link]("composite_value", "Date", ["LeastFrequent", "LastRecord"])
[Link]("composite_value", "Pending", ["IncludesValue", "T", "F"])
[Link]("composite_value", "Marital", ["FirstMatch", "Married", "Divorced",
"Separated"])
[Link]("composite_value", "Code", ["Concatenate"])
[Link]("composite_value", "Code", ["Concatenate", "Space"])
[Link]("composite_value", "Code", ["Concatenate", "Comma"])
[Link]("composite_value", "Code", ["Concatenate", "UnderScore"])

Ejemplo para la propiedad composite_values


La propiedad composite_values tiene el formato general siguiente:
[Link]("composite_values", [
[FIELD1, [FILLOPTION1]],
[FIELD2, [FILLOPTION2]],
.
.
])

114 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Ejemplo:
[Link]("composite_values", [
["Age", ["First"]],
["Name", ["MostFrequent", "First"]],
["Pending", ["IncludesValue", "T"]],
["Marital", ["FirstMatch", "Married", "Divorced", "Separated"]],
["Code", ["Concatenate", "Comma"]]
])

Propiedades de extensionprocessnode

Con el nodo de Transformación de extensión, puede


tomar datos de una ruta y aplicar transformaciones a los
datos utilizando scripts R o scripts Python para Spark.

Ejemplo de Python para Spark


#### Ejemplo de script de Python para Spark
import [Link]
stream = [Link]()
node = [Link]("extension_process", "extension_process")
[Link]("syntax_type", "Python")

process_script = """
import [Link]
from [Link] import *

cxt = [Link]()

if [Link]():
_schema = StructType([StructField("Age", LongType(), nullable=True), \
StructField("Sex", StringType(), nullable=True), \
StructField("BP", StringType(), nullable=True), \
StructField("Na", DoubleType(), nullable=True), \
StructField("K", DoubleType(), nullable=True), \
StructField("Drug", StringType(), nullable=True)])
[Link](_schema)
else:
df = [Link]()
print [Link][:]
_newDF = [Link]("Age","Sex","BP","Na","K","Drug")
print _newDF.dtypes[:]
[Link](_newDF)
"""

[Link]("python_syntax", process_script)

Ejemplo de R
#### Ejemplo de script de R
[Link]("syntax_type", "R")
[Link]("r_syntax", """day<-[Link](modelerData$dob, format="%Y-%m-%d")
next_day<-day + 1
modelerData<-cbind(modelerData,next_day)
var1<-c(fieldName="Next day",fieldLabel="",fieldStorage="date",fieldMeasure="",fieldFormat="",
fieldRole="")
modelerDataModel<-[Link](modelerDataModel,var1)""")

Capítulo 10. Propiedades de nodos de operaciones con registros 115


Tabla 67. Propiedades de extensionprocessnode
Propiedades de
extensionprocessnode Tipo de datos Descripción de la propiedad
syntax_type R Especifica qué script se ejecuta: R o Python (R es
Python el valor predeterminado).
r_syntax string Sintaxis de scripts R a ejecutar.
python_syntax string Sintaxis de scripts Python a ejecutar.
use_batch_size flag Habilitar uso de proceso por lotes.
batch_size integer Especifique el número de registros de datos a
incluir en cada lote.
convert_flags StringsAndDoubles Opción para convertir campos de distintivos.
LogicalValues
convert_missing flag Opción para convertir valores perdidos al valor
NA de R.
convert_datetime flag Opción para convertir las variables con los
formatos de fecha o de fecha y hora para
formatos de fecha/hora R.
convert_datetime_class POSIXct Opciones para especificar a qué formato se
POSIXlt convierten las variables con los formatos de fecha
o de fecha y hora.

propiedades de mergenode
El nodo Fundir toma varios registros de entrada y crea un registro de salida único que
contiene todos o algunos de los campos de entrada. Es útil para fusionar datos desde
diferentes orígenes, como datos de clientes internos y datos demográficos adquiridos.

Ejemplo
node = [Link]("merge", "My node")
# supongamos que customerdata y salesdata son nodos de importación de base de datos configurados
[Link](customerdata, node)
[Link](salesdata, node)
[Link]("method", "Keys")
[Link]("key_fields", ["id"])
[Link]("common_keys", True)
[Link]("join", "PartialOuter")
[Link]("outer_join_tag", "2", True)
[Link]("outer_join_tag", "4", True)
[Link]("single_large_input", True)
[Link]("single_large_input_tag", "2")
[Link]("use_existing_sort_keys", True)
[Link]("existing_sort_keys", [["id", "Ascending"]])

116 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 68. propiedades de mergenode.
Propiedad de mergenode Tipo de datos Descripción de la propiedad
método Order Especifique si los registros se fusionan en el
Claves orden en que aparecen en los archivos de datos,
Condition si se utilizarán uno o más campos clave para
Rankedcondition fusionar los registros que tengan el mismo valor
en sus campos clave, si los registros se
fusionarán si se satisface una condición
especificada, o si se debe fusionar cada
emparejamiento de fila de los conjuntos
primario y todos los secundarios; utilizando la
expresión de clasificación para ordenar
coincidencias múltiples de menor a mayor.
condition cadena Si method se establece en Condition, especifica la
condición para incluir o descartar registros.
key_fields lista
common_keys tag
join Interior
FullOuter
PartialOuter
Anti
outer_join_tag.n tag En esta propiedad, n es el nombre de etiqueta
tal y como recoge el cuadro de diálogo
Seleccionar conjunto de datos. Tenga en cuenta
que es posible que existan varios nombres de
etiquetas especificados, ya que pueden ser
varios los conjuntos de datos que aporten
registros incompletos.
single_large_input tag Determina si se va a usar la optimización para
tener una entrada relativamente grande en
comparación con el resto de entradas.
single_large_input_tag cadena Especifica el nombre de etiqueta tal y como se
muestra en el cuadro de diálogo Seleccionar
conjunto de datos grande. Tenga en cuenta que
el uso de esta propiedad es ligeramente distinto
que el de la propiedad outer_join_tag (marca
frente a cadena), ya que solamente se puede
especificar un único conjunto de datos de
entrada.
use_existing_sort_keys tag Determina si las entradas ya se han ordenado en
función de uno o varios campos clave.
existing_sort_keys [['string', ’Ascending’] \ Especifica los campos que ya están ordenados y
['string'', ’Descending’]] la dirección en que dicho orden se ha
establecido.
primary_dataset cadena Si method es Rankedcondition, seleccione el
conjunto de datos primario de la fusión. Esto se
puede considerar como el lado izquierdo de una
fusión de unión externa.
rename_duplicate_fields Booleana Si method es Rankedcondition, y este valor está
establecido en Y, si el conjunto de datos
fusionado resultante contiene varios campos con
el mismo nombre procedentes de orígenes de
datos distintos, se añaden las etiquetas
respectivas de los orígenes de datos al comienzo
de las cabeceras de columna de campo.

Capítulo 10. Propiedades de nodos de operaciones con registros 117


Tabla 68. propiedades de mergenode (continuación).
Propiedad de mergenode Tipo de datos Descripción de la propiedad
merge_condition cadena
ranking_expression cadena
Num_matches entero Número de coincidencias a devolver, en función
de merge_condition y ranking_expression.
Mínimo 1, máximo 100.

propiedades rfmaggregatenode
El nodo Adición de RFM (actualidad, frecuencia, monetario) permite tomar datos de
transacciones históricas de clientes, deshacerse de los datos no utilizados y combinar todos
los datos de transacciones restantes en una única fila que indica cuándo hizo negociaciones
con los clientes por última vez, cuántas transacciones hicieron y el valor monetario total de
dichas transacciones.

Ejemplo
node = [Link]("rfmaggregate", "My node")
[Link]("relative_to", "Fixed")
[Link]("reference_date", "2007-10-12")
[Link]("id_field", "CardID")
[Link]("date_field", "Date")
[Link]("value_field", "Amount")
[Link]("only_recent_transactions", True)
[Link]("transaction_date_after", "2000-10-01")
Tabla 69. propiedades rfmaggregatenode.
propiedades rfmaggregatenode Tipo de datos Descripción de la propiedad
relative_to Fixed Especifica la fecha a partir de la que se calculará
Today la actualidad de las transacciones.
reference_date date Sólo está disponible si se selecciona Fixed en
relative_to.
contiguous tag Si los datos se han clasificado previamente de
forma que todos los registros con el mismo ID
aparecen en la ruta de datos, al seleccionar esta
opción acelerará el procesamiento.
id_field campo Especifica el campo que desea utilizar para
identificar el cliente y sus transacciones.
date_field campo Especifica el campo de fecha que se utilizará
para calcular la actualidad.
value_field campo Especifica el campo que se utilizará para calcular
el valor monetario.
extensión cadena Especifica un prefijo o sufijo para campos
agregados duplicados.
add_as Suffix Especifica si la extensión se debe añadir como
Prefix sufijo o prefijo.
discard_low_value_records tag Permite utilizar la configuración
discard_records_below.

118 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 69. propiedades rfmaggregatenode (continuación).
propiedades rfmaggregatenode Tipo de datos Descripción de la propiedad
discard_records_below number Especifique un valor mínimo por debajo del cual
no se utilice ningún detalle de transacción al
calcular los totales de RFM. Las unidades del
valor se relacionan con el campo valor
seleccionado.
only_recent_transactions tag Permite utilizar de la configuración
specify_transaction_date o
transaction_within_last.
specify_transaction_date tag
transaction_date_after date Sólo está disponible si selecciona
specify_transaction_date. Especifica la fecha de
transacción tras la que se incluirán los registros
en su análisis.
transaction_within_last number Sólo está disponible si selecciona
transaction_within_last. Especifica el número y
tipo de períodos (días, semanas, meses o años)
desde la fecha Calcular actualidad relativa a tras
la cual se incluirán los registros en su análisis.
transaction_scale Days Sólo está disponible si selecciona
Weeks transaction_within_last. Especifica el número y
Meses tipo de períodos (días, semanas, meses o años)
Años desde la fecha Calcular actualidad relativa a tras
la cual se incluirán los registros en su análisis.
save_r2 tag Muestra la fecha de la segunda transacción más
reciente para cada cliente.
save_r3 tag Sólo está disponible si selecciona save_r2.
Muestra la fecha de la tercera transacción más
reciente para cada cliente.

Propiedades de Rprocessnode
El nodo Transformación R le permite tomar datos de una
ruta de IBM(r) SPSS(r) Modeler y modificar los datos
utilizando su propio script R personalizado. Una vez
modificados los datos, se devuelven a la cadena.

Ejemplo
node = [Link]("rprocess", "My node")
[Link]("custom_name", "my_node")
[Link]("syntax", """day<-[Link](modelerData$dob, format="%Y-%m-%d")
next_day<-day + 1
modelerData<-cbind(modelerData,next_day)
var1<-c(fieldName="Next day",fieldLabel="",fieldStorage="date",fieldMeasure="",fieldFormat="",
fieldRole="")
modelerDataModel<-[Link](modelerDataModel,var1)""")
[Link]("convert_datetime", "POSIXct")

Capítulo 10. Propiedades de nodos de operaciones con registros 119


Tabla 70. propiedades de Rprocessnode.
Propiedades de Rprocessnode Tipo de datos Descripción de la propiedad
syntax cadena
convert_flags StringsAndDoubles
LogicalValues
convert_datetime flag
convert_datetime_class POSIXct
POSIXlt
convert_missing flag
use_batch_size flag Habilite el uso del proceso por lotes
batch_size entero Especifique el número de registros de datos que
se incluirán en cada lote

propiedades de samplenode
El nodo Muestrear selecciona un subconjunto de registros. Se admite una variedad de tipos
de muestras, entre las que se incluyen las muestras estratificadas, agrupadas en clústeres y no
aleatorias (estructuradas). El muestreo puede ser de gran utilidad para mejorar el rendimiento
y para seleccionar grupos de registros o transacciones relacionadas para un análisis.

Ejemplo
/* Create two Sample nodes to extract
different samples from the same data */

node = [Link]("sample", "My node")


[Link]("method", "Simple")
[Link]("mode", "Include")
[Link]("sample_type", "First")
[Link]("first_n", 500)

node = [Link]("sample", "My node")


[Link]("method", "Complex")
[Link]("stratify_by", ["Sex", "Cholesterol"])
[Link]("sample_units", "Proportions")
[Link]("sample_size_proportions", "Custom")
[Link]("sizes_proportions", [["M", "High", "Default"], ["M", "Normal",
"Default"],
["F", "High", 0.3], ["F", "Normal", 0.3]])
Tabla 71. propiedades de samplenode.
Propiedad de samplenode Tipo de datos Descripción de la propiedad
método Simple

Complex
mode Incluir Incluye o descarta los registros que reúnan la
Descartar condición especificada.
sample_type Primero Especifica el método de muestreo.
OneInN
RandomPct
first_n entero Se incluirán o descartarán los registros hasta el
punto de corte especificado.

120 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 71. propiedades de samplenode (continuación).
Propiedad de samplenode Tipo de datos Descripción de la propiedad
one_in_n number Incluye o descarta cada n registros.
rand_pct number Especifica el porcentaje de registros que incluir o
descartar.
use_max_size tag Activa el uso del parámetro maximum_size.
maximum_size entero Especifica la muestra más grande que se va a
incluir o descartar de la ruta de datos. Esta
opción es redundante, por lo que se desactiva
cuando se especifican las opciones First e
Include.
set_random_seed tag Activa el uso del parámetro de semillas
aleatorias.
random_seed entero Especifica el valor utilizado como semilla
aleatoria.
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 entero
variable_proportions campo
variable_counts campo
use_min_stratum_size tag
minimum_stratum_size entero Esta opción sólo se aplica cuando se toma una
muestra compleja con Sample units=Proportions.
use_max_stratum_size tag
maximum_stratum_size entero Esta opción sólo se aplica cuando se toma una
muestra compleja con Sample units=Proportions.
clusters campo
stratify_by [campo1 ... campoN]
specify_input_weight tag
input_weight campo
new_output_weight cadena
sizes_proportions [[string valor cadena][string Si sample_units=proportions y
valor cadena]...] sample_size_proportions=Custom, especifica un
valor para cada combinación posible de valores
de campos de especificación.
default_proportion number

Capítulo 10. Propiedades de nodos de operaciones con registros 121


Tabla 71. propiedades de samplenode (continuación).
Propiedad de samplenode Tipo de datos Descripción de la propiedad
sizes_counts [[string valor cadena][string Especifica un valor para cada combinación de
valor cadena]...] valores posible de campos de estratificación. Se
utiliza de forma similar a sizes_proportions
pero especificando un entero en lugar de una
proporción.
default_count number

propiedades de selectnode
El nodo Seleccionar selecciona o descarta un subconjunto de registros de la ruta de datos en
función de una condición específica. Por ejemplo, podría seleccionar los registros que
pertenezcan a una región de ventas determinada.

Ejemplo
node = [Link]("select", "My node")
[Link]("mode", "Include")
[Link]("condition", "Age < 18")
Tabla 72. propiedades de selectnode.
Propiedad de selectnode Tipo de datos Descripción de la propiedad
mode Incluir Especifica si incluir o descartar los registros
Descartar seleccionados.
condition cadena Condición para incluir o descartar registros.

propiedades de sortnode
Los nodos Ordenar organizan registros en orden ascendente o descendente atendiendo a los
valores de uno o varios campos.

Ejemplo
node = [Link]("sort", "My node")
[Link]("keys", [["Age", "Ascending"], ["Sex", "Descending"]])
[Link]("default_ascending", False)
[Link]("use_existing_keys", True)
[Link]("existing_keys", [["Age", "Ascending"]])
Tabla 73. propiedades de sortnode.
Propiedad de sortnode Tipo de datos Descripción de la propiedad
keys lista Especifica los campos que desea ordenar. Si no se
especifica ninguna dirección, se utilizará la
predeterminada.
default_ascending tag Especifica el orden de clasificación
predeterminado.

122 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 73. propiedades de sortnode (continuación).
Propiedad de sortnode Tipo de datos Descripción de la propiedad
use_existing_keys tag Determina si la clasificación se optimiza usando
el orden de clasificación anterior de los campos
que ya están ordenados.
existing_keys Especifica los campos que ya están ordenados y
la dirección en que dicho orden se ha
establecido. Utiliza el mismo formato que las
propiedades keys.

Propiedades de spacetimeboxes
Las cajas-espacio-tiempo (STB) son una extensión de las ubicaciones espaciales demarcadas
mediante Geohash. En concreto, una STB es una cadena alfanumérica que representa una
región de forma regular de espacio y tiempo.

Tabla 74. Propiedades de spacetimeboxes


Propiedades de spacetimeboxes Tipo de datos Descripción de la propiedad
mode IndividualRecords

Hangouts
latitude_field campo
longitude_field campo
timestamp_field campo

Capítulo 10. Propiedades de nodos de operaciones con registros 123


Tabla 74. Propiedades de spacetimeboxes (continuación)
Propiedades de spacetimeboxes Tipo de datos Descripción de la propiedad
densities [density, density, density...] Cada densidad es una serie. Por ejemplo:
STB_GH8_1DAY

Tenga en cuenta que existen límites con respecto


a qué densidades son válidas.

Para geohash, se pueden utilizar los valores de


GH1-GH15.

Para la parte temporal, se pueden utilizar los


valores siguientes:
EVER
1YEAR
1MONTH
1DAY
12HOURS
8HOURS
6HOURS
4HOURS
3HOURS
2HOURS
1HOUR
30MINS
15MINS
10MINS
5MINS
2 MINS
1 MIN
30SECS
15SECS
10SECS
5 SECS
2 SECS
1SEC
field_name_extension cadena
add_extension_as Prefix

Suffix
hangout_density densidad Densidad única (ver más arriba)
id_field campo
qualifying_duration 1DAY Esto debe ser una serie.
12HOURS
8HOURS
6HOURS
4HOURS
2HOURS
1HOUR
30MIN
15MIN
10MIN
5MIN
2MIN
1MIN
30SECS
15SECS
10SECS
5SECS
2SECS
1SECS

124 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 74. Propiedades de spacetimeboxes (continuación)
Propiedades de spacetimeboxes Tipo de datos Descripción de la propiedad
min_events entero El valor mínimo es 2
qualifying_pct entero Debe estar dentro del rango de 1-100

Propiedades streamingtimeseries
El nodo Serie temporal de modalidad continua crea y puntúa modelos de serie temporal en
un solo paso.
Nota: Este nodo Serie temporal de modalidad continua sustituye el nodo Resolución de TS
original que estaba en desuso en la versión 18 de SPSS Modeler.

Tabla 75. Propiedades streamingtimeseries


Descripción de la
Propiedades streamingtimeseries Valores propiedad
targets campo El nodo Serie temporal de
modalidad continua prevé
uno o más objetivos, de
forma opcional, utilizando
uno o más campos de
entrada como predictores.
Los campos de frecuencia y
ponderación no se usan.
Consulte el tema
“Propiedades comunes de
nodos de modelado” en la
página 185 para obtener
más información.
candidate_inputs [field1 ... fieldN] Campos de entrada o
predictor utilizados por el
modelo.
use_period flag
date_time_field campo
input_interval Ninguno
Desconocido
Año
Trimestre
Mes
Semana
Día
Hora
Hour_nonperiod
Minuto
Minute_nonperiod
Segundo
Second_nonperiod
period_field campo
period_start_value entero
num_days_per_week entero

Capítulo 10. Propiedades de nodos de operaciones con registros 125


Tabla 75. Propiedades streamingtimeseries (continuación)
Descripción de la
Propiedades streamingtimeseries Valores propiedad
start_day_of_week Sunday
Monday
Martes
Miércoles
Jueves
Viernes
Saturday
num_hours_per_day entero
start_hour_of_day entero
timestamp_increments entero
cyclic_increments entero
cyclic_periods lista
output_interval Ninguno
Año
Trimestre
Mes
Semana
Día
Hora
Minuto
Segundo
is_same_interval flag
cross_hour flag
aggregate_and_distribute lista
aggregate_default Media
Sum
Mode
Min
Max
distribute_default Media
Sum
group_default Media
Sum
Mode
Min
Max
missing_imput Linear_interp
Series_mean
K_mean
K_median
Linear_trend
k_span_points entero
use_estimation_period flag
estimation_period Observaciones
Times
date_estimation lista Solo está disponible si se
utiliza date_time_field

126 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 75. Propiedades streamingtimeseries (continuación)
Descripción de la
Propiedades streamingtimeseries Valores propiedad
period_estimation lista Solo está disponible si se
utiliza use_period
observations_type Latest
Más antiguo
observations_num entero
observations_exclude entero
method ExpertModeler
Exsmooth
Arima
expert_modeler_method ExpertModeler
Exsmooth
Arima
consider_seasonal flag
detect_outliers flag
expert_outlier_additive flag
expert_outlier_level_shift flag
expert_outlier_innovational flag
expert_outlier_level_shift flag
expert_outlier_transient flag
expert_outlier_seasonal_additive flag
expert_outlier_local_trend flag
expert_outlier_additive_patch flag
consider_newesmodels flag
exsmooth_model_type Simple
HoltsLinearTrend
BrownsLinearTrend
DampedTrend
SimpleSeasonal
WintersAdditive
WintersMultiplicative
DampedTrendAdditive
DampedTrendMultiplicative
MultiplicativeTrendAdditive
MultiplicativeSeasonal
MultiplicativeTrendMultiplicative
MultiplicativeTrend
futureValue_type_method Compute
specify
exsmooth_transformation_type Ninguno
SquareRoot
NaturalLog
arima.p entero
arima.d entero
arima.q entero
[Link] entero
[Link] entero

Capítulo 10. Propiedades de nodos de operaciones con registros 127


Tabla 75. Propiedades streamingtimeseries (continuación)
Descripción de la
Propiedades streamingtimeseries Valores propiedad
[Link] entero
arima_transformation_type Ninguno
SquareRoot
NaturalLog
arima_include_constant flag
tf_arima.p. nombredecampo entero Para funciones de
transferencia.
tf_arima.d. nombredecampo entero Para funciones de
transferencia.
tf_arima.q. nombredecampo entero Para funciones de
transferencia.
tf_arima.sp. nombredecampo entero Para funciones de
transferencia.
tf_arima.sd. nombredecampo entero Para funciones de
transferencia.
tf_arima.sq. nombredecampo entero Para funciones de
transferencia.
tf_arima.delay. nombredecampo entero Para funciones de
transferencia.
tf_arima.transformation_type. Ninguno Para funciones de
nombredecampo SquareRoot transferencia.
NaturalLog
arima_detect_outliers flag
arima_outlier_additive flag
arima_outlier_level_shift flag
arima_outlier_innovational flag
arima_outlier_transient flag
arima_outlier_seasonal_additive flag
arima_outlier_local_trend flag
arima_outlier_additive_patch flag
conf_limit_pct real
eventos campos
forecastperiods entero
extend_records_into_future flag
conf_limits flag
noise_res flag

Propiedades streamingts (en desuso)


Nota: Este nodo Serie temporal de modalidad continua estaba en desuso en la versión 18 de
SPSS Modeler y se sustituye por el nodo Serie temporal de modalidad continua que se ha
designado para aplicar la potencia de IBM SPSS Analytic Server y procesas grandes
cantidades de datos (Big Data).El nodo Generación de análisis TS construye y puntúa
modelos de series temporales en un paso, sin la necesidad de un nodo Intervalos de tiempo.

128 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Ejemplo
node = [Link]("streamingts", "My node")
[Link]("deployment_force_rebuild", True)
[Link]("deployment_rebuild_mode", "Count")
[Link]("deployment_rebuild_count", 3)
[Link]("deployment_rebuild_pct", 11)
[Link]("deployment_rebuild_field", "Year")
Tabla 76. propiedades streamingts.
Propiedades de streamingts Tipo de datos Descripción de la propiedad
custom_fields flag Si custom_fields=false, se utilizarán los valores
de un nodo Tipo situado en un punto anterior
de la ruta. Si custom_fields=true, deberán
especificarse targets e inputs.
targets [campo1...campoN]
inputs [campo1...campoN]
method ExpertModeler
Exsmooth
Arima
calculate_conf flag
conf_limit_pct real
use_time_intervals_node flag Si use_time_intervals_node=true, se utilizarán
los valores de un nodo Intervalos de tiempo
situado en un punto anterior de la ruta. Si
use_time_intervals_node=false, deberán
especificarse interval_offset_position,
interval_offset e interval_type.
interval_offset_position LastObservation LastObservation se refiere a la Última
LastRecord observación válida. LastRecord se refiere a la
Cuenta hacia atrás a partir del último registro.
interval_offset número
interval_type Períodos
Años
Trimestres
Meses
WeeksNonPeriodic
DaysNonPeriodic
HoursNonPeriodic
MinutesNonPeriodic
SecondsNonPeriodic
eventos campos
expert_modeler_method AllModels
Exsmooth
Arima
consider_seasonal flag
detect_outliers flag
expert_outlier_additive flag
expert_outlier_level_shift flag
expert_outlier_innovational flag
expert_outlier_transient flag
expert_outlier_seasonal_additive flag

Capítulo 10. Propiedades de nodos de operaciones con registros 129


Tabla 76. propiedades streamingts (continuación).
Propiedades de streamingts Tipo de datos Descripción de la propiedad
expert_outlier_local_trend flag
expert_outlier_additive_patch flag
exsmooth_model_type Simple
HoltsLinearTrend
BrownsLinearTrend
DampedTrend
SimpleSeasonal
WintersAdditive
WintersMultiplicative
exsmooth_transformation_type Ninguno
SquareRoot
NaturalLog
arima_p entero Misma propiedad que el nodo de modelado
Serie de tiempo
arima_d entero Misma propiedad que el nodo de modelado
Serie de tiempo
arima_q entero Misma propiedad que el nodo de modelado
Serie de tiempo
arima_sp entero Misma propiedad que el nodo de modelado
Serie de tiempo
arima_sd entero Misma propiedad que el nodo de modelado
Serie de tiempo
arima_sq entero Misma propiedad que el nodo de modelado
Serie de tiempo
arima_transformation_type Ninguno Misma propiedad que el nodo de modelado
SquareRoot Serie de tiempo
NaturalLog
arima_include_constant flag Misma propiedad que el nodo de modelado
Serie de tiempo
tf_arima_p.nombrecampo entero Misma propiedad que el nodo de modelado
Serie de tiempo. Para funciones de transferencia.
tf_arima_d.nombrecampo entero Misma propiedad que el nodo de modelado
Serie de tiempo. Para funciones de transferencia.
tf_arima_q.nombrecampo entero Misma propiedad que el nodo de modelado
Serie de tiempo. Para funciones de transferencia.
tf_arima_sp.nombrecampo entero Misma propiedad que el nodo de modelado
Serie de tiempo. Para funciones de transferencia.
tf_arima_sd.nombrecampo entero Misma propiedad que el nodo de modelado
Serie de tiempo. Para funciones de transferencia.
tf_arima_sq.nombrecampo entero Misma propiedad que el nodo de modelado
Serie de tiempo. Para funciones de transferencia.
tf_arima_delay.nombrecampo entero Misma propiedad que el nodo de modelado
Serie de tiempo. Para funciones de transferencia.
tf_arima_transformation_type. Ninguno
nombredecampo SquareRoot
NaturalLog
arima_detect_outlier_mode Ninguno
Automatic
arima_outlier_additive flag

130 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 76. propiedades streamingts (continuación).
Propiedades de streamingts Tipo de datos Descripción de la propiedad
arima_outlier_level_shift flag
arima_outlier_innovational flag
arima_outlier_transient flag
arima_outlier_seasonal_additive flag
arima_outlier_local_trend flag
arima_outlier_additive_patch flag
deployment_force_rebuild flag
deployment_rebuild_mode Recuento
Porcentaje
deployment_rebuild_count número
deployment_rebuild_pct número
deployment_rebuild_field <campo>

Capítulo 10. Propiedades de nodos de operaciones con registros 131


132 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python
Capítulo 11. Propiedades de nodos de operaciones con
campos
propiedades de anonymizenode
El nodo Anonimizar transforma la manera en que se representan los nombres y los valores de
los campos a partir de ese punto de la ruta, lo que permite disfrazar los datos originales.
Puede resultar útil si desea permitir que otros usuarios generen modelos utilizando datos
confidenciales, como los nombres de los clientes u otros detalles.

Ejemplo
stream = [Link]()
varfilenode = [Link]("variablefile", "File", 96, 96)
[Link]("full_filename", "$CLEO/DEMOS/DRUG1n")
node = [Link]("anonymize", "My node", 192, 96)
# Anonimizar nodo requiere los campos de entrada al establecer los valores
[Link](varfilenode, node)
[Link]("enable_anonymize", "Age", True)
[Link]("transformation", "Age", "Random")
[Link]("set_random_seed", "Age", True)
[Link]("random_seed", "Age", 123)
[Link]("enable_anonymize", "Drug", True)
[Link]("use_prefix", "Drug", True)
[Link]("prefix", "Drug", "myprefix")
Tabla 77. propiedades de anonymizenode
Propiedades de anonymizenode Tipo de datos Descripción de la propiedad
enable_anonymize flag Cuando se establece en True, activa la anonimización de los
valores de los campos (equivale a seleccionar Sí para dicho
campo en la columna Anonimizar valores).
use_prefix flag Cuando se establece en True, se utilizará un prefijo
personalizado, si es que se ha establecido uno. Se aplica a los
campos que se anonimizarán mediante el método Hash y es
equivalente a elegir el botón de radio Personalizado en el
cuadro de diálogo Reemplazar valores correspondiente a dicho
campo.
prefix cadena Equivale a escribir un prefijo en el cuadro de texto del cuadro
de diálogo Reemplazar valores. El prefijo predeterminado es el
valor predeterminado, si no se ha especificado otra cosa.
transformation Random Determina si los parámetros de transformación que se aplican a
Fixed un campo anonimizado mediante el método Transformar serán
aleatorios o fijos.
set_random_seed flag Cuando se establece en True, se utilizará el valor inicial
especificado (si transformation también se ha establecido en
Random).
random_seed entero Cuando set_random_seed se establece en True, esta es la
semilla para el número aleatorio.
scale número Cuando transformation se establece en Fixed, se utiliza este
valor para "scale by" (escalar por). El valor máximo de la escala
suele ser 10, pero puede reducirse para evitar desbordamientos.

133
Tabla 77. propiedades de anonymizenode (continuación)
Propiedades de anonymizenode Tipo de datos Descripción de la propiedad
translate número Cuando transformation se establece en Fixed, se utiliza este
valor para "translate" (convertir). El valor máximo de traslación
suele ser 1000, pero puede reducirse para evitar
desbordamientos.

properties autodataprepnode
El nodo de preparación automática de datos (ADP) puede analizar sus datos e identificar los
valores fijos, cribar los campos problemáticos o que no serán útiles y derivar nuevos atributos
cuando sea necesario y mejorar el rendimiento mediante técnicas de cribado y muestreo
inteligente. Puede utilizar el nodo de forma totalmente automática, permitiendo que el nodo
seleccione y aplique valores fijos, o bien puede tener una vista previa de los cambios antes de
que se apliquen y aceptarlos o rechazarlos.

Ejemplo
node = [Link]("autodataprep", "My node")
[Link]("objective", "Balanced")
[Link]("excluded_fields", "Filter")
[Link]("prepare_dates_and_times", True)
[Link]("compute_time_until_date", True)
[Link]("reference_date", "Today")
[Link]("units_for_date_durations", "Automatic")
Tabla 78. properties autodataprepnode
properties autodataprepnode Tipo de datos Descripción de la propiedad
objective Balanced
Speed
Exactitud
Personalizado
custom_fields flag Si es verdadero, le permite especificar el
objetivo, la entrada y otros campos del nodo
actual. Si es falso, se utiliza la configuración
actual de un nodo Tipo situado en un punto
anterior de la ruta.
target campo Especifica un campo de objetivo único.
inputs [field1 ... fieldN] Campos de entrada o predictor utilizados por
el modelo.
use_frequency flag
frequency_field campo
use_weight flag
weight_field campo
excluded_fields Filter
Ninguno
if_fields_do_not_match StopExecution
ClearAnalysis
prepare_dates_and_times flag Controla el acceso a todos los campos de
fecha y hora
compute_time_until_date flag

134 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 78. properties autodataprepnode (continuación)
properties autodataprepnode Tipo de datos Descripción de la propiedad
reference_date Today
Fixed
fixed_date fecha
units_for_date_durations Automatic
Fixed
fixed_date_units Años
Meses
Days
compute_time_until_time flag
reference_time CurrentTime
Fixed
fixed_time hora
units_for_time_durations Automatic
Fixed
fixed_date_units Hours
Minutes
Seconds
extract_year_from_date flag
extract_month_from_date flag
extract_day_from_date flag
extract_hour_from_time flag
extract_minute_from_time flag
extract_second_from_time flag
exclude_low_quality_inputs flag
exclude_too_many_missing flag
maximum_percentage_missing número
exclude_too_many_categories flag
maximum_number_categories número
exclude_if_large_category flag
maximum_percentage_category número
prepare_inputs_and_target flag
adjust_type_inputs flag
adjust_type_target flag
reorder_nominal_inputs flag
reorder_nominal_target flag
replace_outliers_inputs flag
replace_outliers_target flag
replace_missing_continuous_inputs flag
replace_missing_continuous_target flag
replace_missing_nominal_inputs flag
replace_missing_nominal_target flag
replace_missing_ordinal_inputs flag

Capítulo 11. Propiedades de nodos de operaciones con campos 135


Tabla 78. properties autodataprepnode (continuación)
properties autodataprepnode Tipo de datos Descripción de la propiedad
replace_missing_ordinal_target flag
maximum_values_for_ordinal número
minimum_values_for_continuous número
outlier_cutoff_value número
outlier_method Replace
Eliminar
rescale_continuous_inputs flag
rescaling_method MinMax
ZScore
min_max_minimum número
min_max_maximum número
z_score_final_mean número
z_score_final_sd número
rescale_continuous_target flag
target_final_mean número
target_final_sd número
transform_select_input_fields flag
maximize_association_with_target flag
p_value_for_merging número
merge_ordinal_features flag
merge_nominal_features flag
minimum_cases_in_category número
bin_continuous_fields flag
p_value_for_binning número
perform_feature_selection flag
p_value_for_selection número
perform_feature_construction flag
transformed_target_name_extension cadena
transformed_inputs_name_extension cadena
constructed_features_root_name cadena
years_duration_ name_extension cadena
months_duration_ name_extension cadena
days_duration_ name_extension cadena
hours_duration_ name_extension cadena
minutes_duration_ name_extension cadena
seconds_duration_name_extension cadena
year_cyclical_name_extension cadena
month_cyclical_name_extension cadena
day_cyclical_name_extension cadena
hour_cyclical_name_extension cadena

136 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 78. properties autodataprepnode (continuación)
properties autodataprepnode Tipo de datos Descripción de la propiedad
minute_cyclical_name_extension cadena
second_cyclical_name_extension cadena

propiedades de astimeintervalsnode
Utilice el nodo Intervalos de tiempo para especificar intervalos y derive un nuevo campo de
tiempo para el cálculo y la previsión. Se admite una gama completa de intervalos de tiempo
que abarca desde segundos a años.

Tabla 79. propiedades de astimeintervalsnode


Propiedades de astimeintervalsnode Tipo de datos Descripción de la propiedad
time_field campo Solo puede aceptar un único campo continuo.
Ese campo lo utiliza el nodo como la clave de
agregación para convertir el intervalo. Si se
utiliza aquí un campo de entero, se considera
como un índice de tiempo.
dimensiones [campo1 campo2 ... Estos campos se utilizan para crear series
campon] temporales individuales basándose en los
valores de campo.
fields_to_aggregate [campo1 campo2 ... Estos campos se agregan como parte del
campon] cambio del período del campo de tiempo. Los
campos no incluidos en este selector se filtran
y excluyen de los datos que salen del nodo.

propiedades de binningnode
El nodo Intervalos crea automáticamente nuevos campos nominales (conjunto) en función de
los valores de uno o más campos continuos (rango numérico) existentes. Por ejemplo, puede
transformar un campo de ingresos continuo en un campo categórico nuevo que contenga
grupos de ingresos como desviaciones desde la media. Una vez creados los intervalos para el
campo nuevo, puede generar un nodo Derivar en función de los puntos de corte.

Ejemplo
node = [Link]("binning", "My node")
[Link]("fields", ["Na", "K"])
[Link]("method", "Rank")
[Link]("fixed_width_name_extension", "_binned")
[Link]("fixed_width_add_as", "Suffix")
[Link]("fixed_bin_method", "Count")
[Link]("fixed_bin_count", 10)
[Link]("fixed_bin_width", 3.5)
[Link]("tile10", True)

Capítulo 11. Propiedades de nodos de operaciones con campos 137


Tabla 80. propiedades de binningnode
Propiedad de binningnode Tipo de datos Descripción de la propiedad
campos [campo1 campo2 ... Los campos continuos (rango numérico)
campon] pendientes de transformación. Se pueden
crear intervalos de varios campos de forma
simultánea.
method FixedWidth Método utilizado para determinar los puntos
EqualCount de corte de los intervalos de campo nuevos
Rank (categorías).
SDev
Optimal
rcalculate_bins Always Especifica si se vuelven a calcular los
IfNecessary intervalos y los datos se colocan en el
intervalo adecuado cada vez que se ejecuta el
nodo o si los datos sólo se añaden a los
intervalos existentes y cualquier nuevo
intervalo que se haya añadido.
fixed_width_name_extension cadena La extensión predeterminada es _BIN.
fixed_width_add_as Suffix Determina si la extensión se debe añadir al
Prefix principio (prefijo) o al final (sufijo) del
nombre de campo. La extensión
predeterminada es income_BIN.
fixed_bin_method Width
Count
fixed_bin_count entero Especifica un número entero para determinar
el número de intervalos de anchura fija
(categorías) para los nuevos campos.
fixed_bin_width real Valor (entero o real) para calcular el ancho del
intervalo.
equal_count_name_ cadena La extensión predeterminada es _TILE.
extensión
equal_count_add_as Suffix Especifica una extensión, sufijo o prefijo,
Prefix utilizada para el nombre de los campos
generados con p-tiles estándar. La extensión
predeterminada es _TILE más N, donde N es
el número de cuantil.
tile4 flag Genera cuatro intervalos de cuantiles, cada
uno con el 25% de los casos.
tile5 flag Genera cinco intervalos de quintiles.
tile10 flag Genera 10 intervalos de deciles.
tile20 flag Genera 20 intervalos de veintiles.
tile100 flag Genera 100 intervalos de percentiles.
use_custom_tile flag
custom_tile_name_extension cadena La extensión predeterminada es _TILEN.
custom_tile_add_as Suffix
Prefix
custom_tile entero

138 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 80. propiedades de binningnode (continuación)
Propiedad de binningnode Tipo de datos Descripción de la propiedad
equal_count_method RecordCount El método RecordCount trata de asignar el
ValueSum mismo número de registros a cada intervalo,
mientras que ValueSum asigna registros de
manera que la suma de los valores de cada
intervalo sea la misma.
tied_values_method Next Especifica en qué intervalo se van a insertar
Actual los datos de valor empatado.
Random
rank_order Ascending Esta propiedad incluye Ascending (el valor
Descending más bajo se marca con 1) o Descending (el
valor más alto se marca con 1).
rank_add_as Suffix Esta opción se aplica al rango, rango
Prefix fraccional y rango como porcentaje.
rango flag
rank_name_extension cadena La extensión predeterminada es _RANK.
rank_fractional flag Establece rangos de casos en los que el valor
del campo nuevo es igual al rango dividido
por la suma de las ponderaciones de los casos
que no están perdidos. Los rangos
fraccionales están dentro del rango de 0–1.
rank_fractional_name_ cadena La extensión predeterminada es _F_RANK.
extensión
rank_pct flag Cada rango se divide por el número de
registros con valores válidos y se multiplica
por 100. Los rangos fraccionales de porcentaje
están dentro del rango de 1–100.
rank_pct_name_extension cadena La extensión predeterminada es _P_RANK.
sdev_name_extension cadena
sdev_add_as Suffix
Prefix
sdev_count One
Two
Three
optimal_name_extension cadena La extensión predeterminada es _OPTIMAL.
optimal_add_as Suffix
Prefix
optimal_supervisor_field campo Campo elegido como campo supervisor, con
el que se relacionan los campos seleccionados
para los intervalos.
optimal_merge_bins flag Especifica que todos los intervalos con un
número pequeño de casos se añadirán a un
intervalo vecino de mayor tamaño.
optimal_small_bin_threshold entero
optimal_pre_bin flag Indica si debe agruparse previamente en
intervalos el conjunto de datos.
optimal_max_bins entero Especifica un límite superior con el fin de
evitar que se genere un número desmesurado
de intervalos.

Capítulo 11. Propiedades de nodos de operaciones con campos 139


Tabla 80. propiedades de binningnode (continuación)
Propiedad de binningnode Tipo de datos Descripción de la propiedad
optimal_lower_end_point Inclusive
Exclusive
optimal_first_bin Unbounded
Bounded
optimal_last_bin Unbounded
Bounded

propiedades de derivenode
El nodo Derivar modifica los valores de datos o crea campos nuevos desde uno o más
campos existentes. Crea campos del tipo fórmula, marca, nominal, estado, recuento y
condicional.

Ejemplo 1
# Crear y configurar un nodo de campo Derivar marca
node = [Link]("derive", "My node")
[Link]("new_name", "DrugX_Flag")
[Link]("result_type", "Flag")
[Link]("flag_true", "1")
[Link]("flag_false", "0")
[Link]("flag_expr", "’Drug’ == \"drugX\"")

# Crear y configurar un nodo de campo Derivar condicional


node = [Link]("derive", "My node")
[Link]("result_type", "Conditional")
[Link]("cond_if_cond", "@OFFSET(\"Age\", 1) = \"Age\"")
[Link]("cond_then_expr", "(@OFFSET(\"Age\", 1) = \"Age\" >< @INDEX")
[Link]("cond_else_expr", "\"Age\"")

Ejemplo 2

Este script presupone que existen dos columnas numéricas denominadas XPos e YPos que representan las
coordenadas X e Y de un punto (por ejemplo, donde se ha producido un evento). El script crea un nodo
Derivar que calcula una columna geoespacial de coordenadas X e Y que representan dicho punto en un
sistema de coordenadas específico:
stream = [Link]()
# Otro código de configuración de ruta
node = [Link]("derive", "Location", 192, 96)
[Link]("new_name", "Location")
[Link]("formula_expr", "[’XPos’, ’YPos’]")
[Link]("formula_type", "Geospatial")
# Ahora que hemos definido el tipo de medición general, defina los
# detalles del objeto geoespacial
[Link]("geo_type", "Point")
[Link]("has_coordinate_system", True)
[Link]("coordinate_system", "ETRS_1989_EPSG_Arctic_zone_5-47")
Tabla 81. propiedades de derivenode
Propiedad de derivenode Tipo de datos Descripción de la propiedad
new_name cadena Nombre del campo nuevo.

140 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 81. propiedades de derivenode (continuación)
Propiedad de derivenode Tipo de datos Descripción de la propiedad
mode Single Especifica si los campos son únicos o
Múltiples múltiples.
campos lista Se utiliza en modo Múltiple solamente
para seleccionar varios campos.
name_extension cadena Especifica la extensión de los nombres
de los nuevos campos.
add_as Suffix Añade la extensión como un prefijo (al
Prefix principio) o como un sufijo (al final) del
nombre de los campos.
result_type Formula Los seis tipos de campos nuevos que se
Flag pueden crear.
Set
State
Count
Conditional
formula_expr cadena Expresión para calcular un nuevo valor
de campo en el nodo Derivar.
flag_expr cadena
flag_true cadena
flag_false cadena
set_default cadena
set_value_cond cadena Estructurada para proporcionar la
condición asociada a un valor dado.
state_on_val cadena Especifica el valor del campo nuevo
cuando se cumple la condición Activado.
state_off_val cadena Especifica el valor del campo nuevo
cuando se cumple la condición
Desactivado.
state_on_expression cadena
state_off_expression cadena
state_initial On Asigna a cada registro del nuevo campo
Off un valor inicial activado (On) o
desactivado (Off). Este valor puede
cambiar a medida que se cumplan las
condiciones.
count_initial_val cadena
count_inc_condition cadena
count_inc_expression cadena
count_reset_condition cadena
cond_if_cond cadena
cond_then_expr cadena
cond_else_expr cadena

Capítulo 11. Propiedades de nodos de operaciones con campos 141


Tabla 81. propiedades de derivenode (continuación)
Propiedad de derivenode Tipo de datos Descripción de la propiedad
formula_measure_type Range / [Link] Esta propiedad se puede utilizar para
Discrete / [Link] definir la medición asociada con el
Flag / [Link] campo derivado. La función de
Set / [Link] establecimiento se puede pasar como
OrderedSet / MeasureType.ORDERED_SET una cadena o uno de los valores
Typeless / [Link] MeasureType. El método de obtención
Collection / [Link] siempre devolverá los valores
Geospatial / [Link] MeasureType.
collection_measure Range / [Link] Para campos de recopilación (listas con
Flag / [Link] profundidad 0), esta propiedad define el
Set / [Link] tipo de medición asociado con los
OrderedSet / MeasureType.ORDERED_SET valores subyacentes.
Typeless / [Link]
geo_type Point En campos geoespaciales, esta propiedad
Multipunto define el tipo del objeto geoespacial
Cadena lineal representado por este campo. Debería
Cadena multilínea ser coherente con la profundidad de lista
Polígono de los valores
Multipolígono
has_coordinate_system booleano En campos geoespaciales, esta propiedad
define si este campo tiene un sistema de
coordenadas
coordinate_system cadena En campos geoespaciales, esta propiedad
define el sistema de coordenadas para
este campo

propiedades de ensemblenode
El nodo Conjunto combina dos o más nugget de modelo para obtener predicciones más
precisas que pueden conseguirse de cualquier modelo.

Ejemplo
# Crear y configurar un nodo Conjunto
# Utilizar este nodo con los modelos en demos\streams\pm_module\pm_binaryclassifier.str
node = [Link]("ensemble", "My node")
[Link]("ensemble_target_field", "response")
[Link]("filter_individual_model_output", False)
[Link]("flag_ensemble_method", "ConfidenceWeightedVoting")
[Link]("flag_voting_tie_selection", "HighestConfidence")
Tabla 82. propiedades de ensemblenode.
propiedades de ensemblenode Tipo de datos Descripción de la propiedad
ensemble_target_field campo Especifica el campo objetivo de todos
los modelos utilizados en el conjunto.
filter_individual_model_output tag Especifica si los resultados de
puntuación de los modelos
individuales se deben eliminar.

142 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 82. propiedades de ensemblenode (continuación).
propiedades de ensemblenode Tipo de datos Descripción de la propiedad
flag_ensemble_method Voting Especifica el método utilizado para
ConfidenceWeightedVoting determinar la puntuación del
RawPropensityWeightedVoting conjunto. Este conjunto sólo se aplica
AdjustedPropensityWeightedVoting si el objetivo seleccionado es un
HighestConfidence campo de marca.
AverageRawPropensity
AverageAdjustedPropensity
set_ensemble_method Voting Especifica el método utilizado para
ConfidenceWeightedVoting determinar la puntuación del
HighestConfidence conjunto. Este conjunto sólo se aplica
si el objetivo seleccionado es un
campo nominal.
flag_voting_tie_selection Random Si se selecciona un método de
HighestConfidence votación, especifica cómo se
RawPropensity resolverán los empates. Este conjunto
AdjustedPropensity sólo se aplica si el objetivo
seleccionado es un campo de marca.
set_voting_tie_selection Random Si se selecciona un método de
HighestConfidence votación, especifica cómo se
resolverán los empates. Este conjunto
sólo se aplica si el objetivo
seleccionado es un campo nominal.
calculate_standard_error tag Si el campo objetivo es continuo, se
ejecuta un error estándar de forma
predeterminada para calcular la
diferencia entre los valores medidos o
estimados y los valores true; y para
mostrar si las estimaciones coinciden.

propiedades de fillernode
El nodo Rellenar sustituye valores de campos y cambia el almacenamiento. Puede sustituir los
valores en función de una condición CLEM, como @BLANK(@FIELD). También puede sustituir
todos los espacios vacíos o valores nulos por un valor específico. Un nodo Rellenar suelen
utilizarse junto con un nodo Tipo para sustituir valores perdidos.

Ejemplo
node = [Link]("filler", "My node")
[Link]("fields", ["Age"])
[Link]("replace_mode", "Always")
[Link]("condition", "(\"Age\" > 60) and (\"Sex\" = \"M\"")
[Link]("replace_with", "\"old man\"")
Tabla 83. propiedades de fillernode
Propiedad de fillernode Tipo de datos Descripción de la propiedad
campos lista Campos del conjunto de datos cuyos valores
se van a examinar y sustituir.

Capítulo 11. Propiedades de nodos de operaciones con campos 143


Tabla 83. propiedades de fillernode (continuación)
Propiedad de fillernode Tipo de datos Descripción de la propiedad
replace_mode Always Se pueden sustituir todos los valores, valores
Conditional vacíos o valores nulos, o bien reemplazar
Vacío aquellos basados en una condición específica.
Null
BlankAndNull
condition cadena
replace_with cadena

propiedades de filternode
El nodo Filtrar filtra (descarta) campos, vuelve a nombrar campos y correlaciona campos de
nodo de origen a otro.

Ejemplo
node = [Link]("filter", "My node")
[Link]("default_include", True)
[Link]("new_name", "Drug", "Chemical")
[Link]("include", "Drug", False)

Usando la propiedad default_include. Tenga en cuenta que, si establece el valor de la propiedad


default_include, no se incluirán o excluirán automáticamente todos los campos, sino que simplemente se
determinará el valor predeterminado de los seleccionados actualmente. Esto equivale funcionalmente a
pulsar en el botón Incluir campos de forma predeterminada del cuadro de diálogo del nodo Filtrar. Por
ejemplo, imagine que ejecuta el siguiente script:
node = [Link]().create("filter", "Filter")
[Link]("default_include", False)
# Incluir estos dos campos en la lista
for f in ["Age", "Sex"]:
[Link]("include", f, True)

Esto hará que el nodo pase los campos Edad y Sexo y descarte el resto. Ahora, imagine que ejecuta de
nuevo el mismo script, pero designa dos campos diferentes:
node = [Link]().create("filter", "Filter")
[Link]("default_include", False)
# Incluir estos dos campos en la lista
for f in ["BP", "Na"]:
[Link]("include", f, True)

De esta forma, se añadirán dos campos más al filtro, de manera que pasan un total de cuatro campos
(Edad, Sexo, PS y Na). En otras palabras, al volver a establecer el valor de default_include en False no se
restablecen automáticamente todos los campos.

Si lo desea, si ahora cambia default_include a True (ya sea usando un script o en el cuadro de diálogo
del nodo Filtrar), cambiará el comportamiento de forma que los cuatro campos enumerados
anteriormente no se incluirían, sino que quedarían descartados. Si no está seguro, se recomienda
experimentar con los controles del cuadro de diálogo del nodo Filtrar para entender esta interacción.

144 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 84. propiedades de filternode
Propiedad de filternode Tipo de datos Descripción de la propiedad
default_include flag Propiedad con clave para especificar si el
comportamiento predeterminado es para
pasar o filtrar los campos:

Tenga en cuenta que, si se establece esta


propiedad, no se incluirán o excluirán
automáticamente todos los campos, sino que
simplemente se determinará si los campos
seleccionados se incluyen o excluyen de forma
predeterminada. Vea el ejemplo que se
muestra a continuación para ver más
comentarios.
include flag Propiedad con clave para incluir y eliminar el
campo.
new_name cadena

propiedades de historynode
El nodo Historial se utiliza para crear campos nuevos que contienen datos de los campos de
registros anteriores. Los nodos Historial se suelen utilizar para los datos secuenciales, como
los datos de series temporales. Antes de utilizar un nodo Historial, puede desear ordenar los
datos utilizando un nodo Ordenar.

Ejemplo
node = [Link]("history", "My node")
[Link]("fields", ["Drug"])
[Link]("offset", 1)
[Link]("span", 3)
[Link]("unavailable", "Discard")
[Link]("fill_with", "undef")
Tabla 85. propiedades de historynode
Propiedad de historynode Tipo de datos Descripción de la propiedad
campos lista Campos para los que desea un historial.
offset número Especifica el último registro anterior al
registro actual desde el que desea extraer
valores del campo histórico.
span número Especifica el número de registros anteriores
de los que desea extraer valores.
unavailable Descartar Para tratar registros que no tienen valores de
Leave historial, suele hacer referencia a los primeros
Fill registros (en la parte superior del conjunto de
datos), de los que no hay registros previos
que utilizar como historial.
fill_with String Especifica un valor o cadena que utilizar en el
Number caso de los registros en los que no existen
valores de historial disponibles.

Capítulo 11. Propiedades de nodos de operaciones con campos 145


propiedades de partitionnode
El nodo Partición genera un campo de partición, que divide los datos en subconjuntos
diferentes para las fases de entrenamiento, comprobación y validación en la generación del
modelo.

Ejemplo
node = [Link]("partition", "My node")
[Link]("create_validation", True)
[Link]("training_size", 33)
[Link]("testing_size", 33)
[Link]("validation_size", 33)
[Link]("set_random_seed", True)
[Link]("random_seed", 123)
[Link]("value_mode", "System")
Tabla 86. propiedades de partitionnode
Propiedad de partitionnode Tipo de datos Descripción de la propiedad
new_name cadena Nombre del campo de partición generado por el
nodo.
create_validation flag Especifica si se debe crear una partición de
validación.
training_size entero Porcentaje de registros (0-100) que se van a
asignar a la partición de entrenamiento.
testing_size entero Porcentaje de registros (0-100) que se van a
asignar a la partición de comprobación.
validation_size entero Porcentaje de registros (0-100) que se van a
asignar a la partición de entrenamiento. Se
ignora si no se crea una partición de validación.
training_label cadena Etiqueta para la partición de entrenamiento.
testing_label cadena Etiqueta para la partición de comprobación.
validation_label cadena Etiqueta para la partición de validación. Se
ignora si no se crea una partición de validación.
value_mode Sistema Especifica los valores utilizados para representar
SystemAndLabel cada partición en los datos. Por ejemplo, el
Label entero del sistema 1, la etiqueta Entrenamiento o
una combinación de los dos, 1_Entrenamiento,
pueden representar la muestra de entrenamiento.
set_random_seed Booleana Especifica si se debe utilizar una semilla aleatoria
especificada por el usuario.
random_seed entero Valor de semilla aleatoria especificada por el
usuario. Para que se pueda utilizar este valor,
set_random_seed se debe establecer en True.
enable_sql_generation Booleana Especifica si se utiliza la retrotracción SQL para
asignar registros a particiones.

146 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 86. propiedades de partitionnode (continuación)
Propiedad de partitionnode Tipo de datos Descripción de la propiedad
unique_field Especifica el campo de entrada que se utiliza
para garantizar que los registros se asignan a
particiones de una forma aleatoria pero
reproducible. Para que se pueda utilizar este
valor, enable_sql_generation se debe establecer
en True.

propiedades de reclassifynode
El nodo Reclasificar transforma un conjunto de valores categóricos en otro. La reclasificación
es útil para contraer categorías o reagrupar datos para su análisis.

Ejemplo
node = [Link]("reclassify", "My node")
[Link]("mode", "Multiple")
[Link]("replace_field", True)
[Link]("field", "Drug")
[Link]("new_name", "Chemical")
[Link]("fields", ["Drug", "BP"])
[Link]("name_extension", "reclassified")
[Link]("add_as", "Prefix")
[Link]("reclassify", "drugA", True)
[Link]("use_default", True)
[Link]("default", "BrandX")
[Link]("pick_list", ["BrandX", "Placebo", "Generic"])
Tabla 87. propiedades de reclassifynode
Propiedad de reclassifynode Tipo de datos Descripción de la propiedad
mode Single Single reclasifica las categorías de un campo.
Múltiples Multiple activa las opciones que permiten la
transformación de varios campos al mismo
tiempo.
replace_field flag
field cadena Sólo se utiliza en modo Single.
new_name cadena Sólo se utiliza en modo Single.
campos [campo1 campo2 ... Sólo se utiliza en modo Multiple.
campon]
name_extension cadena Sólo se utiliza en modo Multiple.
add_as Suffix Sólo se utiliza en modo Multiple.
Prefix
reclasificar cadena Propiedad estructurada para valores de
campos.
use_default flag Utiliza el valor predeterminado.
valor predeterminado cadena Especifica un valor predeterminado.

Capítulo 11. Propiedades de nodos de operaciones con campos 147


Tabla 87. propiedades de reclassifynode (continuación)
Propiedad de reclassifynode Tipo de datos Descripción de la propiedad
pick_list [string string ... string] Permite al usuario importar una lista de
valores nuevos conocidos para rellenar la lista
desplegable de la tabla.

propiedades de reordernode
El nodo Reorg. campos define el orden natural utilizado para mostrar los campos en la parte
posterior de la ruta. Este orden afecta a la visualización de los campos en diversas
ubicaciones, como las tablas, las listas y el selector de campos. Esta operación resulta útil al
trabajar con conjuntos de datos amplios que hacen más visibles los campos de interés.

Ejemplo
node = [Link]("reorder", "My node")
[Link]("mode", "Custom")
[Link]("sort_by", "Storage")
[Link]("ascending", False)
[Link]("start_fields", ["Age", "Cholesterol"])
[Link]("end_fields", ["Drug"])
Tabla 88. propiedades de reordernode
Propiedad de reordernode Tipo de datos Descripción de la propiedad
mode Custom Se pueden ordenar los valores de forma
Automático automática o especificar un orden
personalizado.
sort_by Name
Tipo
Storage
ascending flag
start_fields [campo1 campo2 ... Los campos nuevos se han insertado después
campon] de estos campos.
end_fields [campo1 campo2 ... Los campos nuevos se han insertado antes de
campon] estos campos.

propiedades de reprojectnode
En SPSS Modeler, elementos como las funciones espaciales Creador de expresiones, el nodo
de Predicción espacio-temporal (STP) y el nodo Visualización de mapas utilizan el sistema de
coordenadas proyectado. Utilice el nodo Reproyectar para cambiar el sistema de coordenadas
de los datos que importa y que utilizan un sistema de coordenadas geográficas.

Tabla 89. propiedades de reprojectnode


Propiedades de reprojectnode Tipo de datos Descripción de la propiedad
reproject_fields [campo1 campo2 ... Lista todos los campos que se van a
campon] reproyectar.
reproject_type Streamdefault Elija cómo reproyectar los campos.
Especifique

148 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 89. propiedades de reprojectnode (continuación)
Propiedades de reprojectnode Tipo de datos Descripción de la propiedad
coordinate_system cadena El nombre del sistema de coordenadas que se
aplicará a los campos. Ejemplo:
set reprojectnode.coordinate_system =
“WGS_1984_World_Mercator”

propiedades de restructurenode
El nodo Reestructurar convierte un campo nominal o marca en un grupo de campos que se
puede rellenar con los valores todavía de otro campo. Por ejemplo, para un campo
determinado llamado tipo de pago, con valores de crédito, efectivo, y débito, se crearían tres
campos nuevos (crédito, efectivo, débito), que contendría cada uno el valor del pago real
realizado.

Ejemplo
node = [Link]("restructure", "My node")
[Link]("fields_from", "Drug", ["drugA", "drugX"])
[Link]("include_field_name", True)
[Link]("value_mode", "OtherFields")
[Link]("value_fields", ["Age", "BP"])
Tabla 90. propiedades de restructurenode
Propiedad de restructurenode Tipo de datos Descripción de la propiedad
fields_from [category category
category]
all
include_field_name flag Indica si se debe usar el nombre del campo en
el nombre de campo reestructurado.
value_mode OtherFields Indica el modo de definir los valores para los
Flags campos reestructurados. Con OtherFields,
debe especificar los campos que se van a usar
(consulte a continuación). Con Flags, los
valores son marcas numéricas.
value_fields lista Es necesario en caso de que value_mode sea
OtherFields. Especifica los campos que se van
a usar como campos de valores.

propiedades de rfmanalysisnode
El nodo Análisis de RFM (actualidad, frecuencia, monetario) permite determinar
cuantitativamente qué clientes son los mejores examinando cuándo ha sido la compra más
reciente de un cliente (actualidad), cuántas veces suele comprar (frecuencia) y cuánto gasta el
cliente en todas las transacciones (valor monetario).

Ejemplo
node = [Link]("rfmanalysis", "My node")
[Link]("recency", "Recency")
[Link]("frequency", "Frequency")
[Link]("monetary", "Monetary")

Capítulo 11. Propiedades de nodos de operaciones con campos 149


[Link]("tied_values_method", "Next")
[Link]("recalculate_bins", "IfNecessary")
[Link]("recency_thresholds", [1, 500, 800, 1500, 2000, 2500])
Tabla 91. propiedades de rfmanalysisnode
propiedades de rfmanalysisnode Tipo de datos Descripción de la propiedad
actualidad campo Especifica el campo de actualidad. Puede ser
una fecha, marca de tiempo o un número
simple.
frecuencia campo Especifica el campo de frecuencia.
monetary campo Especifica el campo de monetario.
recency_bins entero Especifica el número de intervalos de
actividades recientes que se van a generar.
recency_weight número Especifica la ponderación que se aplicará a los
datos de actividades recientes. El valor
predeterminado es 100.
frequency_bins entero Especifica el número de intervalos de frecuencia
que se van a generar.
frequency_weight número Especifica la ponderación que se aplicará a los
datos de frecuencia. El valor por omisión es 10.
monetary_bins entero Especifica el número de intervalos de monetario
que se van a generar.
monetary_weight número Especifica la ponderación que se aplicará a los
datos de monetario. El valor predeterminado es
1.
tied_values_method Next Especifica en qué intervalo se van a insertar los
Actual datos de valor empatado.

recalculate_bins Always
IfNecessary
add_outliers flag Sólo está disponible si recalculate_bins se
define como IfNecessary. Si se selecciona, los
registros por debajo del intervalo más inferior se
añaden al intervalo inferior y los registros por
encima, se añaden al intervalo superior.
binned_field Recency
Frequency
Monetary
recency_thresholds valor valor Sólo está disponible si recalculate_bins se
define como Siempre. Especifica los umbrales
superior e inferior de los intervalos de
actividades recientes. El umbral superior de un
intervalo se utiliza como el umbral inferior del
siguiente, por ejemplo, [10 30 60] definiría dos
intervalos, el primer intervalo con los umbrales
superior e inferior de 10 y 30, con los umbrales
del segundo intervalo de 30 y 60.
frequency_thresholds valor valor Sólo está disponible si recalculate_bins se
define como Siempre.
monetary_thresholds valor valor Sólo está disponible si recalculate_bins se
define como Siempre.

150 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


propiedades de settoflagnode
El nodo Marcas deriva varios campos de marcas en función de los valores categóricos
definidos para uno o más campos nominales.

Ejemplo
node = [Link]("settoflag", "My node")
[Link]("fields_from", "Drug", ["drugA", "drugX"])
[Link]("true_value", "1")
[Link]("false_value", "0")
[Link]("use_extension", True)
[Link]("extension", "Drug_Flag")
[Link]("add_as", "Suffix")
[Link]("aggregate", True)
[Link]("keys", ["Cholesterol"])
Tabla 92. propiedades de settoflagnode
Propiedad de settoflagnode Tipo de datos Descripción de la propiedad
fields_from [category category
category]
all
true_value cadena Especifica el valor para verdadero utilizado
por el nodo al configurar una marca. El valor
predeterminado es T (del inglés 'True').
false_value cadena Especifica el valor para falso utilizado por el
nodo al configurar una marca. El valor
predeterminado es F (del inglés 'False').
use_extension flag Utiliza una extensión como sufijo o prefijo
para el nuevo campo de marca.
extensión cadena
add_as Suffix Especifica si la extensión es un sufijo o un
Prefix prefijo.
aggregate flag Agrupa registros en función de campos clave.
Si algún registro se establece como verdadero,
se activarán todos los campos de marca de un
grupo.
keys lista Campos clave.

propiedades de statisticstransformnode
El nodo Transformación Statistics ejecuta una selección de comandos de sintaxis de IBM SPSS
Statistics en los orígenes de datos de IBM SPSS Modeler. Este nodo requiere una copia de
IBM SPSS Statistics con licencia.

Las propiedades de este nodo están descritas en “propiedades de statisticstransformnode” en la página


347.

Capítulo 11. Propiedades de nodos de operaciones con campos 151


Propiedades timeintervalsnode (en desuso)
Nota: Este nodo estaba en desuso en la versión 18 de SPSS Modeler y se sustituye por el
nuevo nodo Serie [Link] nodo Intervalos de tiempo especifica intervalos y genera
etiquetas (si es necesario) para modelar los datos de series temporales. Si los valores no están
espaciados de manera uniforme, el nodo puede rellenar o agregar valores según sea necesario
para crear un intervalo uniforme entre registros.

Ejemplo
node = [Link]("timeintervals", "My node")
[Link]("interval_type", "SecondsPerDay")
[Link]("days_per_week", 4)
[Link]("week_begins_on", "Tuesday")
[Link]("hours_per_day", 10)
[Link]("day_begins_hour", 7)
[Link]("day_begins_minute", 5)
[Link]("day_begins_second", 17)
[Link]("mode", "Label")
[Link]("year_start", 2005)
[Link]("month_start", "January")
[Link]("day_start", 4)
[Link]("pad", "AGE", "MeanOfRecentPoints")
[Link]("agg_mode", "Specify")
[Link]("agg_set_default", "Last")
Tabla 93. propiedades de timeintervalsnode.
Propiedad de timeintervalsnode Tipo de datos Descripción de la propiedad
interval_type Ninguno
Períodos
CyclicPeriods
Años
Trimestres
Meses
DaysPerWeek
DaysNonPeriodic
HoursPerDay
HoursNonPeriodic
MinutesPerDay
MinutesNonPeriodic
SecondsPerDay
SecondsNonPeriodic
mode Label Determina si desea etiquetar los registros de
Create manera consecutiva o crear la serie según
una fecha, marca de tiempo o campo de
tiempo concretos.
campo campo Al crear la serie a partir de los datos,
especifica el campo que informa de la fecha
u hora de cada registro.
period_start entero Especifica el intervalo de inicio para
períodos o períodos cíclicos.
cycle_start entero Ciclo de inicio de los períodos cíclicos.
year_start entero En el caso de los tipos de intervalo que
procedan, el año en que el primer intervalo
tiene lugar.

152 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 93. propiedades de timeintervalsnode (continuación).
Propiedad de timeintervalsnode Tipo de datos Descripción de la propiedad
quarter_start entero En el caso de los tipos de intervalo que
procedan, el trimestre en que el primer
intervalo tiene lugar.
month_start Enero
Febrero
Marzo
Abril
Mayo
Junio
Julio
Agosto
Septiembre
Octubre
Noviembre
Diciembre
day_start entero
hour_start entero
minute_start entero
second_start entero
periods_per_cycle entero En el caso de los períodos cíclicos, número
en cada ciclo.
fiscal_year_begins Enero En el caso de los intervalos trimestrales,
Febrero especifica el mes en el que comienza el año
Marzo fiscal.
Abril
Mayo
Junio
Julio
Agosto
Septiembre
Octubre
Noviembre
Diciembre
week_begins_on Sunday En el caso de los intervalos periódicos (días
Monday a la semana, horas al día, minutos al día y
Tuesday segundos al día), especifica el día en el que
Wednesday comienza la semana.
Thursday
Friday
Saturday
Sunday
day_begins_hour entero En el caso de los intervalos periódicos (horas
al día, minutos al día y segundos al día),
especifica la hora a la que comienza el día.
Se puede usar junto con day_begins_minute
y day_begins_second para determinar una
hora exacta, como [Link]. Vea el ejemplo de
uso que se muestra a continuación.
day_begins_minute entero En el caso de los intervalos periódicos (horas
al día, minutos al día y segundos al día),
especifica el minuto en el que comienza el
día (por ejemplo, 5 en 8:05).

Capítulo 11. Propiedades de nodos de operaciones con campos 153


Tabla 93. propiedades de timeintervalsnode (continuación).
Propiedad de timeintervalsnode Tipo de datos Descripción de la propiedad
day_begins_second entero En el caso de los intervalos periódicos (horas
al día, minutos al día y segundos al día),
especifica el segundo en el que comienza el
día (por ejemplo, 17 en [Link]).
days_per_week entero En el caso de los intervalos periódicos (días
a la semana, horas al día, minutos al día y
segundos al día), especifica el número de
días a la semana.
hours_per_day entero En el caso de los intervalos periódicos (horas
al día, minutos al día y segundos al día),
especifica el número de horas al día.
interval_increment 1 En el caso de los minutos al día y de los
2 segundos al día, especifica el número de
3 minutos o segundos que se va a aumentar
4 en cada registro.
5
6
10
15
20
30
field_name_extension cadena
field_name_extension_as_prefix tag
date_format "DDMMAA"
"MMDDYY"
"AAMMDD"
"YYMMDD"
"YYYYDDD"
DAY
MONTH
"DD-MM-YY"
"DD-MM-YYYY"
"MM-DD-YY"
"MM-DD-AAAA"
"DD-MES-YY"
"DD-MES-YYYY"
"YYYY-MM-DD"
"[Link]"
"[Link]"
"[Link]"
"[Link]"
"[Link]"
"DD/MM/YY"
"DD/MM/AAAA"
"MM/DD/YY"
"MM/DD/YYYY"
"DD/MES/YY"
"DD/MES/YYYY"
MON YYYY
q Q YYYY
ww WK YYYY

154 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 93. propiedades de timeintervalsnode (continuación).
Propiedad de timeintervalsnode Tipo de datos Descripción de la propiedad
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"
"[Link]"
"[Link]"
"[Link]"
"(H)H.(M)M.(S)S"
"(H)H.(M)M"
"(M)M.(S)S"
aggregate Media Especifica el método de agregación para un
Sum campo.
Mode
Mín
Máx
Primero
Last
TrueIfAnyTrue
pad Vacío Especifica el método de relleno para un
MeanOfRecentPoints campo.
True
False
agg_mode Todos Determina si se agregan o rellenan todos los
Especifica campos con las funciones predeterminadas
según sea necesario o bien si se especifican
los campos y las funciones que deben
usarse.
agg_range_default Media Especifica la función predeterminada que se
Sum va a usar al agregar campos continuos.
Mode
Mín
Máx
agg_set_default Mode Especifica la función predeterminada que se
Primero va a usar al agregar campos nominales.
Last
agg_flag_default TrueIfAnyTrue
Mode
Primero
Last
pad_range_default Vacío Especifica la función predeterminada que se
MeanOfRecentPoints va a usar al agregar campos continuos.
pad_set_default Vacío
MostRecentValue
pad_flag_default Vacío
True
False
max_records_to_create entero Especifica el número máximo de registros
que se van a crear al rellenar la serie.
estimation_from_beginning tag

Capítulo 11. Propiedades de nodos de operaciones con campos 155


Tabla 93. propiedades de timeintervalsnode (continuación).
Propiedad de timeintervalsnode Tipo de datos Descripción de la propiedad
estimation_to_end tag
estimation_start_offset entero
estimation_num_holdouts entero
create_future_records tag
num_future_records entero
create_future_field tag
future_field_name cadena

Propiedades de transposenode
El nodo Transponer intercambia los datos en filas y columnas de manera que los registros se
conviertan en campos y los campos en registros.

Ejemplo
node = [Link]("transpose", "My node")
[Link]("transposed_names", "Read")
[Link]("read_from_field", "TimeLabel")
[Link]("max_num_fields", "1000")
[Link]("id_field_name", "ID")
Tabla 94. Propiedades de transposenode
Propiedad de transposenode Tipo de datos Descripción de la propiedad
transpose_method enum Especifica el método de transposición: Normal
(normal), CASE a VAR (casetovar) o VAR a
CASE (vartocase).
transposed_names Prefix Propiedad para el método de transposición
Leer normal. Se pueden generar nuevos nombres de
campo automáticamente a partir de un prefijo
concreto o bien se pueden leer desde un campo
existente en los datos.
prefix string Propiedad para el método de transposición
normal.
num_new_fields integer Propiedad para el método de transposición
normal. Al usar un prefijo, especifica el número
máximo de campos nuevos que se van a crear.
read_from_field field Propiedad para el método de transposición
normal. Campo del que se leen los nombres.
Debe tratarse de un campo instanciado o, de lo
contrario, se producirá un error al ejecutar el
nodo.
max_num_fields integer Propiedad para el método de transposición
normal. Al leer nombres de un campo, especifica
un límite superior con el fin de evitar que se
genere un número desmesurado de campos.

156 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 94. Propiedades de transposenode (continuación)
Propiedad de transposenode Tipo de datos Descripción de la propiedad
transpose_type Numérico Propiedad para el método de transposición
Cadena normal. De forma predeterminada, solamente los
Personalizado campos continuos (rango numérico) se
transponen, si bien se puede elegir un
subconjunto personalizado de campos
numéricos o, en su lugar, transponer todos los
campos de cadena.
transpose_fields list Propiedad para el método de transposición
normal. Especifica los campos que se van a
transponer cuando se usa la opción Custom.
id_field_name field Propiedad para el método de transposición
normal.
index field Propiedad para el método de transposición
CASE a VAR (casetovar). Acepta varios campos
a utilizar como campos de índice.
field1 ... fieldN
column field Propiedad para el método de transposición
CASE a VAR (casetovar). Acepta varios campos
que se utilizarán como campos de columna.
field1 ... fieldN
value field Propiedad para el método de transposición
CASE a VAR (casetovar). Acepta varios campos
que se utilizarán como campos de valor.
field1 ... fieldN
id_variables field Propiedad para el método de transposición VAR
a CASE (vartocase). Acepta varios campos que
se deberán utilizar como campos de variable de
ID.
field1 ... fieldN
value_variables field Propiedad para el método de transposición VAR
a CASE (vartocase). Acepta varios campos que
se deberán utilizar como campos de variable de
valor.
field1 ... fieldN

propiedades de typenode
El nodo Tipo especifica propiedades y metadatos de campo. Por ejemplo, puede especificar
un nivel de medición (continuo, nominal, ordinal o marca) para cada campo, establecer las
opciones para gestionar valores perdidos y nulos del sistema, establecer el rol de un campo
con fines de modelado, especificar las etiquetas de valor y campo y especificar los valores de
un campo.

Ejemplo
node = [Link]("type", "My node", 50, 50)
[Link]("check", "Cholesterol", "Coerce")
[Link]("direction", "Drug", "Input")
[Link]("type", "K", "Range")
[Link]("values", "Drug", ["drugA", "drugB", "drugC", "drugD", "drugX",
"drugY", "drugZ"])
[Link]("null_missing", "BP", False)

Capítulo 11. Propiedades de nodos de operaciones con campos 157


[Link]("whitespace_missing", "BP", False)
[Link]("description", "BP", "Blood Pressure")
[Link]("value_labels", "BP", [["HIGH", "High Blood Pressure"],
["NORMAL", "normal blood pressure"]])

Observe que en algunos casos puede que sea necesario instanciar totalmente el nodo Tipo para que otros
nodos funcionen adecuadamente, como, por ejemplo, la propiedad fields from del nodo Marcas.
Simplemente conecte un nodo Tabla y ejecútelo para instanciar los campos:
tablenode = [Link]("table", "Table node", 150, 50)
[Link](node, tablenode)
[Link](None)
[Link](tablenode)
Tabla 95. Propiedades de typenode.
Propiedad de
typenode Tipo de datos Descripción de la propiedad
dirección Input Propiedad con clave para los roles de los
Destino campos.
Both Nota: Los valores In y Out han quedado
Ninguno en desuso. Es posible que ya no puedan
Partition utilizarse en futuras versiones.
Split
Frequency
RecordID
type Range El nivel de medición del campo
Flag (anteriormente denominado el "tipo" de
Set campo). Si se establece type en
Sin tipo Default, se borrará cualquier
Discrete valor del parámetro values,
OrderedSet y si value_mode tiene el valor
Predeterminado Specify, se restablecerá en Read.
Si value_mode se establece en Pass
o Read, el establecimiento de type
no afectará a value_mode.
Nota: Los tipos de datos utilizados
internamente difieren de los que son
visibles en el nodo tipo. La
correspondencia es la siguiente: Range ->
Continuous Set - > Nominal OrderedSet ->
Ordinal Discrete- > Categorical
almacenamiento Desconocido Propiedad con clave de solamente lectura
Cadena para el tipo de almacenamiento de
Entero campos.
Real
Hora
Fecha
Marca de tiempo
check Ninguno Propiedad con clave para la comprobación
Nullify del rango y el tipo de campo.
Coerce
Descartar
Warn
Abort

158 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 95. Propiedades de typenode (continuación).
Propiedad de
typenode Tipo de datos Descripción de la propiedad
values [value value] Para un campo continuos, el primer valor
es el mínimo y el último es el máximo.
Para campos nominales, especifique todos
los valores. Para los campos marca, el
primer valor representa falso y el último,
verdadero. La configuración de esta
propiedad establece de forma automática
la propiedad value_mode en Specify.
value_mode Leer Determina la forma en la que se establecen
Pasar los valores. Tenga en cuenta que no puede
Leer+ establecer esta propiedad directamente en
Actual Specify. Para utilizar valores específicos,
Especifique establezca la propiedad values.
extend_values flag Se aplica cuando value_mode se establece
en Read. Establézcala en T para añadir
nuevos valores de lectura a los valores
existentes del campo. Establézcala en F
para descartar los valores existentes y
favorecer a los nuevos valores de lectura.
enable_missing flag Cuando está definida como T, activa el
seguimiento de los valores perdidos para
el campo.
missing_values [value value ...] Especifica los valores de datos que
denotan los datos perdidos.
range_missing flag Especifica si se ha definido un rango de
valores perdidos (vacíos) para un campo.
missing_lower cadena Si range_missing es verdadero, especifica
el límite inferior del rango de valores
perdidos.
missing_upper cadena Si range_missing es verdadero, especifica
el límite superior del rango de valores
perdidos.
null_missing flag Cuando se establece en T, los valores nulos
(valores no definidos que se muestran
como $null$ en el software) se consideran
valores perdidos.
whitespace_ missing flag Cuando se establece en T, los valores que
sólo contienen un espacio en blanco
(espacios, tabulaciones y líneas nuevas) se
consideran valores perdidos.
description cadena Especifica la descripción de un campo.
value_labels [[Value LabelString] [ Value LabelString] ...] Se utiliza para especificar etiquetas para
los pares de valores.
display_places entero Establece el número de cifras decimales
para el campo cuando se muestra (sólo se
aplica a campos con almacenamiento
REAL). Un valor de 1 utilizará el valor
predeterminado de la ruta.

Capítulo 11. Propiedades de nodos de operaciones con campos 159


Tabla 95. Propiedades de typenode (continuación).
Propiedad de
typenode Tipo de datos Descripción de la propiedad
export_places entero Establece el número de cifras decimales
para el campo cuando se exporta (sólo se
aplica a campos con almacenamiento
REAL). Un valor de 1 utilizará el valor
predeterminado de la ruta.
decimal_separator DEFAULT Establece el separador decimal para el
PERIOD campo (sólo se aplica a campos con
COMMA almacenamiento REAL).
date_format "DDMMAA" Establece el formato de fecha para el
"MMDDYY" campo (sólo se aplica a campos con
"AAMMDD" almacenamiento FECHA o MARCADETIEMPO).
"YYMMDD"
"YYYYDDD"
DAY
MONTH
"DD-MM-YY"
"DD-MM-YYYY"
"MM-DD-YY"
"MM-DD-AAAA"
"DD-MES-YY"
"DD-MES-YYYY"
"YYYY-MM-DD"
"[Link]"
"[Link]"
"[Link]"
"[Link]"
"[Link]"
"DD/MM/YY"
"DD/MM/AAAA"
"MM/DD/YY"
"MM/DD/YYYY"
"DD/MES/YY"
"DD/MES/YYYY"
MON YYYY
q Q YYYY
ww WK YYYY
time_format "HHMMSS" Establece el formato de hora para el campo
"HHMM" (sólo se aplica a campos con
"MMSS" almacenamiento TIME o TIMESTAMP).
"HH:MM:SS"
"HH:MM"
"MM:SS"
"(H)H:(M)M:(S)S"
"(H)H:(M)M"
"(M)M:(S)S"
"[Link]"
"[Link]"
"[Link]"
"(H)H.(M)M.(S)S"
"(H)H.(M)M"
"(M)M.(S)S"
number_format DEFAULT Establece el formato de presentación de los
STANDARD números para el campo.
SCIENTIFIC
CURRENCY

160 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 95. Propiedades de typenode (continuación).
Propiedad de
typenode Tipo de datos Descripción de la propiedad
standard_places entero Establece el número de cifras decimales
para el campo cuando se muestra en
formato estándar. Un valor de 1 utilizará el
valor predeterminado de la ruta. Tenga en
cuenta que el intervalo display_places
existente también cambiará esto, pero
ahora se ha desaprobado.
scientific_places entero Establece el número de cifras decimales
para el campo cuando se muestra en
formato científico. Un valor de 1 utilizará
el valor predeterminado de la ruta.
currency_places entero Establece el número de cifras decimales
para el campo cuando se muestra en
formato moneda. Un valor de 1 utilizará el
valor predeterminado de la ruta.
grouping_symbol DEFAULT Establece el símbolo de agrupación para el
NONE campo.
LOCALE
PERIOD
COMMA
SPACE
column_width entero Establece el ancho de columna para el
campo. Un valor de 1 establecerá el ancho
de columna en Auto.
justify AUTO Establece la justificación de columna para
CENTER el campo.
LEFT
RIGHT
measure_type Range / [Link] Esta propiedad con clave es similar a type
Discrete / [Link] en cuanto a que puede utilizarse para
Flag / [Link] definir la medición asociada al campo. La
Set / [Link] diferencia es que, en los scripts Python, la
OrderedSet / MeasureType.ORDERED_SET función de establecimiento puede pasar
Typeless / [Link] también uno de los valores MeasureType,
Collection / [Link] mientras que la función de obtención
Geospatial / [Link] siempre devolverá los valores MeasureType.
collection_ measure Range / [Link] Para campos de recopilación (listas con
Flag / [Link] profundidad 0), esta propiedad con clave
Set / [Link] define el tipo de medición asociado con los
OrderedSet / MeasureType.ORDERED_SET valores subyacentes.
Typeless / [Link]
geo_type Point En campos geoespaciales, esta propiedad
Multipunto con clave define el tipo del objeto
Cadena lineal geoespacial representado por este campo.
Cadena multilínea Debería ser coherente con la profundidad
Polígono de lista de los valores.
Multipolígono
has_coordinate_ booleano En campos geoespaciales, esta propiedad
system define si este campo tiene un sistema de
coordenadas

Capítulo 11. Propiedades de nodos de operaciones con campos 161


Tabla 95. Propiedades de typenode (continuación).
Propiedad de
typenode Tipo de datos Descripción de la propiedad
coordinate_system cadena En campos geoespaciales, esta propiedad
con clave define el sistema de coordenadas
para este campo.
custom_storage_ type Unknown / [Link] Esta propiedad con clave es similar a
String / [Link] custom_storage en cuanto a que puede
Integer / [Link] utilizarse para definir el almacenamiento
Real / [Link] de alteración temporal para el campo. La
Time / [Link] diferencia es que, en los scripts Python, la
Date / [Link] función de establecimiento puede pasar
Timestamp / [Link] también uno de los valores StorageType,
List / [Link] mientras que la función de obtención
siempre devolverá los valores StorageType.
custom_list_ String / [Link] Para campos de lista, esta propiedad con
storage_type Integer / [Link] clave especifica el tipo de almacenamiento
Real / [Link] de los valores subyacentes.
Time / [Link]
Date / [Link]
Timestamp / [Link]
custom_list_depth entero Para campos de lista, esta propiedad con
clave especifica la profundidad del campo.
max_list_length entero Solo está disponible para datos con un
nivel de medición de Geoespacial o
Colección. Establezca la longitud máxima
de la lista especificando el número de
elementos que puede contener la lista.
max_string_length entero Solo está disponible para datos sin tipos y
se utiliza al generar SQL para crear una
tabla. Entre el valor de la serie más larga
en los datos; esto genera una columna en
la tabla que es lo suficientemente grande
para contener la serie.

162 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Capítulo 12. Propiedades de nodos Gráfico
Propiedades comunes del nodo Gráfico
Esta sección describe las propiedades disponibles para los nodos de gráficos, incluidas las comunes y
aquellas específicas de cada tipo de nodo.
Tabla 96. Propiedades comunes de nodos de gráficos
Propiedades comunes de nodos
de gráficos Tipo de datos Descripción de la propiedad
título cadena Especifica el título. Ejemplo: "Esto es un título".
caption cadena Especifica el pie. Por ejemplo: "Esto es un pie".
output_mode Screen Determina si el resultado del nodo de gráficos se
File muestra o si se guarda en un archivo.
output_format BMP Especifica el tipo de resultado. El tipo exacto de
JPEG resultado permitido para cada nodo varía.
PNG
HTML
output (.cou)
full_filename cadena Especifica la ruta de destino y el nombre de archivo
del resultado generado por el nodo de gráficos.
use_graph_size flag Controla si el tamaño del gráfico se ha establecido de
manera explícita mediante las propiedades de ancho y
altura a continuación. Afecta solamente a los gráficos
que tienen salida a pantalla. No disponible para el
nodo Distribución.
graph_width número Cuando use_graph_size es True, establece el ancho
del gráfico en píxeles.
graph_height número Cuando use_graph_size es True, establece la altura
del gráfico en píxeles.

Desactivación de los campos opcionales

Los campos opcionales, como un campo de superposición para gráficos, se pueden desactivar
estableciendo el valor de la propiedad en "" (cadena vacía), tal y como se muestra en el siguiente
ejemplo:
[Link]("color_field", "")

Especificación de colores

Los colores de los títulos, pies, fondos y etiquetas se pueden especificar mediante las cadenas
hexadecimales que comiencen con el símbolo almohadilla (#). Por ejemplo, para establecer el fondo del
gráfico en cielo azul, debe utilizar la siguiente instrucción:
[Link]("graph_background", "#87CEEB")

Aquí, los dos primeros dígitos, 87, especifican el contenido rojo, los dos del medio, CE, especifican el
contenido verde y los dos últimos, EB, el contenido azul. Cada dígito puede tomar un valor del rango 0-9
o A-F. Juntos, estos valores pueden especificar red-green-blue, o RGB o color.

163
Nota: Al especificar colores en RVA, puede utilizar el selector de campos en la interfaz de usuario para
determinar el código de color correcto. Basta con colocarse sobre el color para ver un texto con la
información deseada.

Propiedades de collectionnode
El nodo Colección muestra la distribución de valores de un campo numérico relativo a los
valores de otro. (Crea gráficos parecidos a los histogramas.) Es útil para ilustrar una variable
o un campo cuyos valores cambian con el tiempo. Con los gráficos 3D también puede incluir
un eje simbólico que muestra las distribuciones por categoría.

Ejemplo
node = [Link]("collection", "My node")
# Pestaña "Gráfico"
[Link]("three_D", True)
[Link]("collect_field", "Drug")
[Link]("over_field", "Age")
[Link]("by_field", "BP")
[Link]("operation", "Sum")
# Sección "Superponer"
[Link]("color_field", "Drug")
[Link]("panel_field", "Sex")
[Link]("animation_field", "")
# pestaña "Opciones"
[Link]("range_mode", "Automatic")
[Link]("range_min", 1)
[Link]("range_max", 100)
[Link]("bins", "ByNumber")
[Link]("num_bins", 10)
[Link]("bin_width", 5)
Tabla 97. propiedades de collectionnode
Propiedad de collectionnode Tipo de datos Descripción de la propiedad
over_field campo
over_label_auto flag
over_label cadena
collect_field campo
collect_label_auto flag
collect_label cadena
three_D flag
by_field campo
by_label_auto flag
by_label cadena
operation Sum
Media
Mín
Máx
SDev
color_field cadena
panel_field cadena

164 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 97. propiedades de collectionnode (continuación)
Propiedad de collectionnode Tipo de datos Descripción de la propiedad
animation_field cadena
range_mode Automatic
UserDefined
range_min número
range_max número
bins ByNumber
ByWidth
num_bins número
bin_width número
use_grid flag
graph_background color Al principio de esta sección se describen los colores
de gráficos estándar.
page_background color Al principio de esta sección se describen los colores
de gráficos estándar.

Propiedades de distributionnode
El nodo Distribución muestra las instancias de valores simbólicos (categóricos), como el tipo
de hipoteca o el género. Normalmente, podría usar el nodo Distribución para mostrar los
desequilibrios de los datos, que pueden rectificarse mediante el nodo Equilibrar antes de crear
un modelo.

Ejemplo
node = [Link]("distribution", "My node")
# Pestaña "Gráfico"
[Link]("plot", "Flags")
[Link]("x_field", "Age")
[Link]("color_field", "Drug")
[Link]("normalize", True)
[Link]("sort_mode", "ByOccurence")
[Link]("use_proportional_scale", True)
Tabla 98. propiedades de distributionnode
Propiedades de distributionnode Tipo de datos Descripción de la propiedad
plot SelectedFields
Flags
x_field campo
color_field campo Campo de superposición.
normalize flag
sort_mode ByOccurence
Alphabetic
use_proportional_scale flag

Capítulo 12. Propiedades de nodos Gráfico 165


Propiedades de evaluationnode
El nodo Evaluación ayuda a evaluar y comparar modelos predictivos. El diagrama de
evaluación muestra la calidad con que los modelos predicen resultados particulares. Ordena
registros en función del valor predicho y la confianza de la predicción. Divide el registro en
grupos de igual tamaño (cuantiles) y, a continuación, representa el valor del criterio de
negocio de cada cuantil de mayor a menor. El gráfico muestra múltiples modelos como líneas
independientes.

Ejemplo
node = [Link]("evaluation", "My node")
# Pestaña "Gráfico"
[Link]("chart_type", "Gains")
[Link]("cumulative", False)
[Link]("field_detection_method", "Name")
[Link]("inc_baseline", True)
[Link]("n_tile", "Deciles")
[Link]("style", "Point")
[Link]("point_type", "Dot")
[Link]("use_fixed_cost", True)
[Link]("cost_value", 5.0)
[Link]("cost_field", "Na")
[Link]("use_fixed_revenue", True)
[Link]("revenue_value", 30.0)
[Link]("revenue_field", "Age")
[Link]("use_fixed_weight", True)
[Link]("weight_value", 2.0)
[Link]("weight_field", "K")
Tabla 99. propiedades de evaluationnode.
Propiedad de evaluationnode Tipo de datos Descripción de la propiedad
chart_type Gains
Response
Lift
Profit
ROI
ROC
inc_baseline tag
field_detection_method Metadata
Name
use_fixed_cost tag
cost_value number
cost_field cadena
use_fixed_revenue tag
revenue_value number
revenue_field cadena
use_fixed_weight tag
weight_value number
weight_field campo

166 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 99. propiedades de evaluationnode (continuación).
Propiedad de evaluationnode Tipo de datos Descripción de la propiedad
n_tile Quartiles
Quintles
Deciles
Vingtiles
Percentiles
1000-tiles
cumulative tag
style Line
Point
point_type Rectángulo
Dot
Triangle
Hexagon
Plus
Pentagon
Star
BowTie
HorizontalDash
VerticalDash
IronCross
Factory
House
Cathedral
OnionDome
ConcaveTriangle
OblateGlobe
CatEye
FourSidedPillow
RoundRectangle
Fan
export_data flag
data_filename cadena
delimiter cadena
new_line flag
inc_field_names flag
inc_best_line tag
inc_business_rule tag
business_rule_condition cadena
plot_score_fields tag
score_fields [campo1 ... campoN]
target_field campo
use_hit_condition tag
hit_condition cadena
use_score_expression tag
score_expression cadena
caption_auto tag

Capítulo 12. Propiedades de nodos Gráfico 167


Propiedades de graphboardnode
El nodo Tablero ofrece muchos tipos diferentes de gráficos en un único nodo. Con este nodo
puede seleccionar los campos de datos que desee explorar y seleccionar un gráfico de los
disponibles para los datos seleccionados. El nodo filtra automáticamente cualquier tipo de
gráfico que no sea compatible con las selecciones de campo.

Nota: Si establece una propiedad que no es válida para el tipo de gráfico (por ejemplo, si especifica
y_field para un histograma), se ignora dicha propiedad.

Nota: En la IU, en la pestaña Detallado de muchos tipos de gráfico distintos, hay un campo Resumen;
los scripts no soportan dicho campo en la actualidad.

Ejemplo
node = [Link]("graphboard", "My node")
[Link]("graph_type", "Line")
[Link]("x_field", "K")
[Link]("y_field", "Na")

168 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 100. Propiedades de graphboardnode
Propiedades de
graphboard Tipo de datos Descripción de la propiedad
graph_type 2DDotplot Identifica el tipo de gráfico.
3DArea
3DBar
3DDensity
3DHistogram
3DPie
3DScatterplot
Área
ArrowMap
Bar
BarCounts
BarCountsMap
BarMap
BinnedScatter
Diagramas de caja
Bubble
ChoroplethMeans
ChoroplethMedians
ChoroplethSums
ChoroplethValues
ChoroplethCounts
CoordinateMap
CoordinateChoroplethMeans
CoordinateChoroplethMedians
CoordinateChoroplethSums
CoordinateChoroplethValues
CoordinateChoroplethCounts
Dotplot
Heatmap
HexBinScatter
Histograma
Line
LineChartMap
LineOverlayMap
Parallel
Path
Pie
PieCountMap
PieCounts
PieMap
PointOverlayMap
PolygonOverlayMap
Ribbon
Scatterplot
SPLOM
Surface
x_field campo Especifica una etiqueta personalizada
para el eje x. Disponible solamente para
etiquetas.
y_field campo Especifica una etiqueta personalizada
para el eje y. Disponible solamente para
etiquetas.
z_field campo Se utiliza en algunos gráficos 3D.
color_field campo Se utiliza en mapas de calor.

Capítulo 12. Propiedades de nodos Gráfico 169


Tabla 100. Propiedades de graphboardnode (continuación)
Propiedades de
graphboard Tipo de datos Descripción de la propiedad
size_field campo Se utiliza en gráficos de burbujas.
categories_field campo
values_field campo
rows_field campo
columns_field campo
campos campo
start_longitude_field campo Se utiliza con flechas en un mapa de
referencia.
end_longitude_field campo
start_latitude_field campo
end_latitude_field campo
data_key_field campo Se utiliza en diversos mapas.
panelrow_field cadena
panelcol_field cadena
animation_field cadena
longitude_field campo Se utiliza en mapas de coordenadas.
latitude_field campo
map_color_field campo

Propiedades de histogramnode
El nodo Histograma muestra las instancias de valores de los campos numéricos. Se suele
utilizar para explorar los datos antes de las manipulaciones y la generación de modelos. Al
igual que con el nodo Distribución, con frecuencia el nodo Histograma detecta desequilibrios
en los datos.

Ejemplo
node = [Link]("histogram", "My node")
# Pestaña "Gráfico"
[Link]("field", "Drug")
[Link]("color_field", "Drug")
[Link]("panel_field", "Sex")
[Link]("animation_field", "")
# pestaña "Opciones"
[Link]("range_mode", "Automatic")
[Link]("range_min", 1.0)
[Link]("range_max", 100.0)
[Link]("num_bins", 10)
[Link]("bin_width", 10)
[Link]("normalize", True)
[Link]("separate_bands", False)
Tabla 101. propiedades de histogramnode
Propiedad de histogramnode Tipo de datos Descripción de la propiedad
field campo

170 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 101. propiedades de histogramnode (continuación)
Propiedad de histogramnode Tipo de datos Descripción de la propiedad
color_field campo
panel_field campo
animation_field campo
range_mode Automatic
UserDefined
range_min número
range_max número
bins ByNumber
ByWidth
num_bins número
bin_width número
normalize flag
separate_bands flag
x_label_auto flag
x_label cadena
y_label_auto flag
y_label cadena
use_grid flag
graph_background color Al principio de esta sección se describen los colores
de gráficos estándar.
page_background color Al principio de esta sección se describen los colores
de gráficos estándar.
normal_curve flag Indica si se debe mostrar la curva de distribución
normal en los resultados.

Propiedades de mapvisualization
El nodo Visualización de mapas puede aceptar varias conexiones de entrada y visualizar
datos geoespaciales en un mapa como una serie de capas. Cada capa es un único campo
geoespacial; por ejemplo, la capa base podría ser el mapa de un país, y por encima puede
tener una capa de carreteras, una capa de ríos y una capa de ciudades.

Tabla 102. Propiedades de mapvisualization


Propiedades de mapvisualization Tipo de datos Descripción de la propiedad
tag cadena Establece el nombre de la etiqueta para la
entrada. La etiqueta predeterminada es un
número basado en el orden en el que las
entradas estaban conectadas al nodo (la primera
etiqueta de conexión es 1, la segunda etiqueta de
conexión es 2, etc.

Capítulo 12. Propiedades de nodos Gráfico 171


Tabla 102. Propiedades de mapvisualization (continuación)
Propiedades de mapvisualization Tipo de datos Descripción de la propiedad
layer_field campo Selecciona qué geocampo se muestra del
conjunto de datos como una capa en el mapa. La
selección predeterminada se basa en el orden de
clasificación siguiente:
v Primero - Punto
v Serie lineal
v Polígono
v Multipunto
v Serie multilínea
v Último - Multipolígono

Si existen dos campos con el mismo tipo de


medida, de forma predeterminada, se
seleccionará el primer campo alfabéticamente
(por nombre).
color_type booleano Especifica si se va a aplicar un color estándar a
todas las características del geocampo, o un
campo de superposición que colorea las
características basándose en valores de otro
campo del conjunto de datos. Los valores
posibles son standard u overlay. El valor
predeterminado es standard.
color cadena Si standard está seleccionado para color_type, el
desplegable contiene la misma paleta de colores
que el orden de colores de la categoría de gráfico
en la pestaña Visualización de opciones de
usuario.

El valor predeterminado es el color de categoría


de gráfico 1.
color_field campo Si overlay está seleccionado para color_type, el
desplegable contiene todos los campos del
mismo conjunto de datos que el geocampo
seleccionado como la capa.
symbol_type booleano Especifica si se va a aplicar un símbolo estándar
a todos los registro del geocampo, o un símbolo
de superposición que cambie el icono de símbolo
para los puntos basándose en los valores de otro
campo del conjunto de datos. Los valores
posibles son standard u overlay. El valor
predeterminado es standard.
symbol cadena Si standard está seleccionado para symbol_type,
el desplegable contiene una selección de
símbolos que se puede utilizar para mostrar
puntos en el mapa.
symbol_field campo Si overlay está seleccionado para symbol_type, el
desplegable contiene todos los campos
nominales, ordinales o categóricos del mismo
conjunto de datos como el geocampo
seleccionado como la capa.

172 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 102. Propiedades de mapvisualization (continuación)
Propiedades de mapvisualization Tipo de datos Descripción de la propiedad
size_type booleano Especifica si se va a aplicar un tamaño estándar a
todos los registros del geocampo, o un tamaño
de superposición que cambia el tamaño del icono
de símbolo o el grosor de la línea basándose en
valores de otro campo del conjunto de datos. Los
valores posibles son standard u overlay. El valor
predeterminado es standard.
tamaño cadena Si standard está seleccionado para size_type,
para point o multipoint, el desplegable contiene
una selección de tamaños para el símbolo
seleccionado. Para linestring o
multilinestring, el desplegable contiene una
selección del grosor de línea.
size_field campo Si overlay está seleccionado para size_type, el
desplegable contiene todos los campos del
mismo conjunto de datos que el geocampo
seleccionado como la capa.
transp_type booleano Especifica si se va a aplicar una transparencia
estándar a todos los registros del geocampo, o
una transferencia de superposición que cambia el
nivel de transparencia para el símbolo, línea o
polígono basándose en valores de otro campo del
conjunto de datos. Los valores posibles son
standard u overlay. El valor predeterminado es
standard.
transp entero Si standard está seleccionado para transp_type,
el desplegable contiene una selección de niveles
de transparencia que empieza en 0% (opaco) y va
aumentando hasta 100% (transparente) en
incrementos del 10 %. Establece la transparencia
de puntos, líneas o polígonos en el mapa.

Si overlay está seleccionado para size_type, el


desplegable contiene todos los campos del
mismo conjunto de datos que el geocampo
seleccionado como la capa.

Para points, multipoints, linestrings y


multilinestrings, polygons y multipolygons
(que están en la capa inferior), el valor
predeterminado es 0%. Para polygons y
multipolygons que no están en la capa inferior, el
valor predeterminado es 50% (para evitar
oscurecer las capas entre estos polígonos.)
transp_field campo Si overlay está seleccionado para transp_type, el
desplegable contiene todos los campos del
mismo conjunto de datos que el geocampo
seleccionado como la capa.
data_label_field campo Especifica el campo para utilizar como etiquetas
de datos en el mapa. Por ejemplo, si la capa
donde se aplica este valor es un capa de
polígono, la etiqueta de datos podría ser el
campo name – que contiene el nombre de cada
polígono. Así si aquí se selecciona el campo name,
se mostrarán estos nombres en el mapa.

Capítulo 12. Propiedades de nodos Gráfico 173


Tabla 102. Propiedades de mapvisualization (continuación)
Propiedades de mapvisualization Tipo de datos Descripción de la propiedad
use_hex_binning booleano Habilita la agrupación hexadecimal y habilita
todos los desplegables de agregación. Este valor
está desactivado de forma predeterminada.
color_aggregation y cadena Si selecciona un campo de superposición para
transp_aggregation una capa de puntos que utiliza la agrupación
hexadecimal, todos los valores para dicho campo
se deben agregar para todos los puntos del
hexágono. Por lo tanto, debe especificar una
función de agregación para cualquier otro campo
de superposición que desea aplicar al mapa.

Las funciones de agregación disponibles son:

Continuas (almacenamiento de Real o Entero)


v Suma
v Media.
v Mín
v Máx
v Mediana
v Primer cuartil
v Tercer cuartil

Continuas (almacenamiento de Hora, Fecha o


Indicación de fecha y hora):
v Media.
v Mín
v Máx

Nominal/Categórico:
v Modo
v Mín
v Máx

Distintivo:
v True si es verdadero
v False si es falso
custom_storage cadena Establece el tipo de almacenamiento general del
campo. El valor predeterminado es List. Si se ha
especificado List, los controles
custom_value_storage y list_depth siguientes
están inhabilitados.
custom_value_storage cadena Establece los tipos de almacenamiento de los
elementos de la lista, en lugar de los campos
como un todo. EL valor predeterminado es Real.

174 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 102. Propiedades de mapvisualization (continuación)
Propiedades de mapvisualization Tipo de datos Descripción de la propiedad
list_depth entero Establece la profundidad del campo de lista. Su
profundidad necesaria depende del tipo de
geocampo, siguiendo estos criterios:
v Punto - 0
v Serie lineal - 1
v Polígono - 2
v Multipunto - 1
v Multi serie lineal - 2
v Multipolígono - 3

Debe conocer el tipo de campo geoespacial que


está volviendo a convertir a una lista y la
profundidad necesaria para dicho tipo de campo.
Si se ha establecido de forma incorrecta, el
campo no se puede utilizar.

El valor predeterminado es 0, el valor mínimo es


0, y el valor máximo es 10.

Propiedades de multiplotnode
El nodo G. múltiple crea un gráfico que muestra varios campos Y sobre un campo X único.
Los campos Y están representados como líneas coloreadas; cada uno equivale a un nodo
Gráfico con el estilo establecido en Línea y el Modo para X establecido en Ordenar. Los
gráficos múltiples son útiles cuando quiere explorar la fluctuación de varias variables a través
del tiempo.

Ejemplo
node = [Link]("multiplot", "My node")
# Pestaña "Gráfico"
[Link]("x_field", "Age")
[Link]("y_fields", ["Drug", "BP"])
[Link]("panel_field", "Sex")
# Sección "Superponer"
[Link]("animation_field", "")
[Link]("tooltip", "test")
[Link]("normalize", True)
[Link]("use_overlay_expr", False)
[Link]("overlay_expression", "test")
[Link]("records_limit", 500)
[Link]("if_over_limit", "PlotSample")
Tabla 103. propiedades de multiplotnode
Propiedad de multiplotnode Tipo de datos Descripción de la propiedad
x_field campo
y_fields lista
panel_field campo
animation_field campo
normalize flag
use_overlay_expr flag

Capítulo 12. Propiedades de nodos Gráfico 175


Tabla 103. propiedades de multiplotnode (continuación)
Propiedad de multiplotnode Tipo de datos Descripción de la propiedad
overlay_expression cadena
records_limit número
if_over_limit PlotBins
PlotSample
PlotAll
x_label_auto flag
x_label cadena
y_label_auto flag
y_label cadena
use_grid flag
graph_background color Al principio de esta sección se describen los colores
de gráficos estándar.
page_background color Al principio de esta sección se describen los colores
de gráficos estándar.

Propiedades de plotnode
El nodo Gráfico muestra la relación entre los campos numéricos. Puede crear un gráfico
mediante puntos (un diagrama de dispersión) o líneas.

Ejemplo
node = [Link]("plot", "My node")
# Pestaña "Gráfico"
[Link]("three_D", True)
[Link]("x_field", "BP")
[Link]("y_field", "Cholesterol")
[Link]("z_field", "Drug")
# Sección "Superponer"
[Link]("color_field", "Drug")
[Link]("size_field", "Age")
[Link]("shape_field", "")
[Link]("panel_field", "Sex")
[Link]("animation_field", "BP")
[Link]("transp_field", "")
[Link]("style", "Point")
# Pestaña "Resultados"
[Link]("output_mode", "File")
[Link]("output_format", "JPEG")
[Link]("full_filename", "C:/temp/graph_output/plot_output.jpeg")
Tabla 104. propiedades de plotnode.
Propiedad de plotnode Tipo de datos Descripción de la propiedad
x_field campo Especifica una etiqueta personalizada para el eje x.
Disponible solamente para etiquetas.
y_field campo Especifica una etiqueta personalizada para el eje y.
Disponible solamente para etiquetas.

176 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 104. propiedades de plotnode (continuación).
Propiedad de plotnode Tipo de datos Descripción de la propiedad
three_D tag Especifica una etiqueta personalizada para el eje y.
Disponible sólo para etiquetas en gráficos 3D.
z_field campo
color_field campo Campo de superposición.
size_field campo
shape_field campo
panel_field campo Especifica un campo de marcas o nominal para
crear un gráfico independiente para cada categoría.
Los gráficos aparecerán juntos en una ventana de
resultados.
animation_field campo Especifica un campo de marcas o nominal para
ilustrar las categorías de los valores de datos
creando una serie de gráficos secuenciados
mediante la animación.
transp_field campo Especifica un campo para ilustrar las categorías de
los valores de datos utilizando un nivel de
transparencia distinto para cada categoría. No
disponible para gráficos de líneas.
overlay_type Ninguno Determina si se muestra una función superpuesta o
Smoother suavizado LOESS.
Función
overlay_expression cadena Especifica la expresión utilizada cuando
overlay_type se establece en Function.
style Point
Line
point_type Rectángulo
Dot
Triangle
Hexagon
Plus
Pentagon
Star
BowTie
HorizontalDash
VerticalDash
IronCross
Factory
House
Cathedral
OnionDome
ConcaveTriangle
OblateGlobe
CatEye
FourSidedPillow
RoundRectangle
Fan
x_mode Ordenar
Overlay
AsRead
x_range_mode Automatic
UserDefined
x_range_min number

Capítulo 12. Propiedades de nodos Gráfico 177


Tabla 104. propiedades de plotnode (continuación).
Propiedad de plotnode Tipo de datos Descripción de la propiedad
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 tag
records_limit number
if_over_limit PlotBins
PlotSample
PlotAll
x_label_auto tag
x_label cadena
y_label_auto tag
y_label cadena
z_label_auto tag
z_label cadena
use_grid tag
graph_background color Al principio de esta sección se describen los colores
de gráficos estándar.
page_background color Al principio de esta sección se describen los colores
de gráficos estándar.
use_overlay_expr tag Desaprobado en favor de overlay_type.

Propiedades de timeplotnode
El nodo Gráfico de tiempo muestra uno o más conjuntos de datos de series temporales.
Normalmente, primero se utilizaría un nodo Intervalos de tiempo para crear un campo
EtiquetaTiempo, que se utilizaría para etiquetar el eje x.

Ejemplo
node = [Link]("timeplot", "My node")
[Link]("y_fields", ["sales", "men", "women"])
[Link]("panel", True)
[Link]("normalize", True)
[Link]("line", True)
[Link]("smoother", True)
[Link]("use_records_limit", True)
[Link]("records_limit", 2000)
# Appearance settings
[Link]("symbol_size", 2.0)

178 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 105. propiedades de timeplotnode.
Propiedad de timeplotnode Tipo de datos Descripción de la propiedad
plot_series Series
Models
use_custom_x_field tag
x_field campo
y_fields lista
panel tag
normalize tag
line tag
points tag
point_type Rectángulo
Dot
Triangle
Hexagon
Plus
Pentagon
Star
BowTie
HorizontalDash
VerticalDash
IronCross
Factory
House
Cathedral
OnionDome
ConcaveTriangle
OblateGlobe
CatEye
FourSidedPillow
RoundRectangle
Fan
suavizado tag Puede añadir suavizados al gráfico únicamente si
establece panel en True.
use_records_limit tag
records_limit entero
symbol_size number Especifica el tamaño del símbolo.
panel_layout Horizontal
Vertical

Propiedades eplotnode
El nodo Gráfico electrónico (Beta) muestra la relación entre campos numéricos. Es similar al
nodo Gráfico, pero sus opciones difieren y su salida utiliza una nueva interfaz de gráficos
específica a este nodo. Utilice el nodo de nivel beta para probar las nuevas características de
realización de gráficos.

Capítulo 12. Propiedades de nodos Gráfico 179


Tabla 106. propiedades eplotnode
Propiedades eplotnode Tipo de datos Descripción de la propiedad
x_field cadena Especifique el campo para mostrar en el eje X
horizontal.
y_field cadena Especifique el campo para mostrar en el eje Y
vertical.
color_field cadena Especifique el campo para utilizar para el
preformato de mapa de colores en la salida, si
se desea.
size_field cadena Especifique el campo para utilizar para el
preformato de mapa de tamaño en la salida, si
se desea.
shape_field cadena Especifique el campo para utilizar para el
preformato de mapa de formas en la salida, si
se desea.
interested_fields cadena Especifique los campos que desea incluir en la
salida.
records_limit entero Especifique un número para el número
máximo de registros para trazar en la salida.
2000 es el valor predeterminado.
if_over_limit Booleana Especifique si se va a utilizar la opción Muestra
o la opción Utilizar todos los datos si se
supera el valor de records_limit. Muestra es el
valor predeterminado, y muestra de forma
aleatoria los datos hasta que alcanza el valor
de records_limit. Si especifica Utilizar todos
los datos para ignorar el valor de
records_limit y traza todos los puntos de
datos, tenga en cuenta que esto podría
degradar el rendimiento de forma significativa.

Propiedades tsnenode

t-SNE (vecino estocástico con t distribuida incorporado) es una herramienta para visualizar
datos de alta dimensión. Convierte afinidades de puntos de datos a probabilidades. Este nodo
t-SNE en SPSS Modeler se implementa en Python y requiere la biblioteca scikit-learn©
Python.

Tabla 107. propiedades tsnenode


Propiedades tsnenode Tipo de datos Descripción de la propiedad
mode_type serie Especifique la modalidad simple o experto.
n_components serie Dimensión del espacio incorporado (2D o 3D).
Especifique 2 o 3. El valor predeterminado es
2.
method serie Especifique barnes_hut o exact. El valor
predeterminado es barnes_hut.
init serie Inicialización de la incorporación. Especifique
random o pca. El valor predeterminado es
random.

180 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 107. propiedades tsnenode (continuación)
Propiedades tsnenode Tipo de datos Descripción de la propiedad
target_field serie El nombre del campo objetivo. Será un mapa
de colores en el gráfico de salida. El gráfico
utilizará un color si no se especifica ningún
campo objetivo.
perplexity float La perplejidad está relacionada con el número
de los vecinos más cercanos utilizados en otros
algoritmos de aprendizaje de colector.
Normalmente, los conjuntos de datos más
grandes requieren una mayor perplejidad.
Considere seleccionar un valor entre 5 y 50. El
valor predeterminado es 30.
early_exaggeration float Controla cómo de ajustados están los clústeres
naturales del espacio original en el espacio
incorporado, y cuánto espacio habrá entre
ellos. El valor predeterminado es 12.0.
learning_rate float El valor predeterminado es 200.
n_iter integer Número máximo de iteraciones para la
optimización. Se establece en 250, como
mínimo. El valor predeterminado es 1000.
angle float El tamaño angular del nodo distante como se
ha medido a partir de un punto. Especifique
un valor dentro del rango de 0-1. El valor
predeterminado es 0,5.
enable_random_seed Booleana Establezca el valor en true para habilitar el
parámetro random_seed. El valor
predeterminado es false.
random_seed integer La semilla de aleatorización para utilizar. El
valor predeterminado es Ninguno.
n_iter_without_progress integer Máximo de iteraciones sin progreso. El valor
predeterminado es 300.
min_grad_norm serie Si la norma gradiente está por debajo de este
umbral, la optimización se detendrá. El valor
predeterminado es 1.0E-7. Los valores posibles
son:
v 1.0E-1
v 1.0E-2
v 1.0E-3
v 1.0E-4
v 1.0E-5
v 1.0E-6
v 1.0E-7
v 1.0E-8
isGridSearch Booleana Se establece en true para realizar t-SNE con
varias perplejidades distintas. El valor
predeterminado es false.
output_Rename Booleana Especifique true si desea proporcionar un
nombre personalizado, o false para
denominar la salida automáticamente. El valor
predeterminado es false.

Capítulo 12. Propiedades de nodos Gráfico 181


Tabla 107. propiedades tsnenode (continuación)
Propiedades tsnenode Tipo de datos Descripción de la propiedad
output_to serie Especifique Screen o Output. El valor
predeterminado es Screen.
full_filename serie Especifique el nombre de archivo de salida.
output_file_type serie Formato de archivo de salida. Especifique HTML
u Objeto de salida. El valor predeterminado
es HTML.

Propiedades de webnode
El nodo Malla muestra la fuerza de las relaciones entre los valores de dos o más campos
simbólicos (categóricos). El gráfico utiliza líneas de varios anchos para indicar la fuerza de la
conexión. Podría utilizar un nodo Malla, por ejemplo, para explorar las relaciones existentes
entre la compra de un conjunto de elementos en un sitio de comercio electrónico.

Ejemplo
node = [Link]("web", node "My ")
# Pestaña "Gráfico"
[Link]("use_directed_web", True)
[Link]("to_field", "Drug")
[Link]("fields", ["BP", "Cholesterol", "Sex", "Drug"])
[Link]("from_fields", ["BP", "Cholesterol", "Sex"])
[Link]("true_flags_only", False)
[Link]("line_values", "Absolute")
[Link]("strong_links_heavier", True)
# pestaña "Opciones"
[Link]("max_num_links", 300)
[Link]("links_above", 10)
[Link]("num_links", "ShowAll")
[Link]("discard_links_min", True)
[Link]("links_min_records", 5)
[Link]("discard_links_max", True)
[Link]("weak_below", 10)
[Link]("strong_above", 19)
[Link]("link_size_continuous", True)
[Link]("web_display", "Circular")
Tabla 108. propiedades de webnode
Propiedad de webnode Tipo de datos Descripción de la propiedad
use_directed_web flag
campos lista
to_field campo
from_fields lista
true_flags_only flag
line_values Absolute
OverallPct
PctLarger
PctSmaller
strong_links_heavier flag

182 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 108. propiedades de webnode (continuación)
Propiedad de webnode Tipo de datos Descripción de la propiedad
num_links ShowMaximum
ShowLinksAbove
ShowAll
max_num_links número
links_above número
discard_links_min flag
links_min_records número
discard_links_max flag
links_max_records número
weak_below número
strong_above número
link_size_continuous flag
web_display Circular
Red
Directed
cuadrícula
graph_background color Al principio de esta sección se describen los colores
de gráficos estándar.
symbol_size número Especifica el tamaño del símbolo.

Capítulo 12. Propiedades de nodos Gráfico 183


184 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python
Capítulo 13. Propiedades de nodos de modelado
Propiedades comunes de nodos de modelado
Las siguientes propiedades son comunes a algunos o todos los nodos de modelado. Las excepciones se
indican en la documentación de los nodos de modelado individuales según sea adecuado.
Tabla 109. Propiedades comunes de nodos de modelado
Propiedad Valores Descripción de la propiedad
custom_fields flag Si es verdadero, le permite especificar el
objetivo, la entrada y otros campos del
nodo actual. Si es falso, se utiliza la
configuración actual de un nodo Tipo
situado en un punto anterior de la ruta.
objetivo campo Especifica un único campo objetivo o varios
o campos objetivo dependiendo del tipo de
targets o modelo.
[field1 ... fieldN]
inputs [field1 ... fieldN] Campos de entrada o predictor utilizados
por el modelo.
partición campo
use_partitioned_data flag Si se ha definido un campo de partición,
esta opción garantiza que sólo se utilizarán
los datos de la partición de entrenamiento
para la generación del modelo.
use_split_data flag
splits [campo1 ... campoN] Especifica el campo o campos para utilizar
en el modelado de divisiones. Sólo
funciona si use_split_data está establecido
como True.
use_frequency flag Los modelos específicos utilizan campos de
ponderación y frecuencia como se indica en
cada tipo de modelo.
frequency_field campo
use_weight flag
weight_field campo
use_model_name flag
model_name cadena Nombre personalizado para nuevo modelo.
mode Simple
Valores avanzados

propiedades de anomalydetectionnode
El nodo Detección de anomalías identifica casos extraños, o valores atípicos, que no se ajustan
a patrones de datos "normales". Con este nodo, es posible identificar valores atípicos aunque
no se ajusten a ningún patrón previamente conocido o no se realice una búsqueda exacta.

185
Ejemplo
node = [Link]("anomalydetection", "My node")
[Link]("anomaly_method", "PerRecords")
[Link]("percent_records", 95)
[Link]("mode", "Expert")
[Link]("peer_group_num_auto", True)
[Link]("min_num_peer_groups", 3)
[Link]("max_num_peer_groups", 10)
Tabla 110. propiedades de anomalydetectionnode
Propiedades de anomalydetectionnode Valores Descripción de la propiedad
inputs [campo1 ... campoN] Los modelos de detección de anomalías
criban registros basándose en los campos
de entrada especificados. No utilizan un
campo objetivo. Los campos de
ponderación y frecuencia tampoco se
usan. Consulte el tema “Propiedades
comunes de nodos de modelado” en la
página 185 para obtener más
información.
mode Expert
Simple
anomaly_method IndexLevel Especifica el método utilizado para
PerRecords determinar el valor de corte para marcar
NumRecords los registros como anómalos.
index_level número Especifica el valor de corte mínimo con
el que se van a marcar anomalías.
percent_records número Establece el umbral para marcar registros
de acuerdo al porcentaje de registros en
los datos de entrenamiento.
num_records número Establece el umbral para marcar registros
de acuerdo al número de registros en los
datos de entrenamiento.
num_fields entero El número de campos de los que se va a
informar por cada registro anómalo.
impute_missing_values flag
adjustment_coeff número Valor que se usa para equilibrar la
ponderación relativa asignada a los
campos categóricos y continuos al
calcular la distancia.
peer_group_num_auto flag Calcula automáticamente el número de
grupos de homólogos.
min_num_peer_groups entero Especifica el número mínimo de grupos
de homólogos empleado cuando
peer_group_num_auto se establece en
True.
max_num_per_groups entero Especifica el número máximo de grupos
de homólogos.
num_peer_groups entero Especifica el número de grupos de
homólogos empleado cuando
peer_group_num_auto se establece en
False.

186 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 110. propiedades de anomalydetectionnode (continuación)
Propiedades de anomalydetectionnode Valores Descripción de la propiedad
noise_level número Determina el modo en que se tratan los
valores atípicos durante el clúster.
Especifique un valor entre 0 y 0,5.
noise_ratio número Especifica la parte de memoria asignada
al componente que debe usarse para el
almacenamiento en búfer de ruido.
Especifique un valor entre 0 y 0,5.

propiedades de apriorinode
El nodo Apriori extrae un conjunto de reglas de los datos y destaca aquellas reglas con un
mayor contenido de información. Apriori ofrece cinco métodos diferentes para la selección de
reglas y utiliza un sofisticado esquema de indización para procesar eficientemente grandes
conjuntos de datos. En los problemas de mucho volumen, Apriori se entrena más
rápidamente, no tiene un límite arbitrario para el número de reglas que puede retener y
puede gestionar reglas que tengan hasta 32 precondiciones. Apriori requiere que todos los
campos de entrada y salida sean categóricos, pero ofrece un mejor rendimiento ya que está
optimizado para este tipo de datos.

Ejemplo
node = [Link]("apriori", "My node")
# "Fields" tab
[Link]("custom_fields", True)
[Link]("partition", "Test")
# Para no transaccionales
[Link]("use_transactional_data", False)
[Link]("consequents", ["Age"])
[Link]("antecedents", ["BP", "Cholesterol", "Drug"])
# Para transaccionales
[Link]("use_transactional_data", True)
[Link]("id_field", "Age")
[Link]("contiguous", True)
[Link]("content_field", "Drug")
# "Model" tab
[Link]("use_model_name", False)
[Link]("model_name", "Apriori_bp_choles_drug")
[Link]("min_supp", 7.0)
[Link]("min_conf", 30.0)
[Link]("max_antecedents", 7)
[Link]("true_flags", False)
[Link]("optimize", "Memory")
# "Expert" tab
[Link]("mode", "Expert")
[Link]("evaluation", "ConfidenceRatio")
[Link]("lower_bound", 7)

Capítulo 13. Propiedades de nodos de modelado 187


Tabla 111. propiedades de apriorinode
Propiedades de apriorinode Valores Descripción de la propiedad
consequents campo Los modelos Apriori utilizan Consecuentes y
Antecedentes en lugar de los campos estándar
objetivo y de entrada. Los campos de
ponderación y frecuencia no se usan. Consulte
el tema “Propiedades comunes de nodos de
modelado” en la página 185 para obtener más
información.
antecedents [field1 ... fieldN]
min_supp número
min_conf número
max_antecedents número
true_flags flag
optimize Speed
Memory
use_transactional_data flag
contiguous flag
id_field cadena
content_field cadena
mode Simple
Valores avanzados
evaluación RuleConfidence
DifferenceToPrior
ConfidenceRatio
InformationDifference
NormalizedChiSquare
lower_bound número
optimize Speed Se utiliza para especificar si la generación del
Memory modelo se debe optimizar para la velocidad o
la memoria.

propiedades associationrulesnode
El nodo Reglas de asociación es similar al nodo Apriori; sin embargo, a diferencia de Apriori,
el nodo Reglas de asociación puede procesar datos de lista. Además, el nodo Reglas de
asociación puede utilizarse con IBM SPSS Analytic Server para procesar datos de gran tamaño
y aprovechar el proceso en paralelo de mayor velocidad.

Tabla 112. propiedades associationrulesnode


Propiedades
associationrulesnode Tipo de datos Descripción de la propiedad
predicciones campo Los campos en esta lista sólo pueden aparecer
como un predictor de una regla
condiciones [field1...fieldN] Los campos en esta lista sólo pueden aparecer
como una condición de una regla
max_rule_conditions entero El número máximo de condiciones que pueden
incluirse en una sola regla. Mínimo 1, máximo 9.

188 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 112. propiedades associationrulesnode (continuación)
Propiedades
associationrulesnode Tipo de datos Descripción de la propiedad
max_rule_predictions entero El número máximo de predicciones que pueden
incluirse en una sola regla. Mínimo 1, máximo 5.
max_num_rules entero El número máximo de reglas que pueden
considerarse como parte de la generación de
regla. Mínimo 1, máximo 10.000.
rule_criterion_top_n Confianza El criterio de reglas que determina el valor por el
Rulesupport cual se eligen las reglas "N" superiores en el
Lift modelo.
Conditionsupport
Capacidad de despliegue
true_flags Booleana Establecer en Y determina que sólo se
considerarán los valores verdaderos para campos
de distintivo durante la generación de la regla.
rule_criterion Booleana Establecer en Y determina que los valores del
criterio de regla se utilizan para excluir reglas
durante la generación de modelos.
min_confidence número 0,1 a 100 - el valor de porcentaje para el nivel de
confianza mínimo necesario para una regla
producida por el modelo. Si el modelo genera
una regla con un nivel de confianza inferior al
valor especificado aquí, la regla se descarta.
min_rule_support número 0,1 a 100 - el valor de porcentaje para el soporte
de regla mínimo necesario para una regla
producida por el modelo. Si el modelo genera
una regla con un nivel de soporte de regla
inferior al valor especificado, la regla se descarta.
min_condition_support número 0,1 a 100 - el valor de porcentaje para el soporte
de condición mínima necesaria para una regla
producida por el modelo. Si el modelo genera
una regla con un nivel de soporte de condición
inferior al valor especificado, la regla se descarta.
min_lift entero 1 a 10 – representa la elevación mínima necesaria
para una regla producida por el modelo. Si el
modelo genera una regla con un nivel de
elevación inferior al valor especificado, la regla
se descarta.
exclude_rules Booleana Se utiliza para seleccionar una lista de campos
relacionados a partir de los cuales no desea que
el modelo cree reglas.

Ejemplo: set :gsarsnode.exclude_rules =


[[[field1,field2, field3]],[[field4, field5]]] - donde
cada lista de campos separados por [] es una fila
en la tabla.
num_bins entero Establezca el número de intervalos automáticos
en los que se agrupan los campos continuos.
Mínimo 2, máximo 10.

Capítulo 13. Propiedades de nodos de modelado 189


Tabla 112. propiedades associationrulesnode (continuación)
Propiedades
associationrulesnode Tipo de datos Descripción de la propiedad
max_list_length entero Se aplica a cualquier campo de lista del que no
se conoce la longitud máxima. Los elementos de
la lista hasta el número especificado aquí se
incluyen en la generación de modelos; los
elementos adicionales se descartan. Mínimo 1,
máximo 100.
output_confidence Booleana
output_rule_support Booleana
output_lift Booleana
output_condition_support Booleana
output_deployability Booleana
rules_to_display upto El número máximo de reglas a visualizar en las
all tablas de salida.
display_upto entero Si upto se establece en rules_to_display,
establezca el número de reglas a visualizar en las
tablas de salida. El mínimo es 1.
field_transformations Booleana
records_summary Booleana
rule_statistics Booleana
most_frequent_values Booleana
most_frequent_fields Booleana
word_cloud Booleana
word_cloud_sort Confianza
Rulesupport
Lift
Conditionsupport
Capacidad de despliegue
word_cloud_display entero Mínimo 1, máximo 20.
max_predictions entero El número máximo de reglas que se pueden
aplicar a cada entrada de la puntuación.
criterio Confianza Seleccione la medida utilizada para determinar la
Rulesupport fuerza de las reglas.
Lift
Conditionsupport
Capacidad de despliegue
allow_repeats Booleana Determine si las reglas con la misma predicción
se incluyen en la puntuación.
check_input NoPredictions
Predictions
NoCheck

190 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


propiedades de autoclassifiernode
El nodo Clasificador automático crea y compara varios modelos diferentes para obtener
resultados binarios (sí o no, abandono o no de clientes, etc.), lo que le permite seleccionar el
mejor enfoque para un análisis determinado. Son compatibles varios algoritmos de modelado,
por lo que es posible seleccionar los métodos que desee utilizar, las opciones específicas para
cada uno y los criterios para comparar los resultados. El nodo genera un conjunto de modelos
basado en las opciones especificadas y clasifica los mejores candidatos en función de los
criterios que especifique.

Ejemplo
node = [Link]("autoclassifier", "My node")
[Link]("ranking_measure", "Accuracy")
[Link]("ranking_dataset", "Training")
[Link]("enable_accuracy_limit", True)
[Link]("accuracy_limit", 0.9)
[Link]("calculate_variable_importance", True)
[Link]("use_costs", True)
[Link]("svm", False)
Tabla 113. propiedades de autoclassifiernode.
Propiedades de autoclassifiernode Valores Descripción de la propiedad
objetivo campo En objetivos de marca, el nodo
Clasificador binario requiere un único
campo objetivo y uno o más campos
de entrada. También se puede
especificar campos de ponderación y
frecuencia. Consulte el tema
“Propiedades comunes de nodos de
modelado” en la página 185 para
obtener más información.
ranking_measure Exactitud
Area_under_curve
Profit
Lift
Num_variables
ranking_dataset Entrenamiento
Test
number_of_models entero Número de modelos que se incluirán
en el nugget de modelo. Especifique
un entero entre 1 y 100.
calculate_variable_importance tag
enable_accuracy_limit tag
accuracy_limit entero Entero entre 0 y 100.
enable_ area_under_curve _limit tag
area_under_curve_limit number Número real entre 0,0 y 1,0.
enable_profit_limit tag
profit_limit number Entero mayor que 0.
enable_lift_limit tag
lift_limit number Número real mayor que 1,0.
enable_number_of_variables_limit tag

Capítulo 13. Propiedades de nodos de modelado 191


Tabla 113. propiedades de autoclassifiernode (continuación).
Propiedades de autoclassifiernode Valores Descripción de la propiedad
number_of_variables_limit number Entero mayor que 0.
use_fixed_cost tag
fixed_cost number Número real mayor que 0.0.
variable_cost campo
use_fixed_revenue tag
fixed_revenue number Número real mayor que 0.0.
variable_revenue campo
use_fixed_weight tag
fixed_weight number Número real mayor que 0,0
variable_weight campo
lift_percentile number Entero entre 0 y 100.
enable_model_build_time_limit tag
model_build_time_limit number Entero que indica el número máximo
de minutos que se puede tardar en
generar cada uno de los modelos.
enable_stop_after_time_limit tag
stop_after_time_limit number Número real que indica el número
máximo de horas que puede tardar
una ejecución del clasificador
automático.
enable_stop_after_valid_model_produced tag
use_costs tag
<algorithm> tag Activa o desactiva el uso de un
determinado algoritmo.
<algorithm>.<property> cadena Define un valor de propiedad para un
algoritmo específico. Consulte el tema
“Propiedades de ajustes de algoritmo”
para obtener más información.

Propiedades de ajustes de algoritmo


En el caso de los nodos Clasificador automático, Autonumérico y Agrupación en clústeres automática, las
propiedades de determinados algoritmos utilizados por el nodo se pueden establecer utilizando el
formato general:
[Link](<algoritmo>, <propiedad>, <valor>)

Por ejemplo:
[Link]("neuralnetwork", "method", "MultilayerPerceptron")

Los nombres de algoritmos del nodo Clasificador automático son cart, chaid, quest, c50, logreg,
decisionlist, bayesnet, discriminant, svm y knn.

Los nombres de algoritmos del nodo Autonumérico son cart, chaid, neuralnetwork, genlin, svm,
regression, linear y knn.

Los nombres de algoritmos del nodo Autoclúster son twostep, k-means y kohonen.

192 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Los nombres de las propiedades son los nombres estándar, según se han documentado para cada nodo de
algoritmo.

Las propiedades de algoritmos que contienen puntos u otros signos de puntuación deben encerrarse entre
comillas simples. Por ejemplo:
[Link]("logreg", "tolerance", "1.0E-5")

También es posible asignar varios valores a una propiedad. Por ejemplo:


[Link]("decisionlist", "search_direction", ["Up", "Down"])

Para activar o desactivar el uso de un determinado algoritmo:


[Link]("chaid", True)

Nota: En los casos en los que determinadas opciones de algoritmos no están disponibles en el nodo
Clasificador automático o cuando sólo se puede especificar un único valor, en lugar de un intervalo de
valores, se aplican los mismos límites que tienen los scripts cuando se accede al nodo de la manera
estándar.

propiedades de nodo de agrupación en clústeres automática


El nodo Agrupación en clústeres automática calcula y compara los modelos de agrupación en
clústeres que identifican grupos de registros con características similares. El nodo funciona de
la misma manera que otros nodos de modelado automático, permitiéndole experimentar con
múltiples combinaciones de opciones en una única pasada de modelado. Los modelos se
pueden comparar utilizando medidas básicas con las que se intenta filtrar y definir la utilidad
de los modelos de clúster y proporcionar una medida según la importancia de campos
concretos.

Ejemplo
node = [Link]("autocluster", "My node")
[Link]("ranking_measure", "Silhouette")
[Link]("ranking_dataset", "Training")
[Link]("enable_silhouette_limit", True)
[Link]("silhouette_limit", 5)
Tabla 114. propiedades de nodo de agrupación en clústeres automática
Propiedades de autoclusternode Valores Descripción de la propiedad
evaluación campo Nota: Solo nodo Agrupación en clústeres
automática. Identifica el campo cuyo valor
de importancia se calculará. Como
alternativa, se puede utilizar para
identificar la calidad con la que el clúster
diferencia el valor de este campo y, por lo
tanto; la calidad con la que el modelo
predecirá este campo.
ranking_measure Silhouette
Num_clusters
Size_smallest_cluster
Size_largest_cluster
Smallest_to_largest
Importance
ranking_dataset Entrenamiento
Prueba

Capítulo 13. Propiedades de nodos de modelado 193


Tabla 114. propiedades de nodo de agrupación en clústeres automática (continuación)
Propiedades de autoclusternode Valores Descripción de la propiedad
summary_limit entero Número de modelos que se incluirán en el
informe. Especifique un entero entre 1 y
100.
enable_silhouette_limit flag
silhouette_limit entero Entero entre 0 y 100.
enable_number_less_limit flag
number_less_limit número Número real entre 0,0 y 1,0.
enable_number_greater_limit flag
number_greater_limit número Entero mayor que 0.
enable_smallest_cluster_limit flag
smallest_cluster_units Percentage
Counts
smallest_cluster_limit_percentage número
smallest_cluster_limit_count entero Entero mayor que 0.
enable_largest_cluster_limit flag
largest_cluster_units Percentage
Counts
largest_cluster_limit_percentage número
largest_cluster_limit_count entero
enable_smallest_largest_limit flag
smallest_largest_limit número
enable_importance_limit flag
importance_limit_condition Greater_than
Less_than
importance_limit_greater_than número Entero entre 0 y 100.
importance_limit_less_than número Entero entre 0 y 100.
<algorithm> flag Activa o desactiva el uso de un
determinado algoritmo.
<algorithm>.<property> cadena Define un valor de propiedad para un
algoritmo específico. Consulte el tema
“Propiedades de ajustes de algoritmo” en la
página 192 para obtener más información.

propiedades de autonumericnode
El nodo Autonumérico calcula y compara modelos para resultados de rango numérico
continuo utilizando cierto número de métodos diferentes. El nodo funciona de la misma
manera que el nodo Clasificador automático, lo que le permite seleccionar los algoritmos que
desee utilizar y experimentar con varias combinaciones de opciones en una única pasada de
modelado. Los algoritmos admitidos incluyen redes neuronales, C&RT, CHAID, regresión
lineal, regresión lineal generalizada y máquinas de vectores de soporte (SVM). Los modelos se
pueden comparar basándose en la correlación, el error relativo o el número de variables
utilizado.

Ejemplo

194 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


node = [Link]("autonumeric", "My node")
[Link]("ranking_measure", "Correlation")
[Link]("ranking_dataset", "Training")
[Link]("enable_correlation_limit", True)
[Link]("correlation_limit", 0.8)
[Link]("calculate_variable_importance", True)
[Link]("neuralnetwork", True)
[Link]("chaid", False)
Tabla 115. propiedades de autonumericnode
Propiedades de autonumericnode Valores Descripción de la propiedad
custom_fields flag Si es verdadero, se utilizará la
configuración de campos personalizada en
lugar de la configuración del nodo Tipo.
target campo El nodo Autonumérico requiere un único
campo objetivo y uno o más campos de
entrada. También se puede especificar
campos de ponderación y frecuencia.
Consulte el tema “Propiedades comunes de
nodos de modelado” en la página 185 para
obtener más información.
inputs [campo1 ... campo2]
partición campo
use_frequency flag
frequency_field campo
use_weight flag
weight_field campo
use_partitioned_data flag Si se ha definido un campo de partición,
sólo se utilizarán los datos de
entrenamiento para la generación del
modelo.
ranking_measure Correlation
NumberOfFields
ranking_dataset Test
Entrenamiento
number_of_models entero Número de modelos que se incluirán en el
nugget de modelo. Especifique un entero
entre 1 y 100.
calculate_variable_importance flag
enable_correlation_limit flag
correlation_limit entero
enable_number_of_fields_limit flag
number_of_fields_limit entero
enable_relative_error_limit flag
relative_error_limit entero
enable_model_build_time_limit flag
model_build_time_limit entero
enable_stop_after_time_limit flag
stop_after_time_limit entero

Capítulo 13. Propiedades de nodos de modelado 195


Tabla 115. propiedades de autonumericnode (continuación)
Propiedades de autonumericnode Valores Descripción de la propiedad
stop_if_valid_model flag
<algorithm> flag Activa o desactiva el uso de un
determinado algoritmo.
<algorithm>.<property> cadena Define un valor de propiedad para un
algoritmo específico. Consulte el tema
“Propiedades de ajustes de algoritmo” en
la página 192 para obtener más
información.

Propiedades de bayesnetnode
El nodo Red bayesiana le permite crear un modelo de probabilidad combinando pruebas
observadas y registradas con conocimiento del mundo real para establecer la probabilidad de
instancias. El nodo se centra en las redes Naïve Bayes aumentado a árbol (TAN) y de manto
de Markov que se utilizan principalmente para la clasificación.

Ejemplo
node = [Link]("bayesnet", "My node")
[Link]("continue_training_existing_model", True)
[Link]("structure_type", "MarkovBlanket")
[Link]("use_feature_selection", True)
# pestaña Experto
[Link]("mode", "Expert")
[Link]("all_probabilities", True)
[Link]("independence", "Pearson")
Tabla 116. Propiedades de bayesnetnode
Propiedades de bayesnetnode Valores Descripción de la propiedad
inputs [campo1 ... campoN] Los modelos de red bayesiana utilizan
un único campo objetivo y uno o más
campos de entrada. Los campos
continuos se establecen en intervalos
automáticamente. Consulte el tema
“Propiedades comunes de nodos de
modelado” en la página 185 para obtener
más información.
continue_training_existing_model flag
structure_type TAN Seleccione la estructura que desea
MarkovBlanket utilizar cuando cree la red bayesiana.
use_feature_selection flag
parameter_learning_method Likelihood Especifica el método utilizado para
Bayes calcular las tablas de probabilidad
condicional entre nodos donde se
conocen los valores de los elementos
padre.
mode Expert
Simple
missing_values flag
all_probabilities flag

196 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 116. Propiedades de bayesnetnode (continuación)
Propiedades de bayesnetnode Valores Descripción de la propiedad
independence Likelihood Especifica el método utilizado para
Pearson determinar si las observaciones
relacionadas de dos variables son
independientes entre sí.
significance_level número Especifica el valor de corte para
determinar la independencia.
maximal_conditioning_set número Establece el número máximo de variables
de condición que se utilizarán para la
comprobación de la independencia.
inputs_always_selected [campo1 ... campoN] Especifica qué campos del conjunto de
datos se deben utilizar siempre al
generar la red bayesiana.
Nota: el campo objetivo siempre está
seleccionado.
maximum_number_inputs número Especifica el número máximo de campos
de entrada que se deben utilizar al
generar la red bayesiana.
calculate_variable_importance flag
calculate_raw_propensities flag
calculate_adjusted_propensities flag
adjusted_propensity_partition Test
Validation

propiedades de buildr
El nodo Crear R le permite especificar script R
personalizado para realizar la creación de modelos y la
puntuación de modelos desplegados en IBM SPSS
Modeler.

Ejemplo
node = [Link]("buildr", "My node")
[Link]("score_syntax", """
result<-predict(modelerModel,newdata=modelerData)
modelerData<-cbind(modelerData,result)
var1<-c(fieldName="NaPrediction",fieldLabel="",fieldStorage="real",fieldMeasure="",
fieldFormat="",fieldRole="")
modelerDataModel<-[Link](modelerDataModel,var1)""")
Tabla 117. propiedades de buildr.
Propiedades de buildr Valores Descripción de la propiedad
build_syntax cadena Sintaxis de scripts R para la creación del
modelo.
score_syntax cadena Sintaxis de scripts R para la puntuación del
modelo.
convert_flags StringsAndDoubles Opción para convertir campos de
LogicalValues distintivos.

Capítulo 13. Propiedades de nodos de modelado 197


Tabla 117. propiedades de buildr (continuación).
Propiedades de buildr Valores Descripción de la propiedad
convert_datetime flag Opción para convertir las variables con los
formatos de fecha o de fecha y hora para
formatos de fecha/hora R.
convert_datetime_class POSIXct Opciones para especificar a qué formato se
POSIXlt convierten las variables con los formatos de
fecha o de fecha y hora.
convert_missing tag Opción para convertir los valores que faltan
al valor R NA.
output_html tag Opción para visualizar gráficos en una
pestaña en el nugget de modelo R.
output_text flag Opción para escribir salida de texto de la
consola R en una pestaña del modelo R.

propiedades de c50node
El nodo C5.0 genera un árbol de decisión o un conjunto de reglas. El modelo divide la
muestra basándose en el campo que ofrece la máxima ganancia de información en cada nivel.
El campo objetivo debe ser categórico. Se permiten varias divisiones en más de dos
subgrupos.

Ejemplo
node = [Link]("c50", "My node")
# "Model" tab
[Link]("use_model_name", False)
[Link]("model_name", "C5_Drug")
[Link]("use_partitioned_data", True)
[Link]("output_type", "DecisionTree")
[Link]("use_xval", True)
[Link]("xval_num_folds", 3)
[Link]("mode", "Expert")
[Link]("favor", "Generality")
[Link]("min_child_records", 3)
# pestaña "Costes"
[Link]("use_costs", True)
[Link]("costs", [["drugA", "drugX", 2]])
Tabla 118. propiedades de c50node
Propiedad de c50node Valores Descripción de la propiedad
target campo Los modelos C50 utilizan un único campo
objetivo y uno o más campos de entrada.
También se puede especificar un campo de
ponderación. Consulte el tema
“Propiedades comunes de nodos de
modelado” en la página 185 para obtener
más información.
output_type DecisionTree
RuleSet
group_symbolics flag
use_boost flag

198 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 118. propiedades de c50node (continuación)
Propiedad de c50node Valores Descripción de la propiedad
boost_num_trials número
use_xval flag
xval_num_folds número
mode Simple
Valores avanzados
favor Exactitud Generalización o precisión de favor.
Generality
expected_noise número
min_child_records número
pruning_severity número
use_costs flag
costes structured Ésta es una propiedad estructurada.
use_winnowing flag
use_global_pruning flag Activado (True) de forma predeterminada.
calculate_variable_importance flag
calculate_raw_propensities flag
calculate_adjusted_propensities flag
adjusted_propensity_partition Test
Validation

propiedades de carmanode
El modelo CARMA extrae un conjunto de reglas de los datos sin necesidad de especificar
campos de entrada ni de objetivo. A diferencia de Apriori el nodo CARMA ofrece
configuraciones de generación basadas en el soporte de las reglas (soporte tanto para el
antecedente como el consecuente) en lugar de hacerlo sólo respecto al soporte del
antecedente. Esto significa que las reglas generadas se pueden utilizar en una gama de
aplicaciones más amplia, por ejemplo, para buscar una lista de productos o servicios
(antecedentes) cuyo consecuente es el elemento que se desea promocionar durante esta
temporada de vacaciones.

Ejemplo
node = [Link]("carma", "My node")
# "Fields" tab
[Link]("custom_fields", True)
[Link]("use_transactional_data", True)
[Link]("inputs", ["BP", "Cholesterol", "Drug"])
[Link]("partition", "Test")
# "Model" tab
[Link]("use_model_name", False)
[Link]("model_name", "age_bp_drug")
[Link]("use_partitioned_data", False)
[Link]("min_supp", 10.0)
[Link]("min_conf", 30.0)
[Link]("max_size", 5)
# Opciones de experto
[Link]("mode", "Expert")
[Link]("use_pruning", True)

Capítulo 13. Propiedades de nodos de modelado 199


[Link]("pruning_value", 300)
[Link]("vary_support", True)
[Link]("estimated_transactions", 30)
[Link]("rules_without_antecedents", True)
Tabla 119. propiedades de carmanode
Propiedades de carmanode Valores Descripción de la propiedad
inputs [campo1 ... campon] Los modelos CARMA utilizan una lista de
campos de entrada, pero no de campos
objetivo. Los campos de ponderación y
frecuencia no se usan. Consulte el tema
“Propiedades comunes de nodos de
modelado” en la página 185 para obtener
más información.
id_field campo Campo utilizado como el campo de ID para
la generación del modelo.
contiguous flag Se utiliza para especificar si los ID del
campo de ID son contiguos.
use_transactional_data flag
content_field campo
min_supp número (porcentaje) Está relacionado con el soporte de regla en
lugar de con el soporte de antecedentes. El
valor por omisión es 20%.
min_conf número (porcentaje) El valor por omisión es 20%.
max_size número El valor por omisión es 10.
mode Simple El valor predeterminado es Simple.
Valores avanzados
exclude_multiple flag Excluye las reglas con varios consecuentes.
El valor predeterminado es False.
use_pruning flag El valor predeterminado es False.
pruning_value número El valor predeterminado es 500.
vary_support flag
estimated_transactions entero
rules_without_antecedents flag

propiedades de cartnode
El nodo de árbol de clasificación y regresión (C&R) genera un árbol de decisión que permite
predecir o clasificar observaciones futuras. El método utiliza la partición reiterada para dividir
los registros de entrenamiento en segmentos minimizando las impurezas en cada paso, donde
un nodo se considera "puro" si el 100% de los casos del nodo corresponden a una categoría
específica del campo objetivo. Los campos de entrada y objetivo pueden ser continuos (rango
numérico) o categóricos (nominal, ordinal o marca). Todas las divisiones son binarias (sólo se
crean dos subgrupos).

Ejemplo
node = [Link]("cart", "My node", 200, 100)
# "Fields" tab
[Link]("custom_fields", True)
[Link]("target", "Drug")
[Link]("inputs", ["Age", "BP", "Cholesterol"])

200 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


# "Build Options" tab, "Objective" panel
[Link]("model_output_type", "InteractiveBuilder")
[Link]("use_tree_directives", True)
[Link]("tree_directives", """Grow Node Index 0 Children 1 2
Grow Node Index 2 Children 3 4""")
# "Build Options" tab, "Basics" panel
[Link]("prune_tree", False)
[Link]("use_std_err_rule", True)
[Link]("std_err_multiplier", 3.0)
[Link]("max_surrogates", 7)
# "Build Options" tab, "Stopping Rules" panel
[Link]("use_percentage", True)
[Link]("min_parent_records_pc", 5)
[Link]("min_child_records_pc", 3)
# "Build Options" tab, "Advanced" panel
[Link]("min_impurity", 0.0003)
[Link]("impurity_measure", "Twoing")
# Pestaña "Opciones de modelo"
[Link]("use_model_name", True)
[Link]("model_name", "Cart_Drug")
Tabla 120. propiedades de cartnode
Propiedades de cartnode Valores Descripción de la propiedad
target campo Los modelos de árbol C&R requieren un
único campo objetivo y uno o más campos
de entrada. También se puede especificar
un campo de frecuencia. Consulte el tema
“Propiedades comunes de nodos de
modelado” en la página 185 para obtener
más información.
continue_training_existing_model flag
objective Standard psm se utiliza para conjuntos de datos de
Aumento grandes dimensiones y requiere una
Agregación autodocimante conexión al Servidor.
psm
model_output_type Single
InteractiveBuilder
use_tree_directives flag
tree_directives cadena Especifique directivas para desarrollar el
árbol. Las directivas se pueden escribir
entre comillas triples para evitar comillas o
saltos de línea no deseados. Recuerde que
las directivas pueden ser muy sensibles a
las pequeñas modificaciones de las
opciones de modelado o los datos y es
posible que no se puedan generalizar para
otros conjuntos de datos.

use_max_depth Predeterminado
Personalizado
max_depth entero Máxima profundidad del árbol, desde 0 a
1000. Sólo se utiliza si use_max_depth =
Custom.
prune_tree flag Poda del árbol para evitar sobreajustes.

Capítulo 13. Propiedades de nodos de modelado 201


Tabla 120. propiedades de cartnode (continuación)
Propiedades de cartnode Valores Descripción de la propiedad
use_std_err flag Use la diferencia máxima en riesgos (en
errores estándar).
std_err_multiplier número Diferencia máxima.
max_surrogates número Número máximo de sustitutos.
use_percentage flag
min_parent_records_pc número
min_child_records_pc número
min_parent_records_abs número
min_child_records_abs número
use_costs flag
costes structured Propiedad estructurada.
priors Datos
Equal
Personalizado
custom_priors structured Propiedad estructurada.
adjust_priors flag
trails número Número de modelos de componente para
un aumento o agregación autodocimante.
set_ensemble_method Voting Regla de combinación predeterminada para
HighestProbability objetivos categóricos.
HighestMeanProbability
range_ensemble_method Media Regla de combinación predeterminada para
Mediana objetivos continuos.
large_boost flag Aplicar aumento a conjunto de datos muy
grandes.
min_impurity número
impurity_measure Gini
Twoing
Ordered
train_pct número Conjunto de prevención sobreajustado.
set_random_seed flag Opción replicar resultados.
seed número
calculate_variable_importance flag
calculate_raw_propensities flag
calculate_adjusted_propensities flag
adjusted_propensity_partition Test
Validation

202 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


propiedades de chaidnode
El nodo CHAID genera árboles de decisión utilizando estadísticos de chi-cuadrado para
identificar las divisiones óptimas. A diferencia de los nodos C&RT y Árbol y QUEST, CHAID
puede generar árboles no binarios, lo que significa que algunas divisiones generarán más de
dos ramas. Los campos de entrada y objetivo pueden ser continuos (rango numérico) o
categóricos. CHAID exhaustivo es una modificación de CHAID que examina con mayor
precisión todas las divisiones posibles, aunque necesita más tiempo para realizar los cálculos.

Ejemplo
filenode = [Link]("variablefile", "My node", 100, 100)
[Link]("full_filename", "$CLEO_DEMOS/DRUG1n")
node = [Link]("chaid", "My node", 200, 100)
[Link](filenode, node)

[Link]("custom_fields", True)
[Link]("target", "Drug")
[Link]("inputs", ["Age", "Na", "K", "Cholesterol", "BP"])
[Link]("use_model_name", True)
[Link]("model_name", "CHAID")
[Link]("method", "Chaid")
[Link]("model_output_type", "InteractiveBuilder")
[Link]("use_tree_directives", True)
[Link]("tree_directives", "Test")
[Link]("split_alpha", 0.03)
[Link]("merge_alpha", 0.04)
[Link]("chi_square", "Pearson")
[Link]("use_percentage", False)
[Link]("min_parent_records_abs", 40)
[Link]("min_child_records_abs", 30)
[Link]("epsilon", 0.003)
[Link]("max_iterations", 75)
[Link]("split_merged_categories", True)
[Link]("bonferroni_adjustment", True)
Tabla 121. propiedades de chaidnode
Propiedad de chaidnode Valores Descripción de la propiedad
target campo Los modelos CHAID requieren un único
campo objetivo y uno o más campos de
entrada. También se puede especificar un
campo de frecuencia. Consulte el tema
“Propiedades comunes de nodos de
modelado” en la página 185 para obtener
más información.
continue_training_existing_model flag
objective Standard psm se utiliza para conjuntos de datos de
Aumento grandes dimensiones y requiere una
Agregación autodocimante conexión al Servidor.
psm
model_output_type Single
InteractiveBuilder
use_tree_directives flag
tree_directives cadena
method Chaid
ExhaustiveChaid

Capítulo 13. Propiedades de nodos de modelado 203


Tabla 121. propiedades de chaidnode (continuación)
Propiedad de chaidnode Valores Descripción de la propiedad
use_max_depth Predeterminado
Personalizado
max_depth entero Máxima profundidad del árbol, desde 0 a
1000. Sólo se utiliza si use_max_depth =
Custom.
use_percentage flag
min_parent_records_pc número
min_child_records_pc número
min_parent_records_abs número
min_child_records_abs número
use_costs flag
costes structured Propiedad estructurada.
trails número Número de modelos de componente para
un aumento o agregación autodocimante.
set_ensemble_method Voting Regla de combinación predeterminada para
HighestProbability objetivos categóricos.
HighestMeanProbability
range_ensemble_method Media Regla de combinación predeterminada para
Mediana objetivos continuos.
large_boost flag Aplicar aumento a conjunto de datos muy
grandes.
split_alpha número Nivel de significancia para división.
merge_alpha número Nivel de significancia para fusión.
bonferroni_adjustment flag Los valores de significancia de ajuste
utilizando el método de Bonferroni.
split_merged_categories flag Permitir segunda división de categorías
fusionadas.
chi_square Pearson Método usado para calcular la estadística
LR de chi cuadrado: Pearson o Razón de
verosimilitud
epsilon número Cambio mínimo en frecuencias de casillas
esperadas.
max_iterations número Número máximo de iteraciones para la
convergencia.
set_random_seed entero
seed número
calculate_variable_importance flag
calculate_raw_propensities flag
calculate_adjusted_propensities flag
adjusted_propensity_partition Test
Validation
maximum_number_of_models entero

204 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


propiedades de coxregnode
El nodo Regresión de Cox le permite crear un modelo de supervivencia para datos de tiempo
hasta el evento en presencia de registros censurados. El modelo produce una función de
supervivencia que predice la probabilidad de que el evento de interés se haya producido en
el momento dado (t) para valores determinados de las variables de entrada.

Ejemplo
node = [Link]("coxreg", "My node")
[Link]("survival_time", "tenure")
[Link]("method", "BackwardsStepwise")
# pestaña Experto
[Link]("mode", "Expert")
[Link]("removal_criterion", "Conditional")
[Link]("survival", True)
Tabla 122. propiedades de coxregnode
Propiedades de coxregnode Valores Descripción de la propiedad
survival_time campo Los modelos de regresión de Cox
requieren un único campo con los
tiempos de supervivencia.
target campo Los modelos de regresión de Cox
requieren un único campo objetivo y uno
o más campos de entrada. Consulte el
tema “Propiedades comunes de nodos de
modelado” en la página 185 para obtener
más información.
method Intro
Stepwise
BackwardsStepwise
grupos campo
model_type MainEffects
Personalizado
custom_terms ["BP*Sexo" "BP*Edad"]
mode Expert
Simple
max_iterations número
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

Capítulo 13. Propiedades de nodos de modelado 205


Tabla 122. propiedades de coxregnode (continuación)
Propiedades de coxregnode Valores Descripción de la propiedad
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 número
probability_removal número
output_display EachStep
LastStep
ci_enable flag
ci_value 90
95
99
correlación flag
display_baseline flag
survival flag
hazard flag
log_minus_log flag
one_minus_survival flag
separate_line campo
value número o cadena Si no se especifica ningún valor para un
campo, se utilizará la opción
predeterminada "Mean" para dicho
campo.

Propiedades de decisionlistnode
El nodo Lista de decisiones identifica subgrupos, o segmentos, que muestran una mayor o
menor posibilidad de proporcionar un resultado binario relacionado con la población global.
Por ejemplo, puede buscar clientes que tengan menos posibilidades de abandonar o más
posibilidades de responder favorablemente a una campaña. Puede incorporar su conocimiento
empresarial al modelo añadiendo sus propios segmentos personalizados y previsualizando
modelos alternativos uno junto a otro para comparar los resultados. Los modelos de listas de
decisiones constan de una lista de reglas en las que cada regla tiene una condición y un
resultado. Las reglas se aplican en orden, y la primera regla que coincide determina el
resultado.

Ejemplo
node = [Link]("decisionlist", "My node")
[Link]("search_direction", "Down")
[Link]("target_value", 1)
[Link]("max_rules", 4)
[Link]("min_group_size_pct", 15)

206 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 123. Propiedades de decisionlistnode
Propiedades de decisionlistnode Valores Descripción de la propiedad
target campo Los modelos de listas de decisiones utilizan
un único campo objetivo y uno o más
campos de entrada. También se puede
especificar un campo de frecuencia.
Consulte el tema “Propiedades comunes de
nodos de modelado” en la página 185 para
obtener más información.
model_output_type Modelo
InteractiveBuilder
search_direction Up Hace referencia a la localización de
Bajar segmentos, donde Up es el equivalente a
Alta probabilidad y Down es el equivalente
a Baja probabilidad.
target_value cadena Si no se especifica, se supondrá el valor
true para las marcas.
max_rules entero Número máximo de segmentos sin incluir
el resto.
min_group_size entero Tamaño mínimo del segmento.
min_group_size_pct número Tamaño mínimo del segmento como
porcentaje.
confidence_level número Umbral mínimo que un campo de entrada
tiene que mejorar la probabilidad de la
respuesta (aumentar la elevación) para que
merezca la pena añadirlo a la definición de
un segmento.
max_segments_per_rule entero
mode Simple
Valores avanzados
bin_method EqualWidth
EqualCount
bin_count número
max_models_per_cycle entero Amplitud de búsqueda de las listas.
max_rules_per_cycle entero Amplitud de búsqueda de las reglas de
segmentación.
segment_growth número
include_missing flag
final_results_only flag
reuse_fields flag Permite la reutilización de los atributos (los
campos de entrada que aparecen en las
reglas).
max_alternatives entero
calculate_raw_propensities flag
calculate_adjusted_propensities flag
adjusted_propensity_partition Test
Validation

Capítulo 13. Propiedades de nodos de modelado 207


propiedades de discriminantnode
El análisis discriminante realiza más supuestos rigurosos que regresiones logísticas pero
puede ser una alternativa o un suplemento valioso al análisis de regresión logística si se
cumplen dichos supuestos.

Ejemplo
node = [Link]("discriminant", "My node")
[Link]("target", "custcat")
[Link]("use_partitioned_data", False)
[Link]("method", "Stepwise")
Tabla 124. propiedades de discriminantnode
Propiedades de discriminantnode Valores Descripción de la propiedad
target campo Los modelos discriminantes requieren un
único campo objetivo y uno o más campos
de entrada. Los campos de ponderación y
frecuencia no se usan. Consulte el tema
“Propiedades comunes de nodos de
modelado” en la página 185 para obtener
más información.
method Intro
Por pasos
mode Simple
Valores avanzados
prior_probabilities AllEqual
ComputeFromSizes
covariance_matrix WithinGroups
SeparateGroups
medias flag Opciones de estadísticos del cuadro de
diálogo Salida avanzada.
univariate_anovas flag
box_m flag
within_group_covariance flag
within_groups_correlation flag
separate_groups_covariance flag
total_covariance flag
fishers flag
unstandardized flag
casewise_results flag Opciones de clasificación del cuadro de
diálogo Salida avanzada.
limit_to_first número El valor predeterminado es 10.
summary_table flag
leave_one_classification flag
combined_groups flag
separate_groups_covariance flag Opción de matrices Covarianza de grupos
separados.

208 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 124. propiedades de discriminantnode (continuación)
Propiedades de discriminantnode Valores Descripción de la propiedad
territorial_map flag
combined_groups flag Opción de gráfico Grupos combinados.
separate_groups flag Opción de gráfico Grupos separados.
summary_of_steps flag
F_pairwise flag
stepwise_method WilksLambda
UnexplainedVariance
MahalanobisDistance
SmallestF
RaosV
V_to_enter número
criterios UseValue
UseProbability
F_value_entry número El valor predeterminado es 3.84.
F_value_removal número El valor predeterminado es 2.71.
probability_entry número El valor predeterminado es 0.05.
probability_removal número El valor predeterminado es 0,10.
calculate_variable_importance flag
calculate_raw_propensities flag
calculate_adjusted_propensities flag
adjusted_propensity_partition Test
Validation

Propiedades de extensionmodelnode

Con el nodo de Modelo de extensión, puede ejecutar


scripts R o Python para Spark para crear y puntuar
resultados.

Ejemplo de Python para Spark


#### Ejemplo de script de Python para Spark
import [Link]
stream = [Link]()
node = [Link]("extension_build", "extension_build")
[Link]("syntax_type", "Python")

build_script = """
import json
import [Link]
from [Link] import LabeledPoint
from [Link] import DenseVector
from [Link] import DecisionTree

cxt = [Link]()
df = [Link]()

Capítulo 13. Propiedades de nodos de modelado 209


schema = [Link][:]

target = "Drug"
predictors = ["Age","BP","Sex","Cholesterol","Na","K"]

def metaMap(row,schema):
col = 0
meta = []
for (cname, ctype) in schema:
if ctype == ’string’:
[Link](set([row[col]]))
else:
[Link]((row[col],row[col]))
col += 1
return meta

def metaReduce(meta1,meta2,schema):
col = 0
meta = []
for (cname, ctype) in schema:
if ctype == ’string’:
[Link](meta1[col].union(meta2[col]))
else:
[Link]((min(meta1[col][0],meta2[col][0]),max(meta1[col][1],meta2[col][1])))
col += 1
return meta

metadata = [Link](lambda row: metaMap(row,schema)).reduce(lambda x,y:metaReduce(x,y,schema))

def setToList(v):
if isinstance(v,set):
return list(v)
return v

metadata = map(lambda x: setToList(x), metadata)


print metadata

lookup = {}
for i in range(0,len(schema)):
lookup[schema[i][0]] = i

def row2LabeledPoint(dm,lookup,target,predictors,row):
target_index = lookup[target]
tval = dm[target_index].index(row[target_index])
pvals = []
for predictor in predictors:
predictor_index = lookup[predictor]
if isinstance(dm[predictor_index],list):
pval = dm[predictor_index].index(row[predictor_index])
else:
pval = row[predictor_index]
[Link](pval)
return LabeledPoint(tval,DenseVector(pvals))

# número de recuento de clases de destino


predictorClassCount = len(metadata[lookup[target]])

# definir función para extraer información de predictor categórico de modelo de datos


def getCategoricalFeatureInfo(dm,lookup,predictors):
info = {}
for i in range(0,len(predictors)):
predictor = predictors[i]
predictor_index = lookup[predictor]
if isinstance(dm[predictor_index],list):
info[i] = len(dm[predictor_index])
return info

210 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


# convertir marco de datos a un RDD que contiene LabeledPoint
lps = [Link](lambda row: row2LabeledPoint(metadata,lookup,target,predictors,row))

treeModel = [Link](
lps,
numClasses=predictorClassCount,
categoricalFeaturesInfo=getCategoricalFeatureInfo(metadata, lookup, predictors),
impurity=’gini’,
maxDepth=5,
maxBins=100)

_outputPath = [Link]()
[Link]([Link](), _outputPath)
[Link]("TreeModel", _outputPath)
[Link]("[Link]",[Link](metadata), mimeType="application/json")\
.setModelContentFromString("[Link]",[Link]())

"""

[Link]("python_build_syntax", build_script)

Ejemplo de R
#### Ejemplo de script de R
[Link]("syntax_type", "R")
[Link]("r_build_syntax", """modelerModel <- lm(modelerData$Na~modelerData$K,modelerData)
modelerDataModel
modelerModel
""")
Tabla 125. Propiedades de extensionmodelnode
Propiedades de extensionmodelnode Valores Descripción de la propiedad
syntax_type R Especifica qué script se ejecuta: R o Python
Python (R es el valor predeterminado).
r_build_syntax cadena Sintaxis de scripts R para la creación de
modelos.
r_score_syntax cadena Sintaxis de scripts R para la puntuación de
modelos.
python_build_syntax cadena Sintaxis de scripts Python para la creación
de modelos.
python_score_syntax cadena Sintaxis de scripts Python para la
puntuación de modelos.
convert_flags StringsAndDoubles Opción para convertir campos de
LogicalValues distintivos.
convert_missing flag Opción para convertir los valores que faltan
al valor R NA.
convert_datetime flag Opción para convertir las variables con los
formatos de fecha o de fecha y hora para
formatos de fecha/hora R.
convert_datetime_class POSIXct Opciones para especificar a qué formato se
POSIXlt convierten las variables con los formatos de
fecha o de fecha y hora.
output_html flag Opción para visualizar gráficos en una
pestaña en el nugget de modelo R.
output_text flag Opción para escribir salida de texto de la
consola R en una pestaña del modelo R.

Capítulo 13. Propiedades de nodos de modelado 211


propiedades de factornode
El nodo PCA/Factorial proporciona técnicas eficaces de reducción de datos para reducir la
complejidad de los datos. Análisis de componentes principales (PCA) busca combinaciones
lineales de los campos de entrada que realizan el mejor trabajo a la hora de capturar la
varianza en todo el conjunto de campos, en el que los componentes son ortogonales
(perpendiculares) entre ellos. Análisis factorial intenta identificar factores subyacentes que
expliquen el patrón de correlaciones dentro de un conjunto de campos observados. Para los
dos métodos, el objetivo es encontrar un número pequeño de campos derivados que resuma
de forma eficaz la información del conjunto original de campos.

Ejemplo
node = [Link]("factor", "My node")
# "Fields" tab
[Link]("custom_fields", True)
[Link]("inputs", ["BP", "Na", "K"])
[Link]("partition", "Test")
# "Model" tab
[Link]("use_model_name", True)
[Link]("model_name", "Factor_Age")
[Link]("use_partitioned_data", False)
[Link]("method", "GLS")
# Opciones de experto
[Link]("mode", "Expert")
[Link]("complete_records", True)
[Link]("matrix", "Covariance")
[Link]("max_iterations", 30)
[Link]("extract_factors", "ByFactors")
[Link]("min_eigenvalue", 3.0)
[Link]("max_factor", 7)
[Link]("sort_values", True)
[Link]("hide_values", True)
[Link]("hide_below", 0.7)
# Sección "Rotación"
[Link]("rotation", "DirectOblimin")
[Link]("delta", 0.3)
[Link]("kappa", 7.0)
Tabla 126. propiedades de factornode
Propiedad de factornode Valores Descripción de la propiedad
inputs [field1 ... fieldN] Los modelos PCA/Factorial utilizan una
lista de campos de entrada, pero no de
campos objetivo. Los campos de
ponderación y frecuencia no se usan.
Consulte el tema “Propiedades comunes de
nodos de modelado” en la página 185 para
obtener más información.
method PC
ULS
GLS
ML
PAF
Alpha
Image
mode Simple
Valores avanzados

212 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 126. propiedades de factornode (continuación)
Propiedad de factornode Valores Descripción de la propiedad
max_iterations número
complete_records flag
matrix Correlation
Covariance
extract_factors ByEigenvalues
ByFactors
min_eigenvalue número
max_factor número
rotación Ninguno
Varimax
DirectOblimin
Equamax
Quartimax
Promax
delta número Si selecciona DirectOblimin como el tipo de
datos de rotación, podrá especificar un
valor para delta.

Si no especifica ningún valor, se utilizará el


valor predeterminado para delta.
kappa número Si selecciona Promax como el tipo de datos
de rotación, podrá especificar un valor para
kappa.

Si no especifica ningún valor, se utilizará el


valor predeterminado para kappa.
sort_values flag
hide_values flag
hide_below número

propiedades de featureselectionnode
El nodo Selección de características filtra los campos de entrada para su eliminación en
función de un conjunto de criterios (como el porcentaje de valores perdidos); a continuación,
clasifica el grado de importancia del resto de entradas de acuerdo con un objetivo específico.
Por ejemplo, a partir de un conjunto de datos dado con cientos de entradas potenciales,
¿cuáles tienen mayor probabilidad de ser útiles para el modelado de resultados de pacientes?

Ejemplo
node = [Link]("featureselection", "My node")
[Link]("screen_single_category", True)
[Link]("max_single_category", 95)
[Link]("screen_missing_values", True)
[Link]("max_missing_values", 80)
[Link]("criteria", "Likelihood")
[Link]("unimportant_below", 0.8)

Capítulo 13. Propiedades de nodos de modelado 213


[Link]("important_above", 0.9)
[Link]("important_label", "Check Me Out!")
[Link]("selection_mode", "TopN")
[Link]("top_n", 15)

Para obtener un ejemplo más detallado que cree y aplique un modelo de Selección de características,
consulte en.
Tabla 127. propiedades de featureselectionnode
Propiedad de featureselectionnode Valores Descripción de la propiedad
target campo Los modelos de selección de
características ordenan predictores por
rangos con respecto a su objetivo
específico. Los campos de ponderación y
frecuencia no se usan. Consulte el tema
“Propiedades comunes de nodos de
modelado” en la página 185 para obtener
más información.
screen_single_category flag En caso de establecer True, filtra campos
que tienen demasiados registros dentro
de la misma categoría respecto al
número total de registros.
max_single_category número Especifica el umbral que se utiliza
cuando screen_single_category es True.
screen_missing_values flag Si se establece en True, filtra campos con
demasiados valores perdidos, expresados
como un porcentaje del número total de
registros.
max_missing_values número
screen_num_categories flag Si se establece en True, filtra campos con
demasiadas categorías respecto al
número total de registros.
max_num_categories número
screen_std_dev flag Si se establece en True, filtra campos con
una desviación estándar menor o igual
que el mínimo especificado.
min_std_dev número
screen_coeff_of_var flag Si se establece en True, filtra campos con
un coeficiente de varianza menor o igual
que el mínimo especificado.
min_coeff_of_var número
criterios Pearson Al clasificar los predictores categóricos
Likelihood en función de un objetivo categórico,
CramersV especifica la medida en la que se basa el
Lambda valor de importancia.
unimportant_below número Especifica los valores p de umbral
utilizados para clasificar las variables
como importantes, marginales o sin
importancia. Acepta valores de 0,0 a 1,0.
important_above número Acepta valores de 0,0 a 1,0.
unimportant_label cadena Especifica la etiqueta para la clasificación
como 'Sin importancia'.
marginal_label cadena

214 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 127. propiedades de featureselectionnode (continuación)
Propiedad de featureselectionnode Valores Descripción de la propiedad
important_label cadena
selection_mode ImportanceLevel
ImportanceValue
TopN
select_important flag Si selection_mode se establece en
ImportanceLevel, determina si se
seleccionan los campos importantes.
select_marginal flag Si selection_mode se establece en
ImportanceLevel, determina si se
seleccionan los campos marginales.
select_unimportant flag Si selection_mode se establece en
ImportanceLevel, determina si se
seleccionan los campos sin importancia.
importance_value número Si selection_mode se establece en
ImportanceValue, determina el valor de
corte que se va a usar. Acepta valores de
0 a 100.
top_n entero Si selection_mode se establece en TopN,
determina el valor de corte que se va a
usar. Acepta valores de 0 a 1000.

propiedades de genlinnode
El modelo lineal generalizado amplía el modelo lineal general, de manera que la variable
dependiente está relacionada linealmente con los factores y las covariables mediante una
determinada función de enlace. Además, el modelo permite que la variable dependiente tenga
una distribución no normal. Cubre la funcionalidad de un amplio número de modelo
estadísticos, incluyendo regresión lineal, regresión logística, modelos log lineales para
recuento de datos y modelos de supervivencia censurados por intervalos.

Ejemplo
node = [Link]("genlin", "My node")
[Link]("model_type", "MainAndAllTwoWayEffects")
[Link]("offset_type", "Variable")
[Link]("offset_field", "Claimant")
Tabla 128. propiedades de genlinnode
Propiedades de genlinnode Valores Descripción de la propiedad
target campo Los modelos lineales generalizados
requieren un único campo objetivo, que
debe ser un campo nominal o marca, y uno
o más campos de entrada. También se
puede especificar un campo de
ponderación. Consulte el tema
“Propiedades comunes de nodos de
modelado” en la página 185 para obtener
más información.
use_weight flag
weight_field campo El tipo de campo es únicamente continuo.
target_represents_trials flag

Capítulo 13. Propiedades de nodos de modelado 215


Tabla 128. propiedades de genlinnode (continuación)
Propiedades de genlinnode Valores Descripción de la propiedad
trials_type Variable
FixedValue
trials_field campo El tipo de campo es continuo, marca u
ordinal.
trials_number número El valor predeterminado es 10.
model_type MainEffects
MainAndAllTwoWayEffects
offset_type Variable
FixedValue
offset_field campo El tipo de campo es únicamente continuo.
offset_value número Debe ser un número real.
base_category Last
Primero

include_intercept flag
mode Simple
Valores avanzados
distribution BINOMIAL IGAUSS: De Gauss inversa.
GAMMA NEGBIN: Negative binomial.
IGAUSS
NEGBIN
NORMAL
POISSON
TWEEDIE
MULTINOMIAL
negbin_para_type Especifica
Estimate
negbin_parameter número El valor predeterminado es 1. Debe
contener un número real no negativo.
tweedie_parameter número
link_function IDENTITY CLOGLOG: log-log complementario.
CLOGLOG LOGC: complemento log.
LOG NEGBIN: Negative binomial.
LOGC NLOGLOG: Log-log negativo.
LOGIT CUMCAUCHIT: Cauchit acumulada.
NEGBIN CUMCLOGLOG: Log-log complementario
NLOGLOG acumulado.
ODDSPOWER CUMLOGIT: Logit acumulado.
PROBIT CUMNLOGLOG: Log-log negativo acumulado.
POWER CUMPROBIT: Probit acumulado.
CUMCAUCHIT
CUMCLOGLOG
CUMLOGIT
CUMNLOGLOG
CUMPROBIT
potencia número El valor debe ser real y distinto de cero.
method Hybrid
Fisher
NewtonRaphson

216 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 128. propiedades de genlinnode (continuación)
Propiedades de genlinnode Valores Descripción de la propiedad
max_fisher_iterations número El valor predeterminado es 1; sólo se
admiten enteros positivos.
scale_method MaxLikelihoodEstimate
Deviance
PearsonChiSquare
FixedValue
scale_value número El valor predeterminado es 1; debe ser
mayor que 0.
covariance_matrix ModelEstimator
RobustEstimator
max_iterations número El valor predeterminado es 100; sólo
enteros no negativos.
max_step_halving número El valor predeterminado es 5; sólo enteros
positivos.
check_separation flag
start_iteration número El valor predeterminado es 20; sólo se
admiten enteros positivos.
estimates_change flag
estimates_change_min número El valor predeterminado es 1E-006; sólo se
admiten números positivos.
estimates_change_type Absolute
Relative
loglikelihood_change flag
loglikelihood_change_min número Sólo se admiten números positivos.
loglikelihood_change_type Absolute
Relative
hessian_convergence flag
hessian_convergence_min número Sólo se admiten números positivos.
hessian_convergence_type Absolute
Relative
case_summary flag
contrast_matrices flag
descriptive_statistics flag
estimable_functions flag
model_info flag
iteration_history flag
goodness_of_fit flag
print_interval número El valor predeterminado es 1; debe ser un
entero positivo.
model_summary flag
lagrange_multiplier flag
parameter_estimates flag
include_exponential flag
covariance_estimates flag

Capítulo 13. Propiedades de nodos de modelado 217


Tabla 128. propiedades de genlinnode (continuación)
Propiedades de genlinnode Valores Descripción de la propiedad
correlation_estimates flag
analysis_type TypeI
TypeIII
TypeIAndTypeIII
statistics Wald
LR
citype Wald
Profile
tolerancelevel número El valor predeterminado es 0.0001.
confidence_interval número El valor predeterminado es 95.
loglikelihood_function Completa
Kernel
singularity_tolerance 1E-007
1E-008
1E-009
1E-010
1E-011
1E-012
value_order Ascending
Descending
DataOrder
calculate_variable_importance flag
calculate_raw_propensities flag
calculate_adjusted_propensities flag
adjusted_propensity_partition Test
Validation

Propiedades de glmmnode
Un modelo lineal mixto generalizado (GLMM) amplía el modelo lineal de modo que el
objetivo pueda tener una distribución no normal, esté linealmente relacionado con los factores
y covariables mediante una función de enlace especificada y las observaciones se puedan
correlacionar. Los modelos lineales mixtos generalizados cubren una amplia variedad de
modelos, desde modelos de regresión lineal simple hasta modelos multinivel complejos para
datos longitudinales no normales.

Tabla 129. Propiedades de glmmnode.


Propiedades de glmmnode Valores Descripción de la propiedad
residual_subject_spec estructurado La combinación de valores de los campos
categóricos especificados que definen de
forma exclusiva los sujetos del conjunto de
datos.
repeated_measures estructurado Campos utilizados para identificar
observaciones repetidas.
residual_group_spec [field1 ... fieldN] Campos que definen conjuntos
independientes de parámetros de
covarianza de efectos repetidos.

218 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 129. Propiedades de glmmnode (continuación).
Propiedades de glmmnode Valores Descripción de la propiedad
residual_covariance_type Diagonal Especifica la estructura de covarianza de
AR1 residuos.
ARMA11
COMPOUND_SYMMETRY
IDENTITY
TOEPLITZ
UNSTRUCTURED
VARIANCE_COMPONENTS
custom_target tag Indica si se puede utilizar un objetivo
definido en el nodo anterior (false) o un
objetivo personalizado especificado por
target_field (true).
target_field campo Campo a utilizar como objetivo si
custom_target es true.
use_trials tag Indica si hay que utilizar el campo
adicional o el valor que especifica el
número de ensayos cuando la respuesta
objetivo es un número de eventos que
tienen lugar en un conjunto de ensayos. El
valor predeterminado es false.
use_field_or_value Campo Indica si se utiliza el campo (valor
Value predeterminado) o valor para especificar el
número de ensayos.
trials_field campo Campo a utilizar para especificar el número
de ensayos.
trials_value entero Valor a utilizar para especificar el número
de ensayos. Si se especifica, el valor
mínimo es 1.
use_custom_target_reference tag Indica si hay que utilizar la categoría de
referencia personalizada para un objetivo
categórico. El valor predeterminado es
false.
target_reference_value cadena Categoría de referencia a utilizar si
use_custom_target_reference es true.
dist_link_combination Nominal Modelos comunes para la distribución de
Logit valores de objetivo. Seleccione Custom para
GammaLog especificar una distribución de la lista
BinomialLogit proporcionada por target_distribution.
PoissonLog
BinomialProbit
NegbinLog
BinomialLogC
Custom
target_distribution Normal La distribución de valores de objetivo
Binomial cuando dist_link_combination es Custom.
Multinomial
Gamma
Inverso
NegativeBinomial
Poisson

Capítulo 13. Propiedades de nodos de modelado 219


Tabla 129. Propiedades de glmmnode (continuación).
Propiedades de glmmnode Valores Descripción de la propiedad
link_function_type Identity Función de enlace para relacionar valores
LogC de objetivo a los predictores.
Log Si target_distribution es
CLOGLOG Binomial podrá utilizarse cualquiera
Logit de las funciones de enlace listadas.
NLOGLOG Si target_distribution es
PROBIT Multinomial podrán utilizarse
POWER CLOGLOG, CAUCHIT, LOGIT,
CAUCHIT NLOGLOG o PROBIT.
Si target_distribution es
cualquier cosa distinta de Binomial o
Multinomial podrán utilizarse
IDENTITY, LOG o POWER.
link_function_param number Valor del parámetro de función de enlace
que hay que utilizar. Sólo es aplicable si
normal_link_function o
link_function_type es POWER.
use_predefined_inputs tag Indica si los campos de efectos fijos deben
ser aquellos definidos anteriormente como
campos de entrada (true) o han de ser los
campos fixed_effects_list (false). El
valor predeterminado es false.
fixed_effects_list estructurado Si use_predefined_inputs es falso,
especifica los campos de entrada que se han
de utilizar como campos de efectos fijos.
use_intercept tag Si es true, el valor predeterminado. incluye
la interceptación en el modelo.
random_effects_list estructurado Lista de campos para especificar como
efectos aleatorios.
regression_weight_field campo Campo a utilizar como campo de
ponderación de análisis.
use_offset Ninguno Indica cómo se especifica la compensación.
offset_value El valor None significa que no se ha
offset_field utilizado compensación.
offset_value number El valor que se ha de utilizar para
desplazamiento si use_offset se establece
en offset_value.
offset_field campo El valor que se ha de utilizar para
desplazamiento si use_offset se establece
en offset_field.
target_category_order Ascending Orden de clasificación para objetivos
Descending categóricos. El valor Data especifica que se
Datos utiliza el orden de clasificación de los
datos. El valor predeterminado es
Ascending.
inputs_category_order Ascending Orden de clasificación para predictores
Descending categóricos. El valor Data especifica que se
Datos utiliza el orden de clasificación de los
datos. El valor predeterminado es
Ascending.

220 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 129. Propiedades de glmmnode (continuación).
Propiedades de glmmnode Valores Descripción de la propiedad
max_iterations entero Número máximo de iteraciones que
ejecutará el algoritmo. Un número entero
no negativo; el valor predeterminado es
100.
confidence_level entero Nivel de confianza utilizado para calcular
estimaciones de intervalo de los coeficientes
del modelo. Un número entero no negativo;
el valor máximo es 100, el valor
predeterminado es 95.
degrees_of_freedom_method Fixed Especifica cómo se calculan los grados de
Varied libertad para la prueba de significación.
test_fixed_effects_coeffecients Modelo Método para calcular la matriz de
Robust covarianza de las estimaciones de los
parámetros.
use_p_converge flag Opción para la convergencia de parámetros.
p_converge número Blanco, o cualquier valor positivo.
p_converge_type Absolute
Relative
use_l_converge flag Opción para la convergencia log-likelihood.
l_converge número Blanco, o cualquier valor positivo.
l_converge_type Absolute
Relative
use_h_converge flag Opción para la convergencia hessiana.
h_converge número Blanco, o cualquier valor positivo.
h_converge_type Absolute
Relative
max_fisher_steps entero
singularity_tolerance número
use_model_name tag Indica si hay que especificar un nombre
personalizado para el modelo (true) o si se
ha de utilizar el nombre generado por el
sistema false). El valor predeterminado es
false.
model_name cadena Si use_model_name es true, especifica el
nombre de modelo que se va a utilizar.
confidence onProbability Base para calcular el valor de confianza de
onIncrease la puntuación: probabilidad más alta
predicha, o la diferencia entre la
probabilidad más alta predicha y la
segunda probabilidad más alta.
score_category_probabilities tag Si es true, genera las probabilidades
predichas para objetivos categóricos. El
valor predeterminado es false.
max_categories entero Si score_category_probabilities es true,
especifica el número máximo de categorías
que se han de guardar.

Capítulo 13. Propiedades de nodos de modelado 221


Tabla 129. Propiedades de glmmnode (continuación).
Propiedades de glmmnode Valores Descripción de la propiedad
score_propensity tag Si es true, produce puntuaciones de
propensión para campos de objetivo de
marca que indican la probabilidad del
resultado "true" para el campo.
emeans estructura Para cada campo categórico de la lista de
efectos fijos, especifica si hay que producir
medias marginales estimadas.
covariance_list estructura Para cada campo continuo de la lista de
efectos fijos, especifica si hay que usar la
media o un valor personalizado al calcular
medias marginales estimadas.
mean_scale Original Especifica si las medias marginales
Transformed estimadas se calculan basándose en la
escala original del objetivo (valor
predeterminado) o en la transformación de
la función de enlace.
comparison_adjustment_method DMS Método de ajuste que hay que utilizar al
SEQBONFERRONI realizar pruebas de hipótesis con varios
SEQSIDAK contrastes.

Propiedades de gle
Un modelo lineal mixto generalizado (GLMM) amplía el modelo lineal de modo que el
objetivo pueda tener una distribución no normal, esté linealmente relacionado con los factores
y covariables mediante una función de enlace especificada y las observaciones se puedan
correlacionar. Los modelos lineales mixtos generalizados cubren una amplia variedad de
modelos, desde modelos de regresión lineal simple hasta modelos multinivel complejos para
datos longitudinales no normales.

Tabla 130. Propiedades de gle


Propiedades de gle Valores Descripción de la propiedad
custom_target flag Indica si se puede utilizar un objetivo definido en
el nodo anterior (false) o un objetivo
personalizado especificado por target_field
(true).
target_field campo Campo a utilizar como objetivo si custom_target
es true.
use_trials flag Indica si hay que utilizar el campo adicional o el
valor que especifica el número de ensayos cuando
la respuesta objetivo es un número de eventos
que tienen lugar en un conjunto de ensayos. El
valor predeterminado es false.
use_trials_field_or_value Campo Indica si se utiliza el campo (valor
Valor predeterminado) o valor para especificar el
número de ensayos.
trials_field campo Campo a utilizar para especificar el número de
ensayos.
trials_value entero Valor a utilizar para especificar el número de
ensayos. Si se especifica, el valor mínimo es 1.

222 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 130. Propiedades de gle (continuación)
Propiedades de gle Valores Descripción de la propiedad
use_custom_target_reference flag Indica si hay que utilizar la categoría de
referencia personalizada para un objetivo
categórico. El valor predeterminado es false.
target_reference_value cadena Categoría de referencia a utilizar si
use_custom_target_reference es true.
dist_link_combination NormalIdentity Modelos comunes para la distribución de valores
GammaLog de objetivo.
PoissonLog
NegbinLog Elija CUSTOM para especificar una distribución en la
TweedieIdentity lista proporcionada por target_distribution.
NominalLogit
BinomialLogit
BinomialProbit
BinomialLogC
CUSTOM
target_distribution Normal La distribución de valores de objetivo cuando
Binomial dist_link_combination es Custom.
Multinomial
Gamma
INVERSE_GAUSS
NEG_BINOMIAL
Poisson
TWEEDIE
UNKNOWN
link_function_type UNKNOWN Función de enlace para relacionar valores de
IDENTITY objetivo a los predictores. Si target_distribution
LOG es Binomial puede utilizar:
LOGIT UNKNOWN
PROBIT IDENTITY
COMPL_LOG_LOG LOG
POWER LOGIT
LOG_COMPL PROBIT
NEG_LOG_LOG COMPL_LOG_LOG
ODDS_POWER POWER
NEG_BINOMIAL LOG_COMPL
GEN_LOGIT NEG_LOG_LOG
CUMUL_LOGIT ODDS_POWER
CUMUL_PROBIT
CUMUL_COMPL_LOG_LOG Si target_distribution es NEG_BINOMIAL puede
CUMUL_NEG_LOG_LOG utilizar:
CUMUL_CAUCHIT NEG_BINOMIAL.

Si target_distribution es UNKNOWN, puede utilizar:


GEN_LOGIT
CUMUL_LOGIT
CUMUL_PROBIT
CUMUL_COMPL_LOG_LOG
CUMUL_NEG_LOG_LOG
CUMUL_CAUCHIT
link_function_param número Valor del parámetro Tweedie que hay que utilizar.
Sólo es aplicable si normal_link_function o
link_function_type es POWER.

Capítulo 13. Propiedades de nodos de modelado 223


Tabla 130. Propiedades de gle (continuación)
Propiedades de gle Valores Descripción de la propiedad
tweedie_param número Valor del parámetro de función de enlace que hay
que utilizar. Solo es aplicable si
dist_link_combination está establecido en
TweedieIdentity, o link_function_type es
TWEEDIE.
use_predefined_inputs flag Indica si los campos de efectos del modelo deben
ser aquellos definidos anteriormente como
campos de entrada (true) o han de ser los campos
fixed_effects_list (false).
model_effects_list structured Si use_predefined_inputs es falso, especifica los
campos de entrada que se han de utilizar como
campos de efectos del modelo.
use_intercept flag Si es true, el valor predeterminado. incluye la
interceptación en el modelo.
regression_weight_field campo Campo a utilizar como campo de ponderación de
análisis.
use_offset Ninguno Indica cómo se especifica la compensación. El
Value valor None significa que no se ha utilizado
Variable compensación.
offset_value número El valor que se ha de utilizar para desplazamiento
si use_offset se establece en offset_value.
offset_field campo El valor que se ha de utilizar para desplazamiento
si use_offset se establece en offset_field.
target_category_order Ascending Orden de clasificación para objetivos categóricos.
Descending El valor predeterminado es Ascending.
inputs_category_order Ascending Orden de clasificación para predictores
Descending categóricos. El valor predeterminado es
Ascending.
max_iterations entero Número máximo de iteraciones que ejecutará el
algoritmo. Un número entero no negativo; el valor
predeterminado es 100.
confidence_level número Nivel de confianza utilizado para calcular
estimaciones de intervalo de los coeficientes del
modelo. Un número entero no negativo; el valor
máximo es 100, el valor predeterminado es 95.
test_fixed_effects_coeffecients Modelo Método para calcular la matriz de covarianza de
robusta las estimaciones de los parámetros.
detect_outliers flag Si es verdadero, el algoritmo encuentra valores
atípicos de influencia para todas las distribuciones
excepto para la distribución multinomial.
conduct_trend_analysis flag Si el verdadero, el algoritmo realiza un análisis de
tendencias para el gráfico de dispersión.
estimation_method FISHER_SCORING Especifica el algoritmo de estimación de máxima
NEWTON_RAPHSON verosimilitud.
HYBRID
max_fisher_iterations entero Si se utiliza FISHER_SCORING estimation_method, el
número máximo de iteraciones. Mínimo 0,
máximo 20.

224 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 130. Propiedades de gle (continuación)
Propiedades de gle Valores Descripción de la propiedad
scale_parameter_method MLE Especifique el método que se va a utilizar para la
FIXED estimación del parámetro de escala.
DEVIANCE
PEARSON_CHISQUARE
scale_value número Solo está disponible si scale_parameter_method
está establecido en Fixed.
negative_binomial_method MLE Especifique el método que se va a utilizar para la
FIXED estimación del parámetro auxiliar binomial
negativo.
negative_binomial_value número Solo está disponible si negative_binomial_method
está establecido en Fixed.
use_p_converge flag Opción para la convergencia de parámetros.
p_converge número Blanco, o cualquier valor positivo.
p_converge_type flag Verdadero = Absoluto, Falso = Relativo
use_l_converge flag Opción para la convergencia log-likelihood.
l_converge número Blanco, o cualquier valor positivo.
l_converge_type flag Verdadero = Absoluto, Falso = Relativo
use_h_converge flag Opción para la convergencia hessiana.
h_converge número Blanco, o cualquier valor positivo.
h_converge_type flag Verdadero = Absoluto, Falso = Relativo
max_iterations entero Número máximo de iteraciones que ejecutará el
algoritmo. Un número entero no negativo; el valor
predeterminado es 100.
sing_tolerance entero
use_model_selection flag Habilita los controles de umbral de parámetro y
de método de selección de modelos.
method LASSO Determina el método de selección de modelos, o
ELASTIC_NET si está utilizando Ridge, el método de
FORWARD_STEPWISE regularización utilizado.
RIDGE
detect_two_way_interactions flag Si es True, el modelo detectará automáticamente
interacciones bidireccionales entre campos de
entrada.

Este control solo debería estar habilitado si el


modelo es solo efectos principales (es decir, donde
el usuario no ha creado ningún efecto de orden
superior) y si el method seleccionado es Paso
adelante, Lazo, o Red elástica.

Capítulo 13. Propiedades de nodos de modelado 225


Tabla 130. Propiedades de gle (continuación)
Propiedades de gle Valores Descripción de la propiedad
automatic_penalty_params flag Solo está disponible si la selección del modelo
method es Lazo o red elástica.

Utilice esta función para especificar los


parámetros de penalización asociados a los
métodos de selección de variables Lasso o Red
elástica.

Si es True, se utilizan los valores


predeterminados. Si es False, se pueden
especificar los parámetros de penalización y los
valores personalizados habilitados.
lasso_penalty_param número Solo está disponible si la selección del modelo
method es Lazo o Red elástica y
automatic_penalty_params es False. Especifique
el valor del parámetro de penalización para Lasso.
elastic_net_penalty_param1 número Solo está disponible si la selección del modelo
method es Lazo o Red elástica y
automatic_penalty_params es False. Especifique
el valor del parámetro de penalización para el
parámetro 1 de Red elástica.
elastic_net_penalty_param2 número Solo está disponible si la selección del modelo
method es Lazo o Red elástica y
automatic_penalty_params es False. Especifique
el valor del parámetro de penalización para el
parámetro 2 de Red elástica.
probability_entry número Solo está disponible si el method seleccionado es
Paso adelante. Especifique el nivel de significación
del criterio estadístico F para la inclusión de
efectos.
probability_removal número Solo está disponible si el method seleccionado es
Paso adelante. Especifique el nivel de significación
del criterio estadístico F para la eliminación de
efectos.
use_max_effects flag Solo está disponible si el method seleccionado es
Paso adelante.

Habilita el control max_effects.

Si es False, el número de efectos predeterminado


incluido debería ser igual al número total de
efectos proporcionados al modelo, menos la
interceptación.
max_effects entero Especifique el número máximo de efectos cuando
se utiliza el método de creación de paso adelante.
use_max_steps flag Habilita el control max_steps.

Si es False, el número predeterminado de pasos


debe ser igual a tres veces el número de efectos
proporcionado al modelo, excluyendo la
interceptación.

226 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 130. Propiedades de gle (continuación)
Propiedades de gle Valores Descripción de la propiedad
max_steps entero Especifique el número máximo de pasos que se
van a realizar cuando se utiliza el method de
creación de paso adelante.
use_model_name flag Indica si hay que especificar un nombre
personalizado para el modelo (true) o si se ha de
utilizar el nombre generado por el sistema false).
El valor predeterminado es false.
model_name cadena Si use_model_name es true, especifica el nombre
de modelo que se va a utilizar.
usePI flag Si true, se calcula la importancia de predictor.

propiedades de kmeansnode
El nodo K-medias agrupa conjuntos de datos en grupos distintos (o clústeres). El método
define un número fijo de clústeres, de forma iterativa asigna registros a los clústeres y ajusta
los centros de los clústeres hasta que no se pueda mejorar el modelo. En lugar de intentar
predecir un resultado, los modelos de k-medias utilizan un proceso conocido como
aprendizaje no supervisado para revelar los patrones del conjunto de campos de entrada.

Ejemplo
node = [Link]("kmeans", "My node")
# "Fields" tab
[Link]("custom_fields", True)
[Link]("inputs", ["Cholesterol", "BP", "Drug", "Na", "K", "Age"])
# "Model" tab
[Link]("use_model_name", True)
[Link]("model_name", "Kmeans_allinputs")
[Link]("num_clusters", 9)
[Link]("gen_distance", True)
[Link]("cluster_label", "Number")
[Link]("label_prefix", "Kmeans_")
[Link]("optimize", "Speed")
# "Expert" tab
[Link]("mode", "Expert")
[Link]("stop_on", "Custom")
[Link]("max_iterations", 10)
[Link]("tolerance", 3.0)
[Link]("encoding_value", 0.3)
Tabla 131. propiedades de kmeansnode
Propiedad de kmeansnode Valores Descripción de la propiedad
inputs [field1 ... fieldN] Los modelos de K-Medias realizan un
análisis de clústeres en un conjunto de
campos de entrada pero no utilizan ningún
campo objetivo. Los campos de
ponderación y frecuencia no se usan.
Consulte el tema “Propiedades comunes de
nodos de modelado” en la página 185 para
obtener más información.
num_clusters número
gen_distance flag

Capítulo 13. Propiedades de nodos de modelado 227


Tabla 131. propiedades de kmeansnode (continuación)
Propiedad de kmeansnode Valores Descripción de la propiedad
cluster_label Cadena
Number
label_prefix cadena
mode Simple
Valores avanzados
stop_on Predeterminado
Personalizado
max_iterations número
tolerance número
encoding_value número
optimize Speed Se utiliza para especificar si la generación
Memory del modelo se debe optimizar para la
velocidad o la memoria.

propiedades de knnnode
El nodo k de modelado de vecino (KNN) asocia el nuevo caso con la categoría o valor de los
objetos k junto a él en el espacio de predictores, donde k es un entero. Los casos parecidos
están próximos y los que no lo son están alejados entre sí.

Ejemplo
node = [Link]("knn", "My node")
# Objectives tab
[Link]("objective", "Custom")
# Settings tab - Neighbors panel
[Link]("automatic_k_selection", False)
[Link]("fixed_k", 2)
[Link]("weight_by_importance", True)
# Settings tab - Analyze panel
[Link]("save_distances", True)
Tabla 132. propiedades de knnnode
Propiedades de knnnode Valores Descripción de la propiedad
de errores PredictTarget
IdentifyNeighbors
objective Balance
Speed
Exactitud
Personalizado
normalize_ranges flag
use_case_labels flag Seleccione esta casilla de verificación para
activar la siguiente opción.
case_labels_field campo
identify_focal_cases flag Seleccione esta casilla de verificación para
activar la siguiente opción.
focal_cases_field campo

228 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 132. propiedades de knnnode (continuación)
Propiedades de knnnode Valores Descripción de la propiedad
automatic_k_selection flag
fixed_k entero Se activa únicamente si el valor de
automatic_k_selection es False.
minimum_k entero Se activa únicamente si el valor de
automatic_k_selection es True.
maximum_k entero
distance_computation Euclidean
CityBlock
weight_by_importance flag
range_predictions Media
Mediana
perform_feature_selection flag
forced_entry_inputs [field1 ... fieldN]
stop_on_error_ratio flag
number_to_select entero
minimum_change número
validation_fold_assign_by_field flag
number_of_folds entero Sólo se activa si el valor de
validation_fold_assign_by_field es False
set_random_seed flag
random_seed número
folds_field campo Sólo se activa si el valor de
validation_fold_assign_by_field es True
all_probabilities flag
save_distances flag
calculate_raw_propensities flag
calculate_adjusted_propensities flag
adjusted_propensity_partition Test
Validation

propiedades de kohonennode
El nodo Kohonen genera un tipo de red neuronal que se puede usar para agrupar un
conjunto de datos en grupos distintos. Cuando la red se termina de entrenar, los registros que
son similares se deberían cerrar juntos en el mapa de resultados, mientras que los registros
que son diferentes aparecerían aparte. Puede observar el número de observaciones capturadas
por cada unidad en el nugget de modelo para identificar unidades fuertes. Esto le
proporcionará una idea del número apropiado de clústeres.

Ejemplo
node = [Link]("kohonen", "My node")
# "Model" tab
[Link]("use_model_name", False)
[Link]("model_name", "Symbolic Cluster")
[Link]("stop_on", "Time")

Capítulo 13. Propiedades de nodos de modelado 229


[Link]("time", 1)
[Link]("set_random_seed", True)
[Link]("random_seed", 12345)
[Link]("optimize", "Speed")
# "Expert" tab
[Link]("mode", "Expert")
[Link]("width", 3)
[Link]("length", 3)
[Link]("decay_style", "Exponential")
[Link]("phase1_neighborhood", 3)
[Link]("phase1_eta", 0.5)
[Link]("phase1_cycles", 10)
[Link]("phase2_neighborhood", 1)
[Link]("phase2_eta", 0.2)
[Link]("phase2_cycles", 75)
Tabla 133. propiedades de kohonennode
Propiedad de kohonennode Valores Descripción de la propiedad
inputs [field1 ... fieldN] Los modelos Kohonen utilizan una lista de
campos de entrada, pero no de campos
objetivo. Los campos de frecuencia y
ponderación no se usan. Consulte el tema
“Propiedades comunes de nodos de
modelado” en la página 185 para obtener
más información.
continue flag
show_feedback flag
stop_on Predeterminado
Hora
time número
optimize Speed Se utiliza para especificar si la generación
Memory del modelo se debe optimizar para la
velocidad o la memoria.
cluster_label flag
mode Simple
Valores avanzados
width número
longitud número
decay_style Lineal
Exponential
phase1_neighborhood número
phase1_eta número
phase1_cycles número
phase2_neighborhood número
phase2_eta número
phase2_cycles número

230 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Propiedades de linearnode
Los modelos de regresión lineal predicen un objetivo continuo tomando como base las
relaciones lineales entre el destino y uno o más predictores.

Ejemplo
node = [Link]("linear", "My node")
# Build Options tab - Objectives panel
[Link]("objective", "Standard")
# Build Options tab - Model Selection panel
[Link]("model_selection", "BestSubsets")
[Link]("criteria_best_subsets", "ASE")
# Build Options tab - Ensembles panel
[Link]("combining_rule_categorical", "HighestMeanProbability")
Tabla 134. Propiedades de linearnode.
Propiedades de linearnode Valores Descripción de la propiedad
objetivo campo Especifica un campo de objetivo único.

inputs [field1 ... fieldN] Campos de predictor utilizados por el


modelo.
continue_training_existing_model tag
objective Standard psm se utiliza para conjuntos de datos de
Agregación autodocimante grandes dimensiones y requiere una
Aumento conexión al Servidor.
psm
use_auto_data_preparation tag
confidence_level number
model_selection ForwardStepwise
BestSubsets
Ninguno
criteria_forward_stepwise AICC
Estadísticas F
R cuadrado corregido
ASE
probability_entry number
probability_removal number
use_max_effects tag
max_effects number
use_max_steps tag
max_steps number
criteria_best_subsets AICC
R cuadrado corregido
ASE
combining_rule_continuous Media
Mediana

Capítulo 13. Propiedades de nodos de modelado 231


Tabla 134. Propiedades de linearnode (continuación).
Propiedades de linearnode Valores Descripción de la propiedad
component_models_n number
use_random_seed tag
random_seed number
use_custom_model_name tag
custom_model_name cadena
use_custom_name tag
custom_name cadena
tooltip cadena
palabras clave cadena
annotation cadena

Propiedades de linearasnode
Los modelos de regresión lineal predicen un objetivo continuo tomando como base las
relaciones lineales entre el destino y uno o más predictores.

Tabla 135. Propiedades de linearasnode


Propiedades de linearasnode Valores Descripción de la propiedad
objetivo campo Especifica un campo de objetivo único.

inputs [field1 ... fieldN] Campos de predictor utilizados por el


modelo.
weight_field campo Campo de análisis usado por el modelo.
custom_fields flag El valor predeterminado es TRUE.
intercept flag El valor predeterminado es TRUE.
detect_2way_interaction flag Indica si debe tenerse en cuenta la
interacción bidireccional. El valor
predeterminado es TRUE.
cin número Intervalo de confianza usado para calcular
las estimaciones de los coeficientes del
modelo. Especifique un valor mayor que 0
y menor que 100. El valor predeterminado
es 95.
factor_order ascending Orden de clasificación para predictores
descending categóricos. El valor predeterminado es
ascending.
var_select_method ForwardStepwise El método de selección de modelo que se
BestSubsets va a usar. El valor predeterminado es
none ForwardStepwise.

232 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 135. Propiedades de linearasnode (continuación)
Propiedades de linearasnode Valores Descripción de la propiedad
criteria_for_forward_stepwise AICC La estadística utilizada para determinar si
Estadísticas F un efecto debe añadirse o eliminarse del
R cuadrado corregido modelo. El valor predeterminado es
ASE AdjustedRSquare.
pin número El efecto con el valor p más pequeño con
respecto a este umbral de pin especificado
se añade al modelo. El valor
predeterminado es 0.05.
pout número Cualquier efecto del modelo con un valor p
superior a este umbral de pout especificado
se eliminará. El valor predeterminado es
0,10.
use_custom_max_effects flag Indica si debe utilizarse el número máximo
de efectos en el modelo final. El valor
predeterminado es FALSE.
max_effects número Número máximo de efectos por usar en el
modelo final. El valor predeterminado es 1.
use_custom_max_steps flag Indica si debe utilizarse el número máximo
de pasos. El valor predeterminado es FALSE.
max_steps número El número máximo de pasos antes de que
se detenga el algoritmo escalonado. El valor
predeterminado es 1.
criteria_for_best_subsets AICC La modalidad de criterios a utilizar. El
R cuadrado corregido valor predeterminado es AdjustedRSquare.
ASE

Propiedades de logregnode
La regresión logística es una técnica de estadístico para clasificar los registros en función los
valores de los campos de entrada. Es análoga a la regresión lineal pero toma un campo
objetivo categórico en lugar de uno numérico.

Ejemplo multinomial
node = [Link]("logreg", "My node")
# "Fields" tab
[Link]("custom_fields", True)
[Link]("target", "Drug")
[Link]("inputs", ["BP", "Cholesterol", "Age"])
[Link]("partition", "Test")
# "Model" tab
[Link]("use_model_name", True)
[Link]("model_name", "Log_reg Drug")
[Link]("use_partitioned_data", True)
[Link]("method", "Stepwise")
[Link]("logistic_procedure", "Multinomial")
[Link]("multinomial_base_category", "BP")
[Link]("model_type", "FullFactorial")
[Link]("custom_terms", [["BP", "Sex"], ["Age"], ["Na", "K"]])
[Link]("include_constant", False)

Capítulo 13. Propiedades de nodos de modelado 233


# "Expert" tab
[Link]("mode", "Expert")
[Link]("scale", "Pearson")
[Link]("scale_value", 3.0)
[Link]("all_probabilities", True)
[Link]("tolerance", "1.0E-7")
# "Convergence..." section
[Link]("max_iterations", 50)
[Link]("max_steps", 3)
[Link]("l_converge", "1.0E-3")
[Link]("p_converge", "1.0E-7")
[Link]("delta", 0.03)
# "Output..." section
[Link]("summary", True)
[Link]("likelihood_ratio", True)
[Link]("asymptotic_correlation", True)
[Link]("goodness_fit", True)
[Link]("iteration_history", True)
[Link]("history_steps", 3)
[Link]("parameters", True)
[Link]("confidence_interval", 90)
[Link]("asymptotic_covariance", True)
[Link]("classification_table", True)
# "Stepping" options
[Link]("min_terms", 7)
[Link]("use_max_terms", True)
[Link]("max_terms", 10)
[Link]("probability_entry", 3)
[Link]("probability_removal", 5)
[Link]("requirements", "Containment")

Ejemplo binomial
node = [Link]("logreg", "My node")
# "Fields" tab
[Link]("custom_fields", True)
[Link]("target", "Cholesterol")
[Link]("inputs", ["BP", "Drug", "Age"])
[Link]("partition", "Test")
# "Model" tab
[Link]("use_model_name", False)
[Link]("model_name", "Log_reg Cholesterol")
[Link]("multinomial_base_category", "BP")
[Link]("use_partitioned_data", True)
[Link]("binomial_method", "Forwards")
[Link]("logistic_procedure", "Binomial")
[Link]("binomial_categorical_input", "Sex")
[Link]("binomial_input_contrast", "Sex", "Simple")
[Link]("binomial_input_category", "Sex", "Last")
[Link]("include_constant", False)
# "Expert" tab
[Link]("mode", "Expert")
[Link]("scale", "Pearson")
[Link]("scale_value", 3.0)
[Link]("all_probabilities", True)
[Link]("tolerance", "1.0E-7")
# "Convergence..." section
[Link]("max_iterations", 50)
[Link]("l_converge", "1.0E-3")
[Link]("p_converge", "1.0E-7")
# "Output..." section

234 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


[Link]("binomial_output_display", "at_each_step")
[Link]("binomial_goodness_of_fit", True)
[Link]("binomial_iteration_history", True)
[Link]("binomial_parameters", True)
[Link]("binomial_ci_enable", True)
[Link]("binomial_ci", 85)
# "Stepping" options
[Link]("binomial_removal_criterion", "LR")
[Link]("binomial_probability_removal", 0.2)
Tabla 136. Propiedades de logregnode.
Propiedades de logregnode Valores Descripción de la propiedad
objetivo campo Los modelos de regresión logística
requieren un único campo objetivo y uno o
más campos de entrada. Los campos de
frecuencia y ponderación no se usan.
Consulte el tema “Propiedades comunes
de nodos de modelado” en la página 185
para obtener más información.
logistic_procedure Binomial
Multinomial
include_constant tag
mode Simple
Expert
método Intro
Stepwise
Forwards
Backwards
BackwardsStepwise
binomial_method Intro
Forwards
Backwards
model_type MainEffects Si FullFactorial se especifica como el tipo
FullFactorial de modelo, no se ejecutarán los métodos
Custom por pasos, aunque así se indique. En su
lugar, el método utilizado será Enter.

Si el tipo de modelo se establece en Custom


pero no se ha especificado ningún campo
personalizado, se generará un modelo de
efectos principales.
custom_terms [[BP Sexo][BP][Edad]]
multinomial_base_category cadena Especifica cómo se determina la categoría
de referencia.
binomial_categorical_input cadena
binomial_input_contrast Indicator Propiedad con clave para la entrada
Simple categórica que especifica cómo se
Diferencia determina el contraste.
Helmert
Repeated
Polinómico
Desviación

Capítulo 13. Propiedades de nodos de modelado 235


Tabla 136. Propiedades de logregnode (continuación).
Propiedades de logregnode Valores Descripción de la propiedad
binomial_input_category Primero Propiedad con clave para la entrada
Last categórica que especifica cómo se
determina la categoría de referencia.

scale Ninguno
UserDefined
Pearson
Deviance
scale_value number
all_probabilities tag
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 tag
max_terms number
entry_criterion Puntuación
LR
removal_criterion LR
Wald
probability_entry number
probability_removal number
binomial_probability_entry number
binomial_probability_removal number
requirements HierarchyDiscrete HierarchyAll
Containment
Ninguno
max_iterations number
max_steps number
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
delta number
iteration_history tag
history_steps number

236 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 136. Propiedades de logregnode (continuación).
Propiedades de logregnode Valores Descripción de la propiedad
summary tag
likelihood_ratio tag
asymptotic_correlation tag
goodness_fit tag
parameters tag
confidence_interval number
asymptotic_covariance tag
classification_table tag
stepwise_summary tag
info_criteria tag
monotonicity_measures tag
binomial_output_display at_each_step
at_last_step
binomial_goodness_of_fit tag
binomial_parameters tag
binomial_iteration_history tag
binomial_classification_plots tag
binomial_ci_enable tag
binomial_ci number
binomial_residual valores atípicos
all
binomial_residual_enable tag
binomial_outlier_threshold number
binomial_classification_cutoff number
binomial_removal_criterion LR
Wald
Conditional
calculate_variable_importance tag
calculate_raw_propensities tag

propiedades de lsvmnode
El nodo Máquina de vectores de soporte lineal (LSVM) le permite clasificar datos en uno o
dos grupos sin que haya un ajuste por exceso. LSVM es lineal y funciona bien con conjuntos
de datos grandes, como aquellos con un gran número de registros.

Tabla 137. propiedades de lsvmnode


Propiedades lsvmnode Valores Descripción de la propiedad
intercept flag Incluye la interceptación del modelo.
El valor predeterminado es True.

Capítulo 13. Propiedades de nodos de modelado 237


Tabla 137. propiedades de lsvmnode (continuación)
Propiedades lsvmnode Valores Descripción de la propiedad
target_order Ascending Especifica el orden de clasificación del
Descending objetivo categórico. Si ignora para
objetivos continuos. El valor
predeterminado es Ascending.
precision número Sólo se utiliza si el nivel de medición
del campo objetivo es Continuo.
Especifica el parámetro relacionado
con la sensibilidad de la pérdida de
regresión. El mínimo es 0 y no hay
máximo. El valor predeterminado es
0.1.
exclude_missing_values flag Si es True, se excluye un registro si
falta algún valor único. El valor
predeterminado es False.
penalty_function L1 Especifica el tipo de función de
L2 penalización utilizado. El valor
predeterminado es L2.
lambda número Parámetro de penalización
(regularización).
calculate_variable_importance flag En modelos que producen una
medida adecuada de importancia, esta
opción muestra un gráfico que indica
la importancia relativa de cada
predictor al estimar el [Link]
modelos que producen una medida
adecuada de importancia, esta opción
muestra un gráfico que indica la
importancia relativa de cada predictor
al estimar el modelo. Tenga en cuenta
que la importancia variable puede ser
tardar más en calcularse en algunos
modelos, especialmente al trabajar con
grandes conjuntos de datos y está
desactivada de forma predeterminada
para algunos modelos como resultado.
La importancia variable no está
disponible en los modelos de lista de
decisiones.

propiedades de neuralnetnode
Importante: En este release está disponible una versión más reciente del nodo de modelado Red
neuronal, con características mejoradas, y se describe en la siguiente sección (red neuronal). Aunque aún
puede generar y puntuar un modelo con la versión anterior, recomendamos que actualice sus scripts para
que se use la nueva versión. Los detalles de la versión anterior se conservan aquí como referencia.

Ejemplo
node = [Link]("neuralnet", "My node")
# "Fields" tab
[Link]("custom_fields", True)
[Link]("targets", ["Drug"])
[Link]("inputs", ["Age", "Na", "K", "Cholesterol", "BP"])
# "Model" tab

238 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


[Link]("use_partitioned_data", True)
[Link]("method", "Dynamic")
[Link]("train_pct", 30)
[Link]("set_random_seed", True)
[Link]("random_seed", 12345)
[Link]("stop_on", "Time")
[Link]("accuracy", 95)
[Link]("cycles", 200)
[Link]("time", 3)
[Link]("optimize", "Speed")
# sección "Opciones de experto para método múltiple"
[Link]("m_topologies", "5 30 5; 2 20 3, 1 10 1")
[Link]("m_non_pyramids", False)
[Link]("m_persistence", 100)
Tabla 138. propiedades de neuralnetnode
Propiedad de neuralnetnode Valores Descripción de la propiedad
targets [field1 ... fieldN] El nodo Red neuronal espera uno o varios
campos objetivo y uno o más campos de
entrada. Los campos de frecuencia y
ponderación se omiten. Consulte el tema
“Propiedades comunes de nodos de
modelado” en la página 185 para obtener
más información.
method Quick
Dynamic
Multiple
Prune
ExhaustivePrune
RBFN
prevent_overtrain flag
train_pct número
set_random_seed flag
random_seed número
mode Simple
Valores avanzados
stop_on Predeterminado Modo de parada.
Exactitud
Cycles
Hora
exactitud número Precisión de parada.
cycles número Ciclos para entrenar.
time número Tiempo para entrenar (minutos).
continue flag
show_feedback flag
binary_encode flag
use_last_model flag
gen_logfile flag
logfile_name cadena
alpha número
initial_eta número

Capítulo 13. Propiedades de nodos de modelado 239


Tabla 138. propiedades de neuralnetnode (continuación)
Propiedad de neuralnetnode Valores Descripción de la propiedad
high_eta número
low_eta número
eta_decay_cycles número
hid_layers One
Two
Three
hl_units_one número
hl_units_two número
hl_units_three número
persistence número
m_topologies cadena
m_non_pyramids flag
m_persistence número
p_hid_layers One
Two
Three
p_hl_units_one número
p_hl_units_two número
p_hl_units_three número
p_persistence número
p_hid_rate número
p_hid_pers número
p_inp_rate número
p_inp_pers número
p_overall_pers número
r_persistence número
r_num_clusters número
r_eta_auto flag
r_alpha número
r_eta número
optimize Speed Se utiliza para especificar si la generación
Memory del modelo se debe optimizar para la
velocidad o la memoria.
calculate_variable_importance flag Nota: La propiedad sensitivity_analysis
utilizada en versiones anteriores se ha
desaprobado en favor de esta propiedad. La
propiedad anterior se sigue admitiendo,
pero se recomienda
calculate_variable_importance.
calculate_raw_propensities flag
calculate_adjusted_propensities flag
adjusted_propensity_partition Test
Validation

240 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Propiedades de neuralnetwork
El nodo Red neuronal utiliza un modelo simplificado que emula el modo en que el cerebro
humano procesa la información: Funciona simultaneando un número elevado de unidades
simples de procesamiento interconectadas que parecen versiones abstractas de neuronas. Las
redes neuronales son dispositivos eficaces de cálculo de funciones generales y requieren un
conocimiento matemático o estadístico mínimo para entrenarlas o aplicarlas.

Ejemplo
node = [Link]("neuralnetwork", "My node")
# Build Options tab - Objectives panel
[Link]("objective", "Standard")
# Build Options tab - Ensembles panel
[Link]("combining_rule_categorical", "HighestMeanProbability")
Tabla 139. Propiedades de neuralnetwork
Propiedades de neuralnetworknode Valores Descripción de la propiedad
targets [field1 ... fieldN] Especifica campos objetivo.
inputs [field1 ... fieldN] Campos de predictor utilizados por el
modelo.
splits [campo1 ... fieldN Especifica el campo o campos para utilizar
en el modelado de divisiones.
use_partition flag Si se ha definido un campo de partición,
esta opción garantiza que sólo se utilizarán
los datos de la partición de entrenamiento
para la generación del modelo.
continue flag Continuar entrenando modelo existente.
objective Standard psm se utiliza para conjuntos de datos de
Agregación autodocimante grandes dimensiones y requiere una
Aumento conexión al Servidor.
psm
method MultilayerPerceptron
RadialBasisFunction
use_custom_layers flag
first_layer_units número
second_layer_units número
use_max_time flag
max_time número
use_max_cycles flag
max_cycles número
use_min_accuracy flag
min_accuracy número
combining_rule_categorical Voting
HighestProbability
HighestMeanProbability
combining_rule_continuous Media
Mediana

component_models_n número

Capítulo 13. Propiedades de nodos de modelado 241


Tabla 139. Propiedades de neuralnetwork (continuación)
Propiedades de neuralnetworknode Valores Descripción de la propiedad
overfit_prevention_pct número
use_random_seed flag
random_seed número
missing_values listwiseDeletion
missingValueImputation
use_model_name booleano
model_name cadena
confidence onProbability
onIncrease
score_category_probabilities flag
max_categories número
score_propensity flag
use_custom_name flag
custom_name cadena
tooltip cadena
palabras clave cadena
annotation cadena

propiedades de questnode
El nodo QUEST proporciona un método de clasificación binario para generar árboles de
decisión; está diseñado para reducir el tiempo de procesamiento necesario para realizar los
análisis de C&RT y reducir la tendencia de los métodos de clasificación de árboles para
favorecer a las entradas que permitan realizar más divisiones. Los campos de entrada pueden
ser continuos (rango numérico), sin embargo el campo objetivo debe ser categórico. Todas las
divisiones son binarias.

Ejemplo
node = [Link]("quest", "My node")
[Link]("custom_fields", True)
[Link]("target", "Drug")
[Link]("inputs", ["Age", "Na", "K", "Cholesterol", "BP"])
[Link]("model_output_type", "InteractiveBuilder")
[Link]("use_tree_directives", True)
[Link]("max_surrogates", 5)
[Link]("split_alpha", 0.03)
[Link]("use_percentage", False)
[Link]("min_parent_records_abs", 40)
[Link]("min_child_records_abs", 30)
[Link]("prune_tree", True)
[Link]("use_std_err", True)
[Link]("std_err_multiplier", 3)

242 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 140. propiedades de questnode
Propiedad de questnode Valores Descripción de la propiedad
target campo Los modelos QUEST requieren un único
campo objetivo y uno o más campos de
entrada. También se puede especificar un
campo de frecuencia. Consulte el tema
“Propiedades comunes de nodos de
modelado” en la página 185 para obtener
más información.
continue_training_existing_model flag
objective Standard psm se utiliza para conjuntos de datos de
Aumento grandes dimensiones y requiere una
Agregación autodocimante conexión al Servidor.
psm
model_output_type Single
InteractiveBuilder
use_tree_directives flag
tree_directives cadena
use_max_depth Predeterminado
Personalizado
max_depth entero Máxima profundidad del árbol, desde 0 a
1000. Sólo se utiliza si use_max_depth =
Custom.
prune_tree flag Poda del árbol para evitar sobreajustes.
use_std_err flag Use la diferencia máxima en riesgos (en
errores estándar).
std_err_multiplier número Diferencia máxima.
max_surrogates número Número máximo de sustitutos.
use_percentage flag
min_parent_records_pc número
min_child_records_pc número
min_parent_records_abs número
min_child_records_abs número
use_costs flag
costes structured Propiedad estructurada.
priors Datos
Equal
Personalizado
custom_priors structured Propiedad estructurada.
adjust_priors flag
trails número Número de modelos de componente para
un aumento o agregación autodocimante.
set_ensemble_method Voting Regla de combinación predeterminada para
HighestProbability objetivos categóricos.
HighestMeanProbability
range_ensemble_method Media Regla de combinación predeterminada para
Mediana objetivos continuos.

Capítulo 13. Propiedades de nodos de modelado 243


Tabla 140. propiedades de questnode (continuación)
Propiedad de questnode Valores Descripción de la propiedad
large_boost flag Aplicar aumento a conjunto de datos muy
grandes.
split_alpha número Nivel de significancia para división.
train_pct número Conjunto de prevención sobreajustado.
set_random_seed flag Opción replicar resultados.
seed número
calculate_variable_importance flag
calculate_raw_propensities flag
calculate_adjusted_propensities flag
adjusted_propensity_partition Test
Validation

propiedades randomtrees
El nodo Árboles aleatorios es similar al nodo C&RT existente; sin embargo, el nodo Árboles
aleatorios se ha diseñado para procesar grandes cantidades de datos (Big Data) para crear un
solo árbol y mostrar el modelo resultante en el visor de la salida que se ha añadido en SPSS
Modeler versión 17. El nodo Árboles aleatorios genera un árbol de decisión que se utiliza
para predecir o clasificar observaciones futuras. El método utiliza la partición reiterada para
dividir los registros de entrenamiento en segmentos minimizando las impurezas en cada paso,
donde un nodo se considera puro si el 100% de los casos del nodo corresponden a una
categoría específica del campo objetivo. Los campos de entrada y objetivo pueden ser
continuos (rango numérico) o categóricos (nominal, ordinal o marca). Todas las divisiones son
binarias (sólo se crean dos subgrupos).

Tabla 141. propiedades randomtrees


Propiedades randomtrees Valores Descripción de la propiedad
target campo En el nodo Árboles aleatorios, los modelos
requieren un único objetivo y uno o más
campos de entrada. También se puede
especificar un campo de frecuencia.
Consulte el tema “Propiedades comunes de
nodos de modelado” en la página 185 para
obtener más información.
number_of_models entero Determina el número de modelos a
construir como parte del modelado de
conjunto.
use_number_of_predictors flag Determina si se utiliza
number_of_predictors.
number_of_predictors entero Especifica el número de predictores que se
van a utilizar al crear modelos de división.
use_stop_rule_for_accuracy flag Determina si la creación del modelo se
detiene cuando no se puede mejorar la
precisión.
sample_size número Reduzca este valor para mejorar el
rendimiento del procesar conjuntos de
datos muy grandes.

244 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 141. propiedades randomtrees (continuación)
Propiedades randomtrees Valores Descripción de la propiedad
handle_imbalanced_data flag Si el objetivo del modelo es un resultado de
marca determinado, y la proporción del
resultado deseado con respecto a un
resultado no deseado es muy pequeña, los
datos se desequilibran y el muestreo de
simulación realizado por el modelo puede
afectar a la exactitud del mismo. Habilite el
manejo de datos desequilibrados para que
el modelo capture una proporción mayor
del resultado deseado y genere un modelo
más sólido.
use_weighted_sampling flag Si se establece en False, las variables para
cada nodo se seleccionan aleatoriamente
con la misma probabilidad. Si es True, las
variables se ponderan y se seleccionan de
acuerdo con ello.
max_node_number entero Número máximo de nodos permitidos en
árboles individuales. Si el número va a
superarse en la división siguiente, el
crecimiento del árbol se detiene.
max_depth entero Máxima profundidad del árbol antes de
que se detenga el crecimiento.
min_child_node_size entero Determina el número mínimo de registros
permitidos en un nodo hijo después de que
se divida el nodo padre. Si un nodo hijo va
a contener menos registros de los
especificados aquí, el nodo padre no se
dividirá.
use_costs flag
costes structured Propiedad estructurada. El formato es una
lista de 3 valores: el valor real, el valor
predicho y el coste si dicha predicción es
errónea. Por ejemplo:
[Link]("costs", [["drugA",
"drugB", 3.0], ["drugX", "drugY", 4.0]])
default_cost_increase ninguno Nota: sólo se habilita para objetivos
lineal ordinales.
square
personalizada Establezca valores predeterminados en la
matriz de costes.
max_pct_missing entero Si el porcentaje de valores faltantes en
cualquier entrada es mayor que el valor
especificado aquí, la entrada se excluye.
Mínimo 0, máximo 100.
exclude_single_cat_pct entero Si un valor de categoría representa un
porcentaje mayor de los registros que el
especificado aquí, todo el campo se excluye
de la creación de modelos. Mínimo 1,
máximo 99.
max_category_number entero Si el número de categorías de un campo
supera este valor, el campo se excluye de la
creación de modelos. El mínimo es 2.

Capítulo 13. Propiedades de nodos de modelado 245


Tabla 141. propiedades randomtrees (continuación)
Propiedades randomtrees Valores Descripción de la propiedad
min_field_variation número Si el coeficiente de variación de un campo
continuo es inferior a este valor, el campo
se excluye de la creación de modelos.
num_bins entero Sólo se utiliza si los datos están formados
por entradas continuas. Establezca el
número de intervalos de frecuencia que
deben utilizarse para las entradas; las
opciones son 2, 4, 5, 10, 20, 25, 50 o 100.
topN entero Especifica el número de reglas para
informar. El valor predeterminado es 50,
con un mínimo de 1 y un máximo de 1000.

Propiedades de regressionnode
La regresión lineal es una técnica de estadístico común utilizada para resumir datos y realizar
predicciones ajustando una superficie o línea recta que minimice las discrepancias existentes
entre los valores de salida reales y los predichos.

Nota: El nodo Lineal reemplazará al nodo Regresión en una versión futura. Recomendamos que a partir
de ahora utilice modelos lineales para la regresión lineal.

Ejemplo
node = [Link]("regression", "My node")
# "Fields" tab
[Link]("custom_fields", True)
[Link]("target", "Age")
[Link]("inputs", ["Na", "K"])
[Link]("partition", "Test")
[Link]("use_weight", True)
[Link]("weight_field", "Drug")
# "Model" tab
[Link]("use_model_name", True)
[Link]("model_name", "Regression Age")
[Link]("use_partitioned_data", True)
[Link]("method", "Stepwise")
[Link]("include_constant", False)
# "Expert" tab
[Link]("mode", "Expert")
[Link]("complete_records", False)
[Link]("tolerance", "1.0E-3")
# "Stepping..." section
[Link]("stepping_method", "Probability")
[Link]("probability_entry", 0.77)
[Link]("probability_removal", 0.88)
[Link]("F_value_entry", 7.0)
[Link]("F_value_removal", 8.0)
# "Output..." section
[Link]("model_fit", True)
[Link]("r_squared_change", True)
[Link]("selection_criteria", True)
[Link]("descriptives", True)

246 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


[Link]("p_correlations", True)
[Link]("collinearity_diagnostics", True)
[Link]("confidence_interval", True)
[Link]("covariance_matrix", True)
[Link]("durbin_watson", True)
Tabla 142. Propiedades de regressionnode
Propiedad de regressionnode Valores Descripción de la propiedad
target campo Los modelos de regresión requieren un
único campo objetivo y uno o más campos
de entrada. También se puede especificar
un campo de ponderación. Consulte el
tema “Propiedades comunes de nodos de
modelado” en la página 185 para obtener
más información.
method Intro
Stepwise
Backwards
Adelante
include_constant flag
use_weight flag
weight_field campo
mode Simple
Valores avanzados
complete_records flag
tolerance 1.0E-1 Utilice comillas dobles para los
1.0E-2 argumentos.
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 useP : utilizar la probabilidad de F
useF useF: utilizar el valor F
probability_entry número
probability_removal número
F_value_entry número
F_value_removal número
selection_criteria flag
confidence_interval flag
covariance_matrix flag
collinearity_diagnostics flag
regression_coefficients flag
exclude_fields flag
durbin_watson flag
model_fit flag

Capítulo 13. Propiedades de nodos de modelado 247


Tabla 142. Propiedades de regressionnode (continuación)
Propiedad de regressionnode Valores Descripción de la propiedad
r_squared_change flag
p_correlations flag
descriptives flag
calculate_variable_importance flag

propiedades de sequencenode
El nodo Secuencia encuentra reglas de asociación en datos secuenciales o en datos ordenados
en el tiempo. Una secuencia es una lista de conjuntos de elementos que tiende a producirse
en un orden previsible. Por ejemplo, si un cliente compra una cuchilla y una loción para
después del afeitado, probablemente comprará crema para afeitar la próxima vez que vaya a
comprar. El nodo Secuencia se basa en el algoritmo de reglas de asociación de CARMA, que
utiliza un método de dos pasos para encontrar las secuencias.

Ejemplo
node = [Link]("sequence", "My node")
# "Fields" tab
[Link]("id_field", "Age")
[Link]("contiguous", True)
[Link]("use_time_field", True)
[Link]("time_field", "Date1")
[Link]("content_fields", ["Drug", "BP"])
[Link]("partition", "Test")
# "Model" tab
[Link]("use_model_name", True)
[Link]("model_name", "Sequence_test")
[Link]("use_partitioned_data", False)
[Link]("min_supp", 15.0)
[Link]("min_conf", 14.0)
[Link]("max_size", 7)
[Link]("max_predictions", 5)
# "Expert" tab
[Link]("mode", "Expert")
[Link]("use_max_duration", True)
[Link]("max_duration", 3.0)
[Link]("use_pruning", True)
[Link]("pruning_value", 4.0)
[Link]("set_mem_sequences", True)
[Link]("mem_sequences", 5.0)
[Link]("use_gaps", True)
[Link]("min_item_gap", 20.0)
[Link]("max_item_gap", 30.0)

248 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 143. propiedades de sequencenode
Propiedad de sequencenode Valores Descripción de la propiedad
id_field campo Para crear un modelo de secuencias, es
necesario especificar un campo de ID, un
campo de tiempo opcional y uno o varios
campos de contenido. Los campos de
ponderación y frecuencia no se usan.
Consulte el tema “Propiedades comunes de
nodos de modelado” en la página 185 para
obtener más información.
time_field campo
use_time_field flag
content_fields [field1 ... fieldn]
contiguous flag
min_supp número
min_conf número
max_size número
max_predictions número
mode Simple
Valores avanzados
use_max_duration flag
max_duration número
use_gaps flag
min_item_gap número
max_item_gap número
use_pruning flag
pruning_value número
set_mem_sequences flag
mem_sequences entero

propiedades de slrmnode
El nodo Modelo de respuesta de autoaprendizaje (SLRM) permite crear un modelo en el que
un solo caso nuevo o un pequeño número de casos nuevos se pueden utilizar para volver a
calcular el modelo sin tener que entrenar de nuevo el modelo utilizando todos los datos.

Ejemplo
node = [Link]("slrm", "My node")
[Link]("target", "Offer")
[Link]("target_response", "Response")
[Link]("inputs", ["Cust_ID", "Age", "Ave_Bal"])

Capítulo 13. Propiedades de nodos de modelado 249


Tabla 144. propiedades de slrmnode
Propiedades de slrmnode Valores Descripción de la propiedad
target campo El campo objetivo debe ser un campo
nominal o marca. También se puede
especificar un campo de frecuencia.
Consulte el tema “Propiedades comunes de
nodos de modelado” en la página 185 para
obtener más información.
target_response campo El tipo debe ser marca.
continue_training_existing_model flag
target_field_values flag Utilizar todos: Usar todos los valores del
origen.

Especifique: Son necesarios determinados


valores.
target_field_values_specify [campo1 ... campoN]
include_model_assessment flag
model_assessment_random_seed número Debe ser un número real.
model_assessment_sample_size número Debe ser un número real.
model_assessment_iterations número Número de iteraciones.
display_model_evaluation flag
max_predictions número
randomization número
scoring_random_seed número
sort Ascending Especifica si se mostrarán primero las
Descending ofertas con las puntuaciones más altas o
más bajas.
model_reliability flag
calculate_variable_importance flag

propiedades de statisticsmodelnode
El nodo Modelo Statistics permite analizar y trabajar con sus datos ejecutando los
procedimientos de IBM SPSS Statistics que producen PMML. Este nodo requiere una copia de
IBM SPSS Statistics con licencia.

Las propiedades de este nodo están descritas en “propiedades de statisticsmodelnode” en la página 348.

propiedades de stpnode
El nodo Predicción espacio-temporal (STP) utiliza datos que contienen datos de ubicación,
campos de entrada para la predicción (predictores), un campo de hora y un campo de
objetivo. Cada ubicación tiene muchas filas en los datos que representan los valores de cada
predictor en cada tiempo de medición. Después de analizar los datos, se puede utilizar para
predecir los valores de objetivo en cualquier ubicación dentro de los datos de forma que se
utilizan en el análisis.

250 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 145. propiedades de stpnode
Propiedades de stpnode Tipo de datos Descripción de la propiedad
Pestaña Campos
target campo Este es el campo de destino.
location campo Campo de ubicación del modelo. Sólo
se permiten campos geoespaciales.
location_label campo Campo categórico a utilizar en la
salida para etiquetar las ubicaciones
elegidas en location
time_field campo Campo de hora del modelo. Sólo se
permiten campos con medición
continua, y el tipo de almacenamiento
debe ser hora, fecha, indicación de
fecha y hora o entero.
inputs [campo1 ... campoN] Lista de campos de entrada.
Pestaña Intervalos de tiempo
interval_type_timestamp Años
Trimestres
Meses
Weeks
Days
Hours
Minutes
Seconds
interval_type_date Años
Trimestres
Meses
Weeks
Days
interval_type_time Hours Limita el número de días por semana
Minutes que se tienen en cuenta al crear el
Seconds índice de hora que utiliza STP para el
cálculo
interval_type_integer Períodos Intervalo en el que se convertirá el
(Sólo campos de índice de hora, conjunto de datos. La selección
almacenamiento Entero) disponible depende del tipo de
almacenamiento del campo elegido
como time_field para el modelo.
period_start entero
start_month Enero El mes desde el que el modelo
Febrero empezará a indexar (por ejemplo, si se
Marzo establece en March pero el primer
Abril registro del conjunto de datos es
Mayo January, el modelo omitirá los
Junio primeros dos registros y comenzará a
Julio indexar en marzo.
Agosto
Septiembre
Octubre
Noviembre
Diciembre

Capítulo 13. Propiedades de nodos de modelado 251


Tabla 145. propiedades de stpnode (continuación)
Propiedades de stpnode Tipo de datos Descripción de la propiedad
week_begins_on Sunday Punto de partida para el índice
Monday temporal creado por STP a partir de
Tuesday los datos
Wednesday
Jueves
Friday
Saturday
days_per_week entero Mínimo 1, máximo 7, con incrementos
de 1
hours_per_day entero El número de horas que el modelo
cuenta en un día. Si se establece en 10,
el modelo empezará a indexar en la
hora day_begins_at y continuará
indexando durante 10 horas, y luego
saltará al siguiente valor que coincida
con el valor day_begins_at, etc.
day_begins_at 00:00 Establece el valor de hora desde el
01:00 que el modelo inicia la indexación.
02:00
03:00
...
23:00
interval_increment 1 Este valor de incremento es de
2 minutos o segundos. Determina dónde
3 el modelo crea índices a partir de los
4 datos. Así que con un incremento de
5 30 y el intervalo de tipo seconds, el
6 modelo crea un índice a partir de los
10 datos cada 30 segundos.
12
15
20
30
data_matches_interval Booleana Si se establece en N, la conversión de
los datos al interval_type normal se
produce antes de que se construya el
modelo.

Si los datos ya tiene el formato


correcto, e interval_type y sus
valores asociados coinciden con sus
datos, establézcalo en Y para evitar la
conversión o la agregación de los
datos.

Si lo establece en Y, se inhabilitan
todos los controles de agregación.
agg_range_default Sum Determina el método de agregación
Media predeterminado que se utiliza para los
Min campos continuos. Los campos
Max continuos que no estén incluidos
Mediana específicamente en la agregación
1stQuartile predeterminada se agregarán usando
3rdQuartile el método aquí indicado.

252 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 145. propiedades de stpnode (continuación)
Propiedades de stpnode Tipo de datos Descripción de la propiedad
custom_agg [[campo, método de Propiedad estructurada:
agregación],[]..]
Parámetro de script: custom_agg
Demo:
[[’x5’ ’FirstQuartile’][’x4’ Por ejemplo:
’Sum’]] set :stpnode.custom_agg = [
[campo1 función]
[campo2 función]
]

Donde función es la función de


agregación a utilizar con dicho campo.
Pestaña Procedimientos básicos
include_intercept flag
max_autoregressive_lag entero Mínimo 1, máximo 5, en incrementos
de 1. Es el número de registros
previos necesarios para una
predicción. Por lo tanto, si se establece
en 5, por ejemplo, entonces los 5
registros se utilizan para crear un
nuevo pronóstico. El número de
registros especificado aquí a partir de
los datos de construcción se
incorporan en el modelo y, por lo
tanto, el usuario no necesita
proporcionar los datos de nuevo al
puntuar el modelo.
estimation_method Parametric Método para modelar la matriz de
Nonparametric covarianzas espacial
parametric_model Gaussian Parámetro de orden para el modelo de
Exponential covarianza espacial de tipo Parametric
PoweredExponential
exponential_power número Nivel alimentación para el modelo
PoweredExponential. Mínimo 1,
máximo 2.
Pestaña Avanzada
max_missing_values entero Porcentaje máximo de registros con
valores faltantes que se permite en el
modelo.
significación número Nivel de significación para pruebas de
hipótesis en la construcción del
modelo. Especifica el valor de
significación para todas las pruebas en
la estimación del modelo STP,
incluidas dos pruebas de Bondad de
ajuste, pruebas F de efectos y pruebas
T de coeficiente.
Pestaña Salida
model_specifications flag
temporal_summary flag

Capítulo 13. Propiedades de nodos de modelado 253


Tabla 145. propiedades de stpnode (continuación)
Propiedades de stpnode Tipo de datos Descripción de la propiedad
location_summary flag Determina si la tabla Resumen de
ubicación se incluye en la salida del
modelo.
model_quality flag
test_mean_structure flag
mean_structure_coefficients flag
autoregressive_coefficients flag
test_decay_space flag
parametric_spatial_covariance flag
correlations_heat_map flag
correlations_map flag
location_clusters flag
similarity_threshold número Umbral en el cual los clústeres de
salida se consideran lo suficientemente
parecidos para que se fusionen en un
único clúster.
max_number_clusters entero Límite superior para el número de
clústeres que se pueden incluir en la
salida del modelo.
Pestaña Opciones de modelo
use_model_name flag
model_name cadena
uncertainty_factor número Mínimo 0, máximo 100. Determina el
aumento de la incertidumbre (error)
aplicado a las predicciones en el
futuro. Es el límite superior e inferior
para las predicciones.

propiedades de svmnode
El nodo Máquina de vectores de soporte (SVM) le permite clasificar datos en uno o dos
grupos sin que haya un ajuste por exceso. SVM funciona bien con conjuntos de datos
grandes, como aquellos con un gran número de campos de entrada.

Ejemplo
node = [Link]("svm", "My node")
# pestaña Experto
[Link]("mode", "Expert")
[Link]("all_probabilities", True)
[Link]("kernel", "Polynomial")
[Link]("gamma", 1.5)
Tabla 146. propiedades de svmnode.
Propiedades de svmnode Valores Descripción de la propiedad
all_probabilities tag

254 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 146. propiedades de svmnode (continuación).
Propiedades de svmnode Valores Descripción de la propiedad
stopping_criteria 1.0E-1 Determina cuándo detener el
1.0E-2 algoritmo de optimización.
1.0E-3 (valor predeterminado)
1.0E-4
1.0E-5
1.0E-6
regularization number También se conoce como el parámetro
C.
precision number Sólo se utiliza si el nivel de medición
del campo objetivo es Continuo.
kernel RBF (valor predeterminado) Tipo de función kernel utilizada para
Polinómico la transformación.
Sigmoide
Lineal
rbf_gamma number Sólo se utiliza si kernel es RBF.
gamma number Sólo se utiliza si kernel es Polinómico
o Sigmoide.
bias number
grado number Sólo se utiliza si kernel es Polinómico.
calculate_variable_importance tag
calculate_raw_propensities tag

calculate_adjusted_ tag
propensities
adjusted_propensity_partition Test
Validation

Propiedades de tcmnode
El modelado causal temporal intenta descubrir relaciones causales clave en datos de series
temporales. En el modelado causal temporal, especifique un conjunto de series de objetivos y
un conjunto de entradas candidato para estos objetivos. El procedimiento crea un modelo de
serie temporal autorregresivo para cada objetivo e incluye solo estas entradas que tienen la
relación causal más significativa con el objetivo.

Tabla 147. propiedades de tcmnode


Propiedades de tcmnode Valores Descripción de la propiedad
custom_fields Booleana
dimensionlist [dimension1 ... dimensionN]
data_struct Multiple
Única
metric_fields campos
both_target_and_input [f1 ... fN]
targets [f1 ... fN]
candidate_inputs [f1 ... fN]
forced_inputs [f1 ... fN]

Capítulo 13. Propiedades de nodos de modelado 255


Tabla 147. propiedades de tcmnode (continuación)
Propiedades de tcmnode Valores Descripción de la propiedad
use_timestamp Marca de tiempo
Period
input_interval Ninguno
Desconocido
Año
Trimestre
Mes
Semana
Día
Hora
Hour_nonperiod
Minuto
Minute_nonperiod
Segundo
Second_nonperiod
period_field cadena
period_start_value entero
num_days_per_week entero
start_day_of_week Sunday
Monday
Martes
Miércoles
Jueves
Viernes
Saturday
num_hours_per_day entero
start_hour_of_day entero
timestamp_increments entero
cyclic_increments entero
cyclic_periods lista
output_interval Ninguno
Año
Trimestre
Mes
Semana
Día
Hora
Minuto
Segundo
is_same_interval El mismo
Notsame
cross_hour Booleana
aggregate_and_distribute lista
aggregate_default Media
Sum
Mode
Min
Max
distribute_default Media
Sum

256 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 147. propiedades de tcmnode (continuación)
Propiedades de tcmnode Valores Descripción de la propiedad
group_default Media
Sum
Mode
Min
Max
missing_imput Linear_interp
Series_mean
K_mean
K_meridian
Linear_trend
Ninguno
k_mean_param entero
k_median_param entero
missing_value_threshold entero
conf_level entero
max_num_predictor entero
max_lag entero
epsilon número
threshold entero
is_re_est Booleana
num_targets entero
percent_targets entero
fields_display lista
series_display lista
network_graph_for_target Booleana
sign_level_for_target número
fit_and_outlier_for_target Booleana
sum_and_para_for_target Booleana
impact_diag_for_target Booleana
impact_diag_type_for_target Efecto
Cause
Both
impact_diag_level_for_target entero
series_plot_for_target Booleana
res_plot_for_target Booleana
top_input_for_target Booleana
forecast_table_for_target Booleana
same_as_for_target Booleana
network_graph_for_series Booleana
sign_level_for_series número
fit_and_outlier_for_series Booleana
sum_and_para_for_series Booleana
impact_diagram_for_series Booleana

Capítulo 13. Propiedades de nodos de modelado 257


Tabla 147. propiedades de tcmnode (continuación)
Propiedades de tcmnode Valores Descripción de la propiedad
impact_diagram_type_for_series Efecto
Cause
Both
impact_diagram_level_for_series entero
series_plot_for_series Booleana
residual_plot_for_series Booleana
forecast_table_for_series Booleana
outlier_root_cause_analysis Booleana
causal_levels entero
outlier_table Interactive
Lista dinámica
Both
rmsp_error Booleana
bic Booleana
r_square Booleana
outliers_over_time Booleana
series_transormation Booleana
use_estimation_period Booleana
estimation_period Times
Observación
observations lista
observations_type Latest
Más antiguo
observations_num entero
observations_exclude entero
extend_records_into_future Booleana
forecastperiods entero
max_num_distinct_values entero
display_targets FIXEDNUMBER
PERCENTAGE
goodness_fit_measure ROOTMEAN
BIC
RSQUARE
top_input_for_series Booleana
aic Booleana
rmse Booleana

258 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Propiedades ts
El nodo Serie temporal estima modelos de suavizado exponencial, modelos autorregresivos
integrados de media móvil (ARIMA) univariados y modelos ARIMA (o de función de
transferencia) multivariados para series temporales y genera previsiones. Este nodo Serie
temporal es similar al nodo Serie temporal anterior que estaba en desuso en SPSS Modeler
versión 18. Sin embargo, este nodo Serie temporal más reciente se ha diseñado para emplear
la potencia de IBM SPSS Analytic Server para procesar grandes cantidades de datos y mostrar
el modelo resultante en el visor de resultados que se ha añadido en SPSS Modeler versión 17.

Tabla 148. Propiedades ts


Propiedades ts Valores Descripción de la propiedad
targets campo El nodo Serie temporal prevé
uno o más objetivos, utilizando
opcionalmente uno o más
campos de entrada como
predictores. Los campos de
frecuencia y ponderación no se
usan. Consulte el tema
“Propiedades comunes de
nodos de modelado” en la
página 185 para obtener más
información.
candidate_inputs [field1 ... fieldN] Campos de entrada o predictor
utilizados por el modelo.
use_period flag
date_time_field campo
input_interval Ninguno
Desconocido
Año
Trimestre
Mes
Semana
Día
Hora
Hour_nonperiod
Minuto
Minute_nonperiod
Segundo
Second_nonperiod
period_field campo
period_start_value entero
num_days_per_week entero
start_day_of_week Sunday
Monday
Martes
Miércoles
Jueves
Viernes
Saturday
num_hours_per_day entero
start_hour_of_day entero
timestamp_increments entero

Capítulo 13. Propiedades de nodos de modelado 259


Tabla 148. Propiedades ts (continuación)
Propiedades ts Valores Descripción de la propiedad
cyclic_increments entero
cyclic_periods lista
output_interval Ninguno
Año
Trimestre
Mes
Semana
Día
Hora
Minuto
Segundo
is_same_interval flag
cross_hour flag
aggregate_and_distribute lista
aggregate_default Media
Sum
Mode
Min
Max
distribute_default Media
Sum
group_default Media
Sum
Mode
Min
Max
missing_imput Linear_interp
Series_mean
K_mean
K_median
Linear_trend
k_span_points entero
use_estimation_period flag
estimation_period Observaciones
Times
date_estimation lista Solo está disponible si se
utiliza date_time_field
period_estimation lista Solo está disponible si se
utiliza use_period
observations_type Latest
Más antiguo
observations_num entero
observations_exclude entero
method ExpertModeler
Exsmooth
Arima
expert_modeler_method ExpertModeler
Exsmooth
Arima

260 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 148. Propiedades ts (continuación)
Propiedades ts Valores Descripción de la propiedad
consider_seasonal flag
detect_outliers flag
expert_outlier_additive flag
expert_outlier_level_shift flag
expert_outlier_innovational flag
expert_outlier_level_shift flag
expert_outlier_transient flag
expert_outlier_seasonal_additive flag
expert_outlier_local_trend flag
expert_outlier_additive_patch flag
consider_newesmodels flag
exsmooth_model_type Simple Especifica el método de
HoltsLinearTrend Suavizado exponencial. El
BrownsLinearTrend valor predeterminado es
DampedTrend Simple.
SimpleSeasonal
WintersAdditive
WintersMultiplicative
DampedTrendAdditive
DampedTrendMultiplicative
MultiplicativeTrendAdditive
MultiplicativeSeasonal
MultiplicativeTrendMultiplicative
MultiplicativeTrend
futureValue_type_method Compute Si se utiliza Compute, el sistema
specify calcula los futuros valores para
el período de predicción para
cada predictor.

Para cada predictor, puede


elegir en una lista de funciones
(blanco, media de puntos
recientes, valor más reciente) o
utilizar specify para
especificar valores
manualmente. Para especificar
campos y propiedades
individuales, utilice la
propiedad
extend_metric_values. Por
ejemplo:
set :ts.futureValue_type
_method="specify"
set :ts.extend_metric
_values=[{’Market_1’,
’USER_SPECIFY’, [1,2,3]},
{’Market_2’,’MOST_RECENT
_VALUE’, ’’},{’Market_3’,
’RECENT_POINTS_MEAN’, ’’}]
exsmooth_transformation_type Ninguno
SquareRoot
NaturalLog

Capítulo 13. Propiedades de nodos de modelado 261


Tabla 148. Propiedades ts (continuación)
Propiedades ts Valores Descripción de la propiedad
arima.p entero
arima.d entero
arima.q entero
[Link] entero
[Link] entero
[Link] entero
arima_transformation_type Ninguno
SquareRoot
NaturalLog
arima_include_constant flag
tf_arima.p. nombredecampo entero Para funciones de
transferencia.
tf_arima.d. nombredecampo entero Para funciones de
transferencia.
tf_arima.q. nombredecampo entero Para funciones de
transferencia.
tf_arima.sp. nombredecampo entero Para funciones de
transferencia.
tf_arima.sd. nombredecampo entero Para funciones de
transferencia.
tf_arima.sq. nombredecampo entero Para funciones de
transferencia.
tf_arima.delay. nombredecampo entero Para funciones de
transferencia.
tf_arima.transformation_type. Ninguno Para funciones de
nombredecampo SquareRoot transferencia.
NaturalLog
arima_detect_outliers flag
arima_outlier_additive flag
arima_outlier_level_shift flag
arima_outlier_innovational flag
arima_outlier_transient flag
arima_outlier_seasonal_additive flag
arima_outlier_local_trend flag
arima_outlier_additive_patch flag
max_lags entero
cal_PI flag
conf_limit_pct real
eventos campos
continue flag
scoring_model_only flag Se utiliza para modelos con
cifras muy grandes (cientos de
miles) o series temporales.
forecastperiods entero

262 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 148. Propiedades ts (continuación)
Propiedades ts Valores Descripción de la propiedad
extend_records_into_future flag
extend_metric_values campos Le permite proporcionar
valores futuros para los
predictores.
conf_limits flag
noise_res flag
max_models_output entero Controla cuántos modelos se
muestran en el resultado. El
valor predeterminado es 10.
Los modelos no se muestran
en el resultado si el número
total de modelos creados
supera este valor. Los modelos
aún están disponibles para la
puntuación.

Propiedades timeseriesnode (en desuso)


Nota: Esta nodo Serie temporal original estaba en desuso en la versión 18 de SPSS Modeler y
se sustituye por el nuevo nodo Serie temporal que se ha designado para emplear la potencia
de IBM SPSS Analytic Server y procesar grandes cantidades de datos (Big Data).El nodo Serie
temporal estima modelos de suavizado exponencial, modelos autorregresivos integrados de
media móvil (ARIMA) univariados y modelos ARIMA (o de función de transferencia)
multivariados para series temporales y genera previsiones. Un nodo Serie temporal debe ir
siempre precedido por un nodo Intervalos de tiempo.

Ejemplo
node = [Link]("timeseries", "My node")
[Link]("method", "Exsmooth")
[Link]("exsmooth_model_type", "HoltsLinearTrend")
[Link]("exsmooth_transformation_type", "None")
Tabla 149. propiedades de timeseriesnode
Propiedades de timeseriesnode Valores Descripción de la propiedad
targets campo El nodo Serie temporal
prevé uno o más objetivos,
utilizando opcionalmente
uno o más campos de
entrada como predictores.
Los campos de frecuencia y
ponderación no se usan.
Consulte el tema
“Propiedades comunes de
nodos de modelado” en la
página 185 para obtener más
información.
continue flag
method ExpertModeler
Exsmooth
Arima
Reuse

Capítulo 13. Propiedades de nodos de modelado 263


Tabla 149. propiedades de timeseriesnode (continuación)
Propiedades de timeseriesnode Valores Descripción de la propiedad
expert_modeler_method flag
consider_seasonal flag
detect_outliers flag
expert_outlier_additive flag
expert_outlier_level_shift flag
expert_outlier_innovational flag
expert_outlier_level_shift flag
expert_outlier_transient flag
expert_outlier_seasonal_additive flag
expert_outlier_local_trend flag
expert_outlier_additive_patch flag
exsmooth_model_type Simple
HoltsLinearTrend
BrownsLinearTrend
DampedTrend
SimpleSeasonal
WintersAdditive
WintersMultiplicative
exsmooth_transformation_type Ninguno
SquareRoot
NaturalLog
arima_p entero
arima_d entero
arima_q entero
arima_sp entero
arima_sd entero
arima_sq entero
arima_transformation_type Ninguno
SquareRoot
NaturalLog
arima_include_constant flag
tf_arima_p. nombredecampo entero Para funciones de
transferencia.
tf_arima_d. nombredecampo entero Para funciones de
transferencia.
tf_arima_q. nombredecampo entero Para funciones de
transferencia.
tf_arima_sp. nombredecampo entero Para funciones de
transferencia.
tf_arima_sd. nombredecampo entero Para funciones de
transferencia.
tf_arima_sq. nombredecampo entero Para funciones de
transferencia.
tf_arima_delay. nombredecampo entero Para funciones de
transferencia.

264 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 149. propiedades de timeseriesnode (continuación)
Propiedades de timeseriesnode Valores Descripción de la propiedad
tf_arima_transformation_type. nombredecampo Ninguno Para funciones de
SquareRoot transferencia.
NaturalLog
arima_detect_outlier_mode Ninguno
Automatic
arima_outlier_additive flag
arima_outlier_level_shift flag
arima_outlier_innovational flag
arima_outlier_transient flag
arima_outlier_seasonal_additive flag
arima_outlier_local_trend flag
arima_outlier_additive_patch flag
conf_limit_pct real
max_lags entero
eventos campos
scoring_model_only flag Se utiliza para modelos con
cifras muy grandes (cientos
de miles) o series
temporales.

propiedades de treeas
El nodo Tree-AS es similar al nodo CHAID existente; sin embargo, el nodo Tree-AS se ha
designado para procesar grandes cantidades de datos (Big Data) para crear un solo árbol y
mostrar el modelo resultante en el visor de salida que se ha añadido en SPSS Modeler versión
17. El nodo genera un árbol de decisiones utilizando estadísticas de chi-cuadrado (CHAID)
para identificar divisiones opcionales. Este uso de CHAID puede generar árboles no binarios,
lo que significa que algunas divisiones generarán más de dos ramas. Los campos de entrada
y objetivo pueden ser continuos (rango numérico) o categóricos. CHAID exhaustivo es una
modificación de CHAID que examina con mayor precisión todas las divisiones posibles,
aunque necesita más tiempo para realizar los cálculos.

Tabla 150. propiedades de treeas


Propiedades de treeas Valores Descripción de la propiedad
target campo En el nodo Tree-AS, los modelos CHAID
requieren un único objetivo y uno o más
campos de entrada. También se puede
especificar un campo de frecuencia.
Consulte el tema “Propiedades comunes de
nodos de modelado” en la página 185 para
obtener más información.
method chaid
exhaustive_chaid
max_depth entero Profundidad máxima del árbol, de 0 a 20.
El valor predeterminado es 5.

Capítulo 13. Propiedades de nodos de modelado 265


Tabla 150. propiedades de treeas (continuación)
Propiedades de treeas Valores Descripción de la propiedad
num_bins entero Sólo se utiliza si los datos están formados
por entradas continuas. Establezca el
número de intervalos de frecuencia que
deben utilizarse para las entradas; las
opciones son 2, 4, 5, 10, 20, 25, 50 o 100.
record_threshold entero El número de registros en los que el
modelo pasa de usar valores p a tamaños
del efecto mientras se construye el árbol. El
valor predeterminado es de 1.000.000; se
incrementa o decrementa de 10.000 en
10.000.
split_alpha número Nivel de significancia para división. El
valor debe estar comprendido entre 0.01 y
0.99.
merge_alpha número Nivel de significancia para fusión. El valor
debe estar comprendido entre 0.01 y 0.99.
bonferroni_adjustment flag Los valores de significancia de ajuste
utilizando el método de Bonferroni.
effect_size_threshold_cont número Establece el umbral del tamaño del efecto
cuando se dividen los nodos y fusionan las
categorías al usar un objetivo continuo. El
valor debe estar comprendido entre 0.01 y
0.99.
effect_size_threshold_cat número Establezca el umbral de tamaño de efecto al
dividir nodos y fusionar categorías al
utilizar un objetivo categórico. El valor
debe estar comprendido entre 0.01 y 0.99.
split_merged_categories flag Permitir segunda división de categorías
fusionadas.
grouping_sig_level número Se usa para determinar cómo se forman los
grupos de nodos o cómo se identifican los
nodos inusuales.
chi_square pearson Método usado para calcular la estadística
likelihood_ratio de chi cuadrado: Pearson o Razón de
verosimilitud
minimum_record_use use_percentage
use_absolute
min_parent_records_pc número El valor predeterminado es de 2. El mínimo
es 1 y el máximo 100, en incrementos de 1.
El valor de la rama padre debe ser superior
que el de la rama hija.
min_child_records_pc número El valor predeterminado es 1. Mínimo 1,
máximo 100, en incrementos de 1.
min_parent_records_abs número El valor predeterminado es 100. Mínimo 1,
máximo 100, en incrementos de 1. El valor
de la rama padre debe ser superior a la
rama hija.
min_child_records_abs número El valor predeterminado es 50. Mínimo 1,
máximo 100, e incrementos de 1.
epsilon número Cambio mínimo en frecuencias de casillas
esperadas.

266 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 150. propiedades de treeas (continuación)
Propiedades de treeas Valores Descripción de la propiedad
max_iterations número Número máximo de iteraciones para la
convergencia.
use_costs flag
costes structured Propiedad estructurada. El formato es una
lista de 3 valores: el valor real, el valor
predicho y el coste si dicha predicción es
errónea. Por ejemplo:
[Link]("costs", [["drugA",
"drugB", 3.0], ["drugX", "drugY", 4.0]])
default_cost_increase ninguno Nota: sólo se habilita para objetivos
lineal ordinales.
square
personalizada Establezca valores predeterminados en la
matriz de costes.
calculate_conf flag
display_rule_id flag Añade un campo en el resultado de
puntuación que indica el ID para el nodo
terminal al que se asigna cada registro.

Propiedades de twostepnode
El nodo Bietápico es un método de agrupación en clústeres de dos pasos. El primer paso es
hacer una única pasada por los datos para comprimir los datos de entrada de la fila en un
conjunto de subclústeres administrable. El segundo paso utiliza un método de agrupación en
clústeres jerárquica para fundir progresivamente los subclústeres en clústeres cada vez más
grandes. El bietápico tiene la ventaja de estimar automáticamente el número óptimo de
clústeres para los datos de entrenamiento. Puede gestionar tipos de campos mixtos y grandes
conjuntos de datos eficazmente.

Ejemplo
node = [Link]("twostep", "My node")
[Link]("custom_fields", True)
[Link]("inputs", ["Age", "K", "Na", "BP"])
[Link]("partition", "Test")
[Link]("use_model_name", False)
[Link]("model_name", "TwoStep_Drug")
[Link]("use_partitioned_data", True)
[Link]("exclude_outliers", True)
[Link]("cluster_label", "String")
[Link]("label_prefix", "TwoStep_")
[Link]("cluster_num_auto", False)
[Link]("max_num_clusters", 9)
[Link]("min_num_clusters", 3)
[Link]("num_clusters", 7)

Capítulo 13. Propiedades de nodos de modelado 267


Tabla 151. propiedades de twostepnode
Propiedad de twostepnode Valores Descripción de la propiedad
inputs [field1 ... fieldN] Los modelos bietápicos utilizan una lista de
campos de entrada, pero no de campos
objetivo. Los campos de ponderación y
frecuencia no se reconocen. Consulte el
tema “Propiedades comunes de nodos de
modelado” en la página 185 para obtener
más información.
standardize flag
exclude_outliers flag
percentage número
cluster_num_auto flag
min_num_clusters número
max_num_clusters número
num_clusters número
cluster_label Cadena
Number
label_prefix cadena
distance_measure Euclidean
Loglikelihood
clustering_criterion AIC
BIC

Propiedades de twostepAS
El clúster bietápico es una herramienta de exploración diseñada para descubrir las
agrupaciones naturales (o clústeres) de un conjunto de datos que, de otra manera, no sería
posible detectar. El algoritmo que emplea este procedimiento incluye varias atractivas
características que lo hacen diferente de las técnicas de agrupación en clústeres tradicionales,
como el tratamiento de variables categóricas y continuas, la selección automática de número
de clústeres y la escalabilidad.

Tabla 152. propiedades de twostepAS


Propiedades de twostepAS Valores Descripción de la propiedad
inputs [f1 ... fN] Los modelos bietápicos
utilizan una lista de campos
de entrada, pero no de
objetivos. Los campos de
ponderación y frecuencia no
se reconocen.
use_predefined_roles Booleano Default=True
use_custom_field_assignments Booleano Default=False
cluster_num_auto Booleano Default=True
min_num_clusters número entero Default=2
max_num_clusters número entero Default=15
num_clusters número entero Default=5

268 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 152. propiedades de twostepAS (continuación)
Propiedades de twostepAS Valores Descripción de la propiedad
clustering_criterion AIC
BIC
automatic_clustering_method use_clustering_criterion_setting

Distance_jump
Mínimo
Máximo
feature_importance_method use_clustering_criterion_setting

effect_size
use_random_seed Booleano
random_seed número entero
distance_measure Euclidean
Loglikelihood
include_outlier_clusters Booleano Default=True
num_cases_in_feature_tree_leaf_ número entero Default=10
is_less_than
top_perc_outliers número entero Default=5
initial_dist_change_threshold número entero Default=0
leaf_node_maximum_branches número entero Default=8
non_leaf_node_maximum_branches número entero Default=8
max_tree_depth número entero Default=3
adjustment_weight_on_measurement_ level número entero Default=6
memory_allocation_mb número Default=512
delayed_split Booleano Default=True
fields_to_standardize [f1 ... fN]
adaptive_feature_selection Booleano Default=True
featureMisPercent número entero Default=70
coefRange número Default=0,05
percCasesSingleCategory número entero Default=95
numCases número entero Default=24
include_model_specifications Booleano Default=True
include_record_summary Booleano Default=True
include_field_transformations Booleano Default=True
excluded_inputs Booleano Default=True
evaluate_model_quality Booleano Default=True
show_feature_importance bar chart Booleano Default=True
show_feature_importance_ word_cloud Booleano Default=True
show_outlier_clusters Booleano Default=True
interactive_table_and_chart
show_outlier_clusters_pivot_table Booleano Default=True
across_cluster_feature_importance Booleano Default=True
across_cluster_profiles_pivot_ table Booleano Default=True

Capítulo 13. Propiedades de nodos de modelado 269


Tabla 152. propiedades de twostepAS (continuación)
Propiedades de twostepAS Valores Descripción de la propiedad
withinprofiles Booleano Default=True
cluster_distances Booleano Default=True
cluster_label Cadena
Number
label_prefix Cadena

270 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Capítulo 14. Propiedades del nodo de nugget de modelo
Los nodos de nugget de modelo comparten las mismas propiedades comunes que los otros nodos.
Consulte el tema “Propiedades de nodos comunes” en la página 71 para obtener más información.

Propiedades de applyanomalydetectionnode
Los nodos de modelado Detección de anomalías pueden utilizarse para generar un nugget de modelo
Detección de anomalías. El nombre de script de este nugget de modelo es applyanomalydetectionnode. Para
obtener más información sobre los scripts para el propio nodo de modelado, consulte “propiedades de
anomalydetectionnode” en la página 185
Tabla 153. propiedades de applyanomalydetectionnode.
Propiedades de applyanomalydetectionnode Valores Descripción de la propiedad
anomaly_score_method FlagAndScore Determina que resultados se crean para
FlagOnly puntuación.
ScoreOnly
num_fields entero Campos para informar.
discard_records tag Indica si los registros se descartan del resultado
o no.
discard_anomalous_records tag Indicador de cuando descartar los registros
anómalos o no anómalos. El valor
predeterminado es off, que significa que se
descartan los registros no anómalos. En caso
contrario, si es on, se descartan los registros
anómalos. Esta propiedad se activa sólo si la
propiedad discard_records se activa.

Propiedades de applyapriorinode
Los nodos de modelado Apriori pueden utilizarse para generar un nugget de modelo Apriori. El nombre
de script de este nugget de modelo es applyapriorinode. Para obtener más información sobre los scripts
para el propio nodo de modelado, consulte “propiedades de apriorinode” en la página 187
Tabla 154. propiedades de applyapriorinode.
Propiedades de applyapriorinode Valores Descripción de la propiedad
max_predictions número (entero)
ignore_unmatached tag
allow_repeats tag
check_basket NoPredictions
Predictions
NoCheck
criterio Confianza
Soporte
RuleSupport
Lift
Capacidad de
despliegue

271
Propiedades de applyassociationrulesnode
El nodo de modelado de reglas de asociación se puede utilizar para generar un nugget de modelo de
reglas de asociación. El nombre de script de este nugget de modelo es applyassociationrulesnode. Para
obtener más información sobre los scripts para propio nodo de modelado, consulte “propiedades
associationrulesnode” en la página 188.
Tabla 155. propiedades de applyassociationrulesnode
Propiedades de
applyassociationrulesnode Tipo de datos Descripción de la propiedad
max_predictions entero El número máximo de reglas que se pueden
aplicar a cada entrada de la puntuación.
criterio Confianza Seleccione la medida utilizada para determinar la
Rulesupport fuerza de las reglas.
Lift
Conditionsupport
Capacidad de despliegue
allow_repeats Booleana Determine si las reglas con la misma predicción
se incluyen en la puntuación.
check_input NoPredictions
Predictions
NoCheck

Propiedades de applyautoclassifiernode
Los nodos de modelado de clasificador automático se pueden utilizar para crear un nugget de modelo
Clasificador automático. El nombre de script de este nugget de modelo es applyautoclassifiernode. Para
obtener más información sobre los scripts para el propio nodo de modelado, “propiedades de
autoclassifiernode” en la página 191
Tabla 156. propiedades de applyautoclassifiernode.
Propiedades de
applyautoclassifiernode Valores Descripción de la propiedad
flag_ensemble_method Voting Especifica el método utilizado para
ConfidenceWeightedVoting determinar la puntuación del
RawPropensityWeightedVoting conjunto. Este conjunto sólo se aplica
HighestConfidence si el objetivo seleccionado es un
AverageRawPropensity campo de marca.
flag_voting_tie_selection Random Si se selecciona un método de
HighestConfidence votación, especifica cómo se
RawPropensity resolverán los empates. Este conjunto
sólo se aplica si el objetivo
seleccionado es un campo de marca.
set_ensemble_method Voting Especifica el método utilizado para
ConfidenceWeightedVoting determinar la puntuación del
HighestConfidence conjunto. Este conjunto sólo se aplica
si el objetivo seleccionado es un
campo de conjunto.
set_voting_tie_selection Random Si se selecciona un método de
HighestConfidence votación, especifica cómo se
resolverán los empates. Este conjunto
sólo se aplica si el objetivo
seleccionado es un campo nominal.

272 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Propiedades de applyautoclusternode
Los nodos de modelado de Clúster automático se pueden utilizar para crear un nugget de modelo
Clúster automático. El nombre de script de este nugget de modelo es applyautoclusternode. No existe
ninguna otra propiedad para este nugget de modelo. Para obtener más información sobre los scripts para
el propio nodo de modelado, consulte “propiedades de nodo de agrupación en clústeres automática” en
la página 193

Propiedades de applyautonumericnode
Los nodos de modelado autonumérico se pueden utilizar para crear un nugget de modelo Autonumérico.
El nombre de script de este nugget de modelo es applyautonumericnode. Para obtener más información
sobre los scripts para el propio nodo de modelado, “propiedades de autonumericnode” en la página 194
Tabla 157. propiedades de applyautonumericnode.
Propiedades de
applyautonumericnode Valores Descripción de la propiedad
calculate_standard_error tag

Propiedades de applybayesnetnode
Los nodos de modelado de red bayesiana pueden utilizarse para generar un nugget de modelo de red
bayesiana. El nombre de script de este nugget de modelo es applybayesnetnode. Para obtener más
información sobre los scripts para el propio nodo de modelado, consulte “Propiedades de bayesnetnode”
en la página 196.
Tabla 158. propiedades de applybayesnetnode.
Propiedades de applybayesnetnode Valores Descripción de la propiedad
all_probabilities tag
raw_propensity tag
adjusted_propensity tag
calculate_raw_propensities tag
calculate_adjusted_propensities tag

Propiedades de applyc50node
Los nodos de modelado C5.0 pueden utilizarse para generar un nugget de modelo C5.0. El nombre de
script de este nugget de modelo es applyc50node. Para obtener más información sobre los scripts para el
propio nodo de modelado, consulte “propiedades de c50node” en la página 198.
Tabla 159. propiedades de applyc50node.
Propiedades de applyc50node Valores Descripción de la propiedad
sql_generate Nunca Se utiliza para establecer las opciones de
NoMissingValues generación de SQL durante la ejecución del
conjunto de reglas.
calculate_conf tag Disponible cuando la generación de SQL
está activada. Esta propiedad incluye los
cálculos de confianza en el árbol generado.
calculate_raw_propensities tag
calculate_adjusted_propensities tag

Capítulo 14. Propiedades del nodo de nugget de modelo 273


Propiedades de applycarmanode
Los nodos de modelado CARMA pueden utilizarse para generar un nugget de modelo CARMA. El
nombre de script de este nugget de modelo es applycarmanode. No existe ninguna otra propiedad para
este nugget de modelo. Para obtener más información sobre los scripts para el propio nodo de modelado,
consulte “propiedades de carmanode” en la página 199.

Propiedades de applycartnode
Se pueden utilizar los nodos de modelado C&RT para generar un nugget de modelo C&RT. El nombre de
script de este nugget de modelo es applycartnode. Para obtener más información sobre los scripts para el
propio nodo de modelado, consulte “propiedades de cartnode” en la página 200.
Tabla 160. propiedades de applycartnode.
Propiedades de applycartnode Valores Descripción de la propiedad
enable_sql_generation Nunca Se utiliza para establecer las opciones de
MissingValues generación de SQL durante la ejecución del
NoMissingValues conjunto de reglas.
calculate_conf tag Disponible cuando la generación de SQL
está activada. Esta propiedad incluye los
cálculos de confianza en el árbol generado.
display_rule_id tag Añade un campo en el resultado de
puntuación que indica el ID para el nodo
terminal al que se asigna cada registro.
calculate_raw_propensities tag
calculate_adjusted_propensities tag

Propiedades de applychaidnode
Los nodos de modelado CHAID pueden utilizarse para generar un nugget de modelo CHAID. El nombre
de script de este nugget de modelo es applychaidnode. Para obtener más información sobre los scripts para
el propio nodo de modelado, consulte “propiedades de chaidnode” en la página 203.
Tabla 161. propiedades de applychaidnode.
Propiedades de applychaidnode Valores Descripción de la propiedad
enable_sql_generation Nunca Se utiliza para establecer las opciones de
MissingValues generación de SQL durante la ejecución del
conjunto de reglas.
calculate_conf tag
display_rule_id tag Añade un campo en el resultado de
puntuación que indica el ID para el nodo
terminal al que se asigna cada registro.
calculate_raw_propensities tag
calculate_adjusted_propensities tag

274 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Propiedades de applycoxregnode
Los nodos de modelado Cox pueden utilizarse para generar un nugget de modelo Cox. El nombre de
script de este nugget de modelo es applycoxregnode. Para obtener más información sobre los scripts para el
propio nodo de modelado, consulte “propiedades de coxregnode” en la página 205.
Tabla 162. propiedades de applycoxregnode.
Propiedades de applycoxregnode Valores Descripción de la propiedad
future_time_as Intervalos
Campos
time_interval number
num_future_times entero
time_field campo
past_survival_time campo
all_probabilities tag
cumulative_hazard tag

Propiedades de applydecisionlistnode
Los nodos de modelado Lista de decisiones pueden utilizarse para generar un nugget de modelo Lista de
decisiones. El nombre de script de este nugget de modelo es applydecisionlistnode. Para obtener más
información sobre los scripts para el propio nodo de modelado, consulte “Propiedades de
decisionlistnode” en la página 206.
Tabla 163. propiedades de applydecisionlistnode.
Propiedades de
applydecisionlistnode Valores Descripción de la propiedad
enable_sql_generation tag Cuando se establece en true, IBM SPSS
Modeler intenta enviar el modelo Lista de
decisiones a SQL.
calculate_raw_propensities tag
calculate_adjusted_propensities tag

Propiedades de applydiscriminantnode
Los nodos de modelado Discriminante pueden utilizarse para generar un nugget de modelo
Discriminante. El nombre de script de este nugget de modelo es applydiscriminantnode. Para obtener más
información sobre los scripts para el propio nodo de modelado, consulte “propiedades de
discriminantnode” en la página 208.
Tabla 164. propiedades de applydiscriminantnode.
Propiedades de
applydiscriminantnode Valores Descripción de la propiedad
calculate_raw_propensities tag
calculate_adjusted_propensities tag

Capítulo 14. Propiedades del nodo de nugget de modelo 275


Propiedades de applyextension

Los nodos de Modelo de extensión se pueden utilizar


para generar un nugget de modelo de Extensión. El
nombre de script de este nugget de modelo es
applyextension. Para obtener más información sobre los
scripts para el propio nodo de modelado, consulte
“Propiedades de extensionmodelnode” en la página 209.

Ejemplo de Python para Spark


#### Ejemplo de script de Python para Spark
applyModel = [Link]("extension_apply", None)

score_script = """
import json
import [Link]
from [Link] import LabeledPoint
from [Link] import DenseVector
from [Link] import DecisionTreeModel
from [Link] import StringType, StructField

cxt = [Link]()

if [Link]():
_schema = [Link]()
_schema.[Link](StructField("Prediction", StringType(), nullable=True))
[Link](_schema)
else:
df = [Link]()

_modelPath = [Link]("TreeModel")
metadata = [Link]([Link]("[Link]"))

schema = [Link][:]
target = "Drug"
predictors = ["Age","BP","Sex","Cholesterol","Na","K"]

lookup = {}
for i in range(0,len(schema)):
lookup[schema[i][0]] = i

def row2LabeledPoint(dm,lookup,target,predictors,row):
target_index = lookup[target]
tval = dm[target_index].index(row[target_index])
pvals = []
for predictor in predictors:
predictor_index = lookup[predictor]
if isinstance(dm[predictor_index],list):
pval = row[predictor_index] in dm[predictor_index] and
dm[predictor_index].index(row[predictor_index]) or -1
else:
pval = row[predictor_index]
[Link](pval)
return LabeledPoint(tval, DenseVector(pvals))

# convertir marco de datos a un RDD que contiene LabeledPoint


lps = [Link](lambda row: row2LabeledPoint(metadata,lookup,target,predictors,row))
treeModel = [Link]([Link](), _modelPath);
# puntuar el modelo, produce un RDD que contiene sólo valores dobles
predictions = [Link]([Link](lambda lp: [Link]))

def addPrediction(x,dm,lookup,target):

276 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


result = []
for _idx in range(0, len(x[0])):
[Link](x[0][_idx])
[Link](dm[lookup[target]][int(x[1])])
return result

_schema = [Link]()
_schema.[Link](StructField("Prediction", StringType(), nullable=True))
rdd2 = [Link](predictions).map(lambda x:addPrediction(x, metadata, lookup, target))
outDF = [Link]().createDataFrame(rdd2, _schema)

[Link](outDF)
"""
[Link]("python_syntax", score_script)

Ejemplo de R
#### Ejemplo de script de R
[Link]("r_syntax", """
result<-predict(modelerModel,newdata=modelerData)
modelerData<-cbind(modelerData,result)
var1<-c(fieldName="NaPrediction",fieldLabel="",fieldStorage="real",fieldMeasure="",
fieldFormat="",fieldRole="")
modelerDataModel<-[Link](modelerDataModel,var1)""")
Tabla 165. Propiedades de applyextension
Propiedades de applyextension Valores Descripción de la propiedad
r_syntax cadena Sintaxis de scripts R para la
puntuación del modelo.
python_syntax cadena Sintaxis de scripts Python para la
puntuación de modelo.
use_batch_size flag Habilitar uso de proceso por lotes.
batch_size entero Especifique el número de registros de
datos que se deben incluir en cada
lote.
convert_flags StringsAndDoubles Opción para convertir campos de
LogicalValues distintivos.
convert_missing flag Opción para convertir valores
perdidos al valor NA de R.
convert_datetime flag Opción para convertir las variables
con los formatos de fecha o de fecha
y hora para formatos de fecha/hora
R.
convert_datetime_class POSIXct Opciones para especificar a qué
POSIXlt formato se convierten las variables
con los formatos de fecha o de fecha
y hora.

Propiedades de applyfactornode
Los nodos de modelado PCA/Factorial pueden utilizarse para generar un nugget de modelo
PCA/Factorial. El nombre de script de este nugget de modelo es applyfactornode. No existe ninguna otra
propiedad para este nugget de modelo. Para obtener más información sobre los scripts para el propio
nodo de modelado, consulte “propiedades de factornode” en la página 212.

Capítulo 14. Propiedades del nodo de nugget de modelo 277


Propiedades de applyfeatureselectionnode
Los nodos de modelado Selección de características pueden utilizarse para generar un nugget de modelo
Selección de características. El nombre de script de este nugget de modelo es applyfeatureselectionnode. Para
obtener más información sobre los scripts para el propio nodo de modelado, consulte “propiedades de
featureselectionnode” en la página 213.
Tabla 166. propiedades de applyfeatureselectionnode.
Propiedades de
applyfeatureselectionnode Valores Descripción de la propiedad
selected_ranked_fields especifica qué campos clasificados se
comprueban en el explorador de modelos.
selected_screened_fields Especifica qué campos filtrados se
comprueban en el explorador de modelos.

Propiedades de applygeneralizedlinearnode
Los nodos de modelado lineal generalizado (genlin) pueden utilizarse para generar un nugget de modelo
lineal generalizado. El nombre de script de este nugget de modelo es applygeneralizedlinearnode. Para
obtener más información sobre los scripts para el propio nodo de modelado, consulte “propiedades de
genlinnode” en la página 215.
Tabla 167. propiedades de applygeneralizedlinearnode.
Propiedades de
applygeneralizedlinearnode Valores Descripción de la propiedad
calculate_raw_propensities tag
calculate_adjusted_propensities tag

Propiedades de applyglmmnode
Los nodos de modelado GLMM pueden utilizarse para generar un nugget de modelo GLMM. El nombre
de script de este nugget de modelo es applyglmmnode. Para obtener más información sobre los scripts para
el propio nodo de modelado, consulte “Propiedades de glmmnode” en la página 218.
Tabla 168. Propiedades de applyglmmnode.
Propiedades de applyglmmnode Valores Descripción de la propiedad
confidence onProbability Base para calcular el valor de confianza de
onIncrease la puntuación: probabilidad más alta
predicha, o la diferencia entre la
probabilidad más alta predicha y la
segunda probabilidad más alta.
score_category_probabilities tag Si es True, genera las probabilidades
predichas para objetivos categóricos. Se
crea un campo para cada categoría. El valor
predeterminado es False.
max_categories entero Número máximo de categorías para el que
se van a predecir las probabilidades. Sólo
se utiliza si score_category_probabilities
es True.

278 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 168. Propiedades de applyglmmnode (continuación).
Propiedades de applyglmmnode Valores Descripción de la propiedad
score_propensity tag Si se establece en True, genera
puntuaciones de propensión en bruto
(probabilidad de resultado "True") para
modelos con objetivos de marca. Si las
particiones están en vigor, también genera
puntuaciones de propensión ajustadas en
función de la partición de prueba. El valor
predeterminado es False.
enable_sql_generation udf Se utiliza para establecer las opciones de
native generación de SQL durante la ejecución de
ruta. Las opciones son para retrotraer a la
base de datos y puntuar utilizando un
adaptador de puntuación de SPSS® Modeler
Server (si está conectado a una base de
datos con un adaptador de puntuación
instalado) o para puntuar en SPSS Modeler.

El valor predeterminado es udf.

Propiedades de applygle
Los nodos de modelado GLE pueden utilizarse para generar un nugget de modelo GLE. El nombre de
script de este nugget de modelo es applygle. Para obtener más información sobre los scripts para el propio
nodo de modelado, consulte “Propiedades de gle” en la página 222.
Tabla 169. Propiedades de applygle
Propiedades de applygle Valores Descripción de la propiedad
enable_sql_generation udf Se utiliza para establecer las opciones de
native generación de SQL durante la ejecución de
ruta. Elija si desea realizar una retrotracción
a la base de datos y puntuar utilizando un
adaptador de puntuación de SPSS Modeler
Server (si está conectado a una base de
datos con un adaptador de puntuación
instalado) o puntuar dentro de SPSS
Modeler.

Propiedades de applykmeansnode
Los nodos de modelado K-medias pueden utilizarse para generar un nugget de modelo K-medias. El
nombre de script de este nugget de modelo es applykmeansnode. No existe ninguna otra propiedad para
este nugget de modelo. Para obtener más información sobre los scripts para el propio nodo de modelado,
consulte “propiedades de kmeansnode” en la página 227.

Capítulo 14. Propiedades del nodo de nugget de modelo 279


Propiedades de applyknnnode
Los nodos de modelado KNN pueden utilizarse para generar un nugget de modelo KNN. El nombre de
script de este nugget de modelo es applyknnnode. Para obtener más información sobre los scripts para el
propio nodo de modelado, consulte “propiedades de knnnode” en la página 228.
Tabla 170. propiedades de applyknnnode.
Propiedades de applyknnnode Valores Descripción de la propiedad
all_probabilities tag
save_distances tag

Propiedades de applykohonennode
Los nodos de modelado Kohonen pueden utilizarse para generar un nugget de modelo Kohonen. El
nombre de script de este nugget de modelo es applykohonennode. No existe ninguna otra propiedad para
este nugget de modelo. Para obtener más información sobre los scripts para el propio nodo de modelado,
consulte “propiedades de c50node” en la página 198.

Propiedades de applylinearnode
Los nodos de modelado lineal pueden utilizarse para generar un nugget de modelo lineal. El nombre de
script de este nugget de modelo es applylinearnode. Para obtener más información sobre los scripts para el
propio nodo de modelado, consulte “Propiedades de linearnode” en la página 231.
Tabla 171. Propiedades de applylinearnode.
Propiedades de linear Valores Descripción de la propiedad
use_custom_name tag
custom_name cadena
enable_sql_generation udf Se utiliza para establecer las opciones de
native generación de SQL durante la ejecución de
puresql ruta. Las opciones se van a retrotraer a la
base de datos y la puntuación mediante el
adaptador de puntuación SPSS® Modeler
Server (si está conectado a una base de
datos con un adaptador de puntuación
instalado), para puntuar en SPSS Modeler,
o para retrotraer a la base de datos y
puntuar mediante SQL.

El valor predeterminado es udf.

Propiedades de applylinearasnode
Los nodos de modelado Linear-AS pueden utilizarse para generar un nugget de modelo Linear-AS. El
nombre de script de este nugget de modelo es applylinearasnode. Para obtener más información sobre los
scripts para el propio nodo de modelado, consulte “Propiedades de linearasnode” en la página 232.
Tabla 172. Propiedades de applylinearasnode
Propiedad applylinearasnode Valores Descripción de la propiedad
enable_sql_generation udf El valor predeterminado es udf.
native

280 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Propiedades de applylogregnode
Los nodos de modelado Regresión logística pueden utilizarse para generar un nugget de modelo
Regresión logística. El nombre de script de este nugget de modelo es applylogregnode. Para obtener más
información sobre los scripts para el propio nodo de modelado, consulte “Propiedades de logregnode” en
la página 233.
Tabla 173. propiedades de applylogregnode.
Propiedades de applylogregnode Valores Descripción de la propiedad
calculate_raw_propensities tag
calculate_conf flag
enable_sql_generation flag

Propiedades de applylsvmnode
Los nodos de modelado LSVM pueden utilizarse para generar un nugget de modelo LSVM. El nombre
de script de este nugget de modelo es applylsvmnode. Para obtener más información sobre los scripts para
el propio nodo de modelado, consulte “propiedades de lsvmnode” en la página 237.
Tabla 174. propiedades de applylsvmnode
Propiedades de applylsvmnode Valores Descripción de la propiedad
calculate_raw_propensities flag Especifica si deben calcularse puntuaciones de
propensión en bruto.
enable_sql_generation udf Especifica si debe puntuarse utilizando el
native adaptador de puntuación (si está instalado) o
en proceso, o puntuar fuera de la base de
datos.

Propiedades de applyneuralnetnode
Los nodos de modelado Red neuronal pueden utilizarse para generar un nugget de modelo Red
neuronal. El nombre de script de este nugget de modelo es applyneuralnetnode. Para obtener más
información sobre los scripts para el propio nodo de modelado, consulte “propiedades de neuralnetnode”
en la página 238.

Precaución: Una versión más reciente del nodo de modelado Red neural, con características mejoradas,
está disponible en esta versión y se describe en la sección siguiente (applyneuralnetwork). Aunque la
versión anterior sigue estando disponible, le recomendamos actualizar sus scripts para que se usen la
nueva versión. En este documento se incluyen detalles de la versión anterior como referencia, pero en
versiones futuras dejará de ser compatible.
Tabla 175. propiedades de applyneuralnetnode.
Propiedades de applyneuralnetnode Valores Descripción de la propiedad
calculate_conf tag Disponible cuando la generación de SQL está
activada. Esta propiedad incluye los cálculos
de confianza en el árbol generado.
enable_sql_generation tag
nn_score_method Diferencia
SoftMax
calculate_raw_propensities tag
calculate_adjusted_propensities tag

Capítulo 14. Propiedades del nodo de nugget de modelo 281


propiedades de applyneuralnetworknode
Los nodos de modelado Red neuronal pueden utilizarse para generar un nugget de modelo Red
neuronal. El nombre de script de este nugget de modelo es applyneuralnetworknode. Si desea más
información sobre cómo crear scripts para el propio nodo de modelado, consulte Propiedades
neuralnetworknode
Tabla 176. propiedades de applyneuralnetworknode
Propiedades de
applyneuralnetworknode Valores Descripción de la propiedad
use_custom_name flag
custom_name cadena
confidence onProbability
onIncrease
score_category_probabilities flag
max_categories número
score_propensity flag
enable_sql_generation udf Se utiliza para establecer las opciones de
native generación de SQL durante la ejecución de
puresql ruta. Las opciones se van a retrotraer a la
base de datos y la puntuación mediante el
adaptador de puntuación SPSS® Modeler
Server (si está conectado a una base de
datos con un adaptador de puntuación
instalado), para puntuar en SPSS Modeler,
o para retrotraer a la base de datos y
puntuar mediante SQL.

El valor predeterminado es udf.

Propiedades de applyocsvmnode
Los nodos SVM de una clase se pueden utilizar para generar un nugget de modelo SVM de una clase. El
nombre de script de este nugget de modelo es applyocsvmnode. No existe ninguna otra propiedad para
este nugget de modelo. Para obtener más información sobre los scripts para el propio nodo de modelado,
consulte “Propiedades de ocsvmnode” en la página 351.

Propiedades de applyquestnode
Los nodos de modelado QUEST pueden utilizarse para generar un nugget de modelo QUEST. El nombre
de script de este nugget de modelo es applyquestnode. Para obtener más información sobre los scripts para
el propio nodo de modelado, consulte “propiedades de questnode” en la página 242.
Tabla 177. propiedades de applyquestnode.
Propiedades de applyquestnode Valores Descripción de la propiedad
enable_sql_generation Nunca Se utiliza para establecer las opciones de
MissingValues generación de SQL durante la ejecución del
NoMissingValues conjunto de reglas.
calculate_conf tag
display_rule_id tag Añade un campo en el resultado de
puntuación que indica el ID para el nodo
terminal al que se asigna cada registro.

282 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 177. propiedades de applyquestnode (continuación).
Propiedades de applyquestnode Valores Descripción de la propiedad
calculate_raw_propensities tag
calculate_adjusted_propensities tag

Propiedades de applyr
Los nodos de modelado R pueden utilizarse para generar un nugget de modelo R. El nombre de script de
este nugget de modelo es applyr. Para obtener más información sobre los scripts para el propio nodo de
modelado, consulte “propiedades de buildr” en la página 197.
Tabla 178. propiedades de applyr
Propiedades de applyr Valores Descripción de la propiedad
score_syntax cadena Sintaxis de scripts R para la
puntuación del modelo.
convert_flags StringsAndDoubles Opción para convertir campos de
LogicalValues distintivos.
convert_datetime flag Opción para convertir las variables
con los formatos de fecha o de fecha
y hora para formatos de fecha/hora
R.
convert_datetime_class POSIXct Opciones para especificar a qué
POSIXlt formato se convierten las variables
con los formatos de fecha o de fecha
y hora.
convert_missing flag Opción para convertir los valores que
faltan al valor R NA.
use_batch_size flag Habilite el uso del proceso por lotes
batch_size entero Especifique el número de registros de
datos que se incluirán en cada lote

Propiedades applyrandomtrees
El nodo de modelador Árboles aleatorios se puede utilizar para generar un nugget del modelo Árboles
aleatorios. El nombre de script de este nugget de modelo es applyrandomtrees. Para obtener más
información sobre los scripts para el propio nodo de modelado, consulte “propiedades randomtrees” en
la página 244.
Tabla 179. propiedades applyrandomtrees
Propiedades applyrandomtrees Valores Descripción de la propiedad
calculate_conf flag Esta propiedad incluye cálculos de
confianza en el árbol generado.
enable_sql_generation udf Se utiliza para establecer las opciones de
native generación de SQL durante la ejecución de
ruta. Elija si desea realizar una retrotracción
a la base de datos y puntuar utilizando un
adaptador de puntuación de SPSS Modeler
Server (si está conectado a una base de
datos con un adaptador de puntuación
instalado) o puntuar dentro de SPSS
Modeler.

Capítulo 14. Propiedades del nodo de nugget de modelo 283


Propiedades de applyregressionnode
Los nodos de modelado Regresión lineal pueden utilizarse para generar un nugget de modelo Regresión
lineal. El nombre de script de este nugget de modelo es applyregressionnode. No existe ninguna otra
propiedad para este nugget de modelo. Para obtener más información sobre los scripts para el propio
nodo de modelado, consulte “Propiedades de regressionnode” en la página 246.

propiedades de applyselflearningnode
Los nodos de modelado de modelo de respuesta de autoaprendizaje (SLRM) pueden utilizarse para
generar un nugget de modelo SLRM. El nombre de script de este nugget de modelo es
applyselflearningnode. Para obtener más información sobre los scripts para el propio nodo de modelado,
consulte “propiedades de slrmnode” en la página 249.
Tabla 180. propiedades de applyselflearningnode.
Propiedades de applyselflearningnode Valores Descripción de la propiedad
max_predictions number
randomization number
scoring_random_seed number
sort ascending Especifica si se mostrarán primero las ofertas
descending con las puntuaciones más altas o más bajas.
model_reliability tag Tiene en cuenta la opción de fiabilidad del
modelo de la pestaña Configuración.

Propiedades de applysequencenode
Los nodos de modelado Secuencia pueden utilizarse para generar un nugget de modelo Secuencia. El
nombre de script de este nugget de modelo es applysequencenode. No existe ninguna otra propiedad para
este nugget de modelo. Para obtener más información sobre los scripts para el propio nodo de modelado,
consulte “propiedades de sequencenode” en la página 248.

Propiedades de applysvmnode
Los nodos de modelado SVM pueden utilizarse para generar un nugget de modelo SVM. El nombre de
script de este nugget de modelo es applysvmnode. Para obtener más información sobre los scripts para el
propio nodo de modelado, consulte “propiedades de svmnode” en la página 254.
Tabla 181. propiedades de applysvmnode.
Propiedades de applysvmnode Valores Descripción de la propiedad
all_probabilities tag
calculate_raw_propensities tag
calculate_adjusted_propensities tag

Propiedades de applystpnode
El nodo de modelado STP puede utilizarse para generar un nugget de modelo asociado, que muestra la
salida del modelo en el Visor de salida. El nombre de script de este nugget de modelo es applystpnode.
Para obtener más información sobre los scripts para el propio nodo de modelado, consulte “propiedades
de stpnode” en la página 250.

284 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 182. propiedades de applystpnode
Propiedades de applystpnode Tipo de datos Descripción de la propiedad
uncertainty_factor Booleana Mínimo 0, máximo 100.

Propiedades de applytcmnode
Los nodos de modelado temporal causal (TCM) pueden usarse para generar un nugget de modelo TCM.
El nombre de script de este nugget de modelo es applytcmnode. Para obtener más información sobre los
scripts para el propio nodo de modelado, consulte “Propiedades de tcmnode” en la página 255.
Tabla 183. Propiedades de applytcmnode
Propiedades de applytcmnode Valores Descripción de la propiedad
ext_future booleano
ext_future_num entero
noise_res booleano
conf_limits booleano
target_fields lista
target_series lista

Propiedades applyts
El nodo de modelado Serie temporal se puede utilizar para generar un nugget de modelo Serie temporal.
El nombre de scripts de este nugget de modelo es applyts. Para obtener más información sobre los scripts
para el propio nodo de modelado, consulte “Propiedades ts” en la página 259.
Tabla 184. propiedades applyts
Propiedades applyts Valores Descripción de la propiedad
extend_records_into_future Booleana
ext_future_num entero
compute_future_values_input Booleana
forecastperiods entero
noise_res booleano
conf_limits booleano
target_fields lista
target_series lista
includeTargets campo

Propiedades applytimeseriesnode (en desuso)


El nodo de modelado Serie temporal se puede utilizar para generar un nugget de modelo Serie temporal.
El nombre de script de este nugget de modelo es applytimeseriesnode. Para obtener más información sobre
los scripts para el propio nodo de modelado, consulte “Propiedades timeseriesnode (en desuso)” en la
página 263.
Tabla 185. propiedades de applytimeseriesnode.
Propiedades de applytimeseriesnode Valores Descripción de la propiedad
calculate_conf tag

Capítulo 14. Propiedades del nodo de nugget de modelo 285


Tabla 185. propiedades de applytimeseriesnode (continuación).
Propiedades de applytimeseriesnode Valores Descripción de la propiedad
calculate_residuals tag

Propiedades de applytreeas
Los nodos de modelado Tree-AS pueden utilizarse para generar un nugget de modelo Tree-AS. El nombre
de script de este nugget de modelo es applytreenas. Para obtener más información sobre los scripts para el
propio nodo de modelado, consulte “propiedades de treeas” en la página 265.
Tabla 186. propiedades de applytreeas
Propiedades de applytreeas Valores Descripción de la propiedad
calculate_conf flag Esta propiedad incluye cálculos de
confianza en el árbol generado.
display_rule_id flag Añade un campo en el resultado de
puntuación que indica el ID para el nodo
terminal al que se asigna cada registro.
enable_sql_generation udf Se utiliza para establecer las opciones de
native generación de SQL durante la ejecución de
ruta. Elija si desea realizar una retrotracción
a la base de datos y puntuar utilizando un
adaptador de puntuación de SPSS Modeler
Server (si está conectado a una base de
datos con un adaptador de puntuación
instalado) o puntuar dentro de SPSS
Modeler.

Propiedades de applytwostepnode
Los nodos de modelado Bietápico pueden utilizarse para generar un nugget de modelo Bietápico. El
nombre de script de este nugget de modelo es applytwostepnode. No existe ninguna otra propiedad para
este nugget de modelo. Para obtener más información sobre los scripts para el propio nodo de modelado,
consulte “Propiedades de twostepnode” en la página 267.

Propiedades de applytwostepAS
Los nodos de modelado Bietápico AS pueden utilizarse para generar un nugget de modelo Bietápico AS.
El nombre de script de este nugget de modelo es applytwostepAS. Para obtener más información sobre los
scripts para el propio nodo de modelado, consulte “Propiedades de twostepAS” en la página 268.
Tabla 187. Propiedades de applytwostepAS
Propiedades de applytwostepAS Valores Descripción de la propiedad
enable_sql_generation udf Se utiliza para establecer las opciones de
native generación de SQL durante la ejecución de
ruta. Las opciones son para retrotraer a la
base de datos y puntuar utilizando un
adaptador de puntuación de SPSS® Modeler
Server (si está conectado a una base de
datos con un adaptador de puntuación
instalado) o para puntuar en SPSS Modeler.

El valor predeterminado es udf.

286 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Propiedades de applyxgboosttreenode
El nodo XGBoost Tree se puede utilizar para generar un nugget de modelo de XGBoost Tree. El nombre
de script de este nugget de modelo es applyxgboosttreenode. No existe ninguna otra propiedad para este
nugget de modelo. Para obtener más información sobre los scripts para el propio nodo de modelado,
consulte “Propiedades de xgboosttreenode” en la página 358.

Propiedades de applyxgboostlinearnode
Los nodos XGBoost Linear se pueden utilizar para generar un nugget de modelo de XGBoost Linear. El
nombre de script de este nugget de modelo es applyxgboostlinearnode. No existe ninguna otra propiedad
para este nugget de modelo. Para obtener más información sobre los scripts para el propio nodo de
modelado, consulte “Propiedades xgboostlinearnode” en la página 357.

Capítulo 14. Propiedades del nodo de nugget de modelo 287


288 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python
Capítulo 15. Propiedades del nodo de modelado de base de
datos
IBM SPSS Modeler admite la integración con herramientas de modelado y minería de datos disponibles
en proveedores de bases de datos, incluidos Microsoft SQL Server Analysis Services, Oracle Data Mining
e IBM Netezza Analytics. Podrá crear y almacenar modelos mediante algoritmos nativos de bases de
datos, todo desde la aplicación IBM SPSS Modeler. Los modelos de base de datos también se pueden
crear y manipular a través de scripts utilizando las propiedades descritas en esta sección.

Por ejemplo, el siguiente fragmento de script muestra la creación de un modelo de árboles de decisión de
Microsoft mediante la interfaz de scripts de IBM SPSS Modeler:
stream = [Link]()
msbuilder = [Link]("mstreenode", "MSBuilder", 200, 200)

[Link]("analysis_server_name", ’localhost’)
[Link]("analysis_database_name", ’TESTDB’)
[Link]("mode", ’Expert’)
[Link]("datasource", ’LocalServer’)
[Link]("target", ’Drug’)
[Link]("inputs", [’Age’, ’Sex’])
[Link]("unique_field", ’IDX’)
[Link]("custom_fields", True)
[Link]("model_name", ’MSDRUG’)

typenode = [Link]("type", None)


[Link](typenode, msbuilder)
results = []
[Link](results)
msapplier = [Link](results[0], "Drug", 200, 300)
tablenode = [Link]("table", "Results", 300, 300)
[Link](msapplier, typenode, tablenode)
[Link]("sql_generate", True)
[Link]([])

Propiedades de nodos de modelado de Microsoft

Propiedades de nodos de modelado de Microsoft


Propiedades comunes

Las siguientes propiedades son comunes a los nodos de modelado de bases de datos de Microsoft.
Tabla 188. Propiedades comunes de nodos de Microsoft
Propiedades comunes de nodo de
Microsoft Valores Descripción de la propiedad
analysis_database_name cadena Nombre de la base de datos de Analysis Services.
analysis_server_name cadena Nombre del host de Analysis Services.
use_transactional_data flag Especifica si los datos de entrada están en formato
tabular o transaccional.
inputs lista Campos de entrada de datos tabulares.
target campo Campo predicho (no aplicable a nodo Clúster de MS o
nodos de Agrupación en clústeres de secuencias).

© Copyright IBM Corp. 1994, 2017 289


Tabla 188. Propiedades comunes de nodos de Microsoft (continuación)
Propiedades comunes de nodo de
Microsoft Valores Descripción de la propiedad
unique_field campo Campos clave.
msas_parameters structured Parámetros del algoritmo. Consulte el tema “Parámetros
del algoritmo” en la página 291 para obtener más
información.
with_drillthrough flag Opción Con exploración.

Árbol de decisión de MS

No hay propiedades específicas para los nodos del tipo mstreenode. Consulte las propiedades comunes
de Microsoft que se indican al comienzo de esta sección.

Clúster de MS

No hay propiedades específicas para los nodos del tipo msclusternode. Consulte las propiedades
comunes de Microsoft que se indican al comienzo de esta sección.

Reglas de asociación de MS
Las siguientes propiedades específicas están disponibles para los nodos del tipo msassocnode:
Tabla 189. propiedades de msassocnode
Propiedades de msassocnode Valores Descripción de la propiedad
id_field campo Identifica todas las transacciones en los datos.
trans_inputs lista Los campos de entrada de datos transaccionales.
transactional_target campo Campo predicho (datos transaccionales).

Bayesiano ingenuo de MS

No hay propiedades específicas para los nodos del tipo msbayesnode. Consulte las propiedades comunes
de Microsoft que se indican al comienzo de esta sección.

Regresión lineal de MS

No hay propiedades específicas para los nodos del tipo msregressionnode. Consulte las propiedades
comunes de Microsoft que se indican al comienzo de esta sección.

Red neuronal de MS

No hay propiedades específicas para los nodos del tipo msneuralnetworknode. Consulte las propiedades
comunes de Microsoft que se indican al comienzo de esta sección.

Regresión logística de MS

No hay propiedades específicas para los nodos del tipo mslogisticnode. Consulte las propiedades
comunes de Microsoft que se indican al comienzo de esta sección.

290 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Series temporales de MS

No hay propiedades específicas para los nodos del tipo mstimeseriesnode. Consulte las propiedades
comunes de Microsoft que se indican al comienzo de esta sección.

Clúster de secuencias de MS

Las siguientes propiedades específicas están disponibles para los nodos del tipo mssequenceclusternode:
Tabla 190. propiedades de mssequenceclusternode
Propiedades de mssequenceclusternode Valores Descripción de la propiedad
id_field campo Identifica todas las transacciones en los datos.
input_fields lista Los campos de entrada de datos transaccionales.
sequence_field campo Identificador de secuencia.
target_field campo Campo predicho (datos tabulares).

Parámetros del algoritmo


Cada tipo de modelo de base de datos de Microsoft tiene parámetros concretos que se pueden establecer
mediante la propiedad msas_parameters. Por ejemplo:
stream = [Link]()
msregressionnode = [Link]("msregression", None)
[Link]("msas_parameters", [["MAXIMUM_INPUT_ATTRIBUTES", 255],
["MAXIMUM_OUTPUT_ATTRIBUTES", 255]])

Estos parámetros se derivan de SQL Server. Para ver los parámetros relevantes para cada nodo:
1. Coloque un nodo de origen de base de datos en el lienzo.
2. Abra el nodo de origen de base de datos.
3. Seleccione un origen válido en la lista desplegable Origen de datos.
4. Seleccione una tabla válida en la lista Nombre de tabla.
5. Pulse en Aceptar para cerrar el nodo de origen de base de datos.
6. Conecte un nodo de modelado de bases de datos de Microsoft cuyas propiedades desee conocer.
7. Abra el nodo de modelado de bases de datos.
8. Seleccione la pestaña Experto.

Aparecerán las propiedades msas_parameters disponibles de este nodo.

Propiedades de nugget de modelo de Microsoft


Las siguientes propiedades son para los nugget de modelo creados mediante los nodos de modelado de
bases de datos de Microsoft.

Árbol de decisión de MS
Tabla 191. Propiedades de Árbol de decisión de MS
Propiedades de applymstreenode Valores Descripción
analysis_database_name cadena Este nodo se puede puntuar directamente en una ruta.

Esta propiedad se utiliza para identificar el nombre de


la base de datos de Analysis Services.
analysis_server_name cadena Nombre del host del servidor de análisis.

Capítulo 15. Propiedades del nodo de modelado de base de datos 291


Tabla 191. Propiedades de Árbol de decisión de MS (continuación)
Propiedades de applymstreenode Valores Descripción
datasource cadena Nombre del origen de datos (DSN) ODBC de SQL
Server.
sql_generate flag Activa la generación de SQL.

Regresión lineal de MS
Tabla 192. Propiedades de Regresión lineal de MS
Propiedades de
applymsregressionnode Valores Descripción
analysis_database_name cadena Este nodo se puede puntuar directamente en una ruta.

Esta propiedad se utiliza para identificar el nombre de


la base de datos de Analysis Services.
analysis_server_name cadena Nombre del host del servidor de análisis.

Red neuronal de MS
Tabla 193. Propiedades de Red neuronal de MS
Propiedades de
applymsneuralnetworknode Valores Descripción
analysis_database_name cadena Este nodo se puede puntuar directamente en una ruta.

Esta propiedad se utiliza para identificar el nombre de


la base de datos de Analysis Services.
analysis_server_name cadena Nombre del host del servidor de análisis.

Regresión logística de MS
Tabla 194. Propiedades de Regresión logística de MS
Propiedades de applymslogisticnode Valores Descripción
analysis_database_name cadena Este nodo se puede puntuar directamente en una ruta.

Esta propiedad se utiliza para identificar el nombre de


la base de datos de Analysis Services.
analysis_server_name cadena Nombre del host del servidor de análisis.

Series temporales de MS
Tabla 195. Propiedades de MS Time Series
Propiedades de
applymstimeseriesnode Valores Descripción
analysis_database_name cadena Este nodo se puede puntuar directamente en una ruta.

Esta propiedad se utiliza para identificar el nombre de


la base de datos de Analysis Services.
analysis_server_name cadena Nombre del host del servidor de análisis.

292 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 195. Propiedades de MS Time Series (continuación)
Propiedades de
applymstimeseriesnode Valores Descripción
start_from new_prediction Especifica si se realizarán predicciones futuras o
historical_ históricas.
prediction
new_step número Define el período de tiempo inicial de predicciones
futuras.
historical_step número Define el período de tiempo inicial de predicciones
históricas.
end_step número Define el período de tiempo final de las predicciones.

Clúster de secuencias de MS
Tabla 196. Propiedades de Agrupación en clústeres de secuencias de MS
propiedades de
applymssequenceclusternode Valores Descripción
analysis_database_name cadena Este nodo se puede puntuar directamente en una ruta.

Esta propiedad se utiliza para identificar el nombre de


la base de datos de Analysis Services.
analysis_server_name cadena Nombre del host del servidor de análisis.

Propiedades de nodos de modelado de Oracle

Propiedades de nodos de modelado de Oracle


Las siguientes propiedades son comunes a los nodos de modelado de bases de datos de Oracle.
Tabla 197. Propiedades comunes de nodos de Oracle.
Propiedades comunes de nodos de
Oracle Valores Descripción de la propiedad
objetivo campo
inputs Lista de campos
partición campo Campo usado para dividir los datos en muestras
independientes para las fases de entrenamiento,
comprobación y validación en la generación del
modelo.
datasource
nombre de usuario
contraseña
epassword
use_model_name tag
model_name cadena Nombre personalizado para nuevo modelo.
use_partitioned_data tag Si se ha definido un campo de partición, esta opción
garantiza que sólo se utilizarán los datos de la
partición de entrenamiento para la generación del
modelo.
unique_field campo

Capítulo 15. Propiedades del nodo de modelado de base de datos 293


Tabla 197. Propiedades comunes de nodos de Oracle (continuación).
Propiedades comunes de nodos de
Oracle Valores Descripción de la propiedad
auto_data_prep tag Activa o desactiva la característica de preparación de
datos automática de Oracle (solamente para bases de
datos 11g).
costs estructurado Propiedad estructurada de la siguiente forma:
[[drugA drugB 1.5] [drugA drugC 2.1]], donde los
argumentos en [] son costes pronosticados reales.
mode Simple Hace que se ignoren ciertas propiedades si se
Expert establece como Simple, como se indica en las
propiedades de nodos individuales.
use_prediction_probability tag
prediction_probability cadena
use_prediction_set tag

Bayesiano ingenuo de Oracle

Las siguientes propiedades están disponibles para los nodos del tipo oranbnode.
Tabla 198. propiedades de oranbnode
Propiedades de oranbnode Valores Descripción de la propiedad
singleton_threshold número 0.0–1.0.*
pairwise_threshold número 0.0–1.0.*
priors Datos
Equal
Personalizado
custom_priors structured Propiedad estructurada de la siguiente forma:
set :oranbnode.custom_priors = [[drugA 1][drugB
2][drugC 3][drugX 4][drugY 5]]

* Propiedad ignorada si Modo se establece como Simple.

Bayesiano adaptativo de Oracle

Las siguientes propiedades están disponibles para los nodos del tipo oraabnnode.
Tabla 199. propiedades de oraabnnode
Propiedades de oraabnnode Valores Descripción de la propiedad
model_type SingleFeature
MultiFeature
NaiveBayes
use_execution_time_limit flag *
execution_time_limit entero El valor debe ser mayor que 0.*
max_naive_bayes_predictors entero El valor debe ser mayor que 0.*
max_predictors entero El valor debe ser mayor que 0.*
priors Datos
Equal
Personalizado

294 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 199. propiedades de oraabnnode (continuación)
Propiedades de oraabnnode Valores Descripción de la propiedad
custom_priors structured Propiedad estructurada de la siguiente forma:
set :oraabnnode.custom_priors = [[drugA 1][drugB
2][drugC 3][drugX 4][drugY 5]]

* Propiedad ignorada si Modo se establece como Simple.

Máquinas de vectores de soporte de Oracle

Las siguientes propiedades están disponibles para los nodos del tipo orasvmnode.
Tabla 200. propiedades de orasvmnode
Propiedades de orasvmnode Valores Descripción de la propiedad
active_learning Enable
Disable
kernel_function Lineal
Gaussian
Sistema
normalization_method zscore
minmax
none
kernel_cache_size entero Solamente kernel gaussiano. El valor
debe ser mayor que 0.*
convergence_tolerance número El valor debe ser mayor que 0.*
use_standard_deviation flag Solamente kernel gaussiano.*
standard_deviation número El valor debe ser mayor que 0.*
use_epsilon flag Solamente modelos de regresión.*
epsilon número El valor debe ser mayor que 0.*
use_complexity_factor flag *
complexity_factor número *
use_outlier_rate flag Solamente variantes de una clase.*
outlier_rate número Solamente variantes de una clase.
0.0–1.0.*
weights Datos
Equal
Personalizado
custom_weights structured Propiedad estructurada de la
siguiente forma:
set :orasvmnode.custom_weights =
[[drugA 1][drugB 2][drugC 3][drugX
4][drugY 5]]

* Propiedad ignorada si Modo se establece como Simple.

Capítulo 15. Propiedades del nodo de modelado de base de datos 295


Modelos lineales generalizados de Oracle

Las siguientes propiedades están disponibles para los nodos del tipo oraglmnode.
Tabla 201. Propiedades de oraglmnode
Propiedades de oraglmnode Valores Descripción de la propiedad
normalization_method zscore
minmax
none
missing_value_handling ReplaceWithMean
UseCompleteRecords
use_row_weights flag *
row_weights_field campo *
save_row_diagnostics flag *
row_diagnostics_table cadena *
coefficient_confidence número *
use_reference_category flag *
reference_category cadena *
ridge_regression Auto *
Off
On
parameter_value número *
vif_for_ridge flag *

* Propiedad ignorada si Modo se establece como Simple.

Árbol de decisión de Oracle

Las siguientes propiedades están disponibles para los nodos del tipo oradecisiontreenode.
Tabla 202. Propiedades de oradecisiontreenode
Propiedades de oradecisiontreenode Valores Descripción de la propiedad
use_costs flag
impurity_metric Entropy
Gini
term_max_depth entero 2–20.*
term_minpct_node número 0.0–10.0.*
term_minpct_split número 0.0–20.0.*
term_minrec_node entero El valor debe ser mayor que 0.*
term_minrec_split entero El valor debe ser mayor que 0.*
display_rule_ids flag *

* Propiedad ignorada si Modo se establece como Simple.

296 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


O-clúster de Oracle

Las siguientes propiedades están disponibles para los nodos del tipo oraoclusternode.
Tabla 203. Propiedades de oraoclusternode
Propiedades de oraoclusternode Valores Descripción de la propiedad
max_num_clusters entero El valor debe ser mayor que 0.
max_buffer entero El valor debe ser mayor que 0.*
sensitivity número 0.0–1.0.*

* Propiedad ignorada si Modo se establece como Simple.

K-medias de Oracle

Las siguientes propiedades están disponibles para los nodos del tipo orakmeansnode.
Tabla 204. Propiedades de orakmeansnode
Propiedades de orakmeansnode Valores Descripción de la propiedad
num_clusters entero El valor debe ser mayor que 0.
normalization_method zscore
minmax
none
distance_function Euclidean
Cosine

iteraciones entero 0–20.*


conv_tolerance número 0.0–0.5.*
split_criterion Variance El valor predeterminado es Variance.*
Size
num_bins entero El valor debe ser mayor que 0.*
block_growth entero 1–5.*
min_pct_attr_support número 0.0–1.0.*

* Propiedad ignorada si Modo se establece como Simple.

NMF de Oracle

Las siguientes propiedades están disponibles para los nodos del tipo oranmfnode.
Tabla 205. Propiedades de oranmfnode
Propiedades de oranmfnode Valores Descripción de la propiedad
normalization_method minmax
none
use_num_features flag *
num_features entero 0–1. El algoritmo estima el valor predeterminado a
partir de los datos.*
random_seed número *
num_iterations entero 0–500.*

Capítulo 15. Propiedades del nodo de modelado de base de datos 297


Tabla 205. Propiedades de oranmfnode (continuación)
Propiedades de oranmfnode Valores Descripción de la propiedad
conv_tolerance número 0.0–0.5.*
display_all_features flag *

* Propiedad ignorada si Modo se establece como Simple.

Apriori de Oracle

Las siguientes propiedades están disponibles para los nodos del tipo oraapriorinode.
Tabla 206. Propiedades de oraapriorinode
Propiedades de oraapriorinode Valores Descripción de la propiedad
content_field campo
id_field campo
max_rule_length entero 2–20.
min_confidence número 0.0–1.0.
min_support número 0.0–1.0.
use_transactional_data flag

Longitud mínima de la descripción de Oracle (LMD)

No hay propiedades específicas para los nodos del tipo oramdlnode. Consulte las propiedades comunes
de Oracle que se indican al comienzo de esta sección.

Importancia del atributo de Oracle (AI)

Las siguientes propiedades están disponibles para los nodos del tipo oraainode.
Tabla 207. Propiedades de oraainode
Propiedades de oraainode Valores Descripción de la propiedad
custom_fields flag Si es verdadero, le permite especificar el objetivo, la
entrada y otros campos del nodo actual. Si es falso,
se utiliza la configuración actual de un nodo Tipo
situado en un punto anterior de la ruta.
selection_mode ImportanceLevel
ImportanceValue
TopN
select_important flag Si selection_mode se establece en ImportanceLevel,
determina si se seleccionan los campos importantes.
important_label cadena Especifica la etiqueta para la clasificación como
"important".
select_marginal flag Si selection_mode se establece en ImportanceLevel,
determina si se seleccionan los campos marginales.
marginal_label cadena Especifica la etiqueta para la clasificación como
"marginal".
important_above número 0.0–1.0.

298 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 207. Propiedades de oraainode (continuación)
Propiedades de oraainode Valores Descripción de la propiedad
select_unimportant flag Si selection_mode se establece en ImportanceLevel,
determina si se seleccionan los campos sin
importancia.
unimportant_label cadena Especifica la etiqueta para la clasificación como
"unimportant".
unimportant_below número 0.0–1.0.
importance_value número Si selection_mode se establece en ImportanceValue,
determina el valor de corte que se va a usar. Acepta
valores de 0 a 100.
top_n número Si selection_mode se establece en TopN, determina el
valor de corte que se va a usar. Acepta valores de 0 a
1000.

Propiedades de nugget de modelo de Oracle


Las siguientes propiedades son para los nugget de modelo creados mediante los modelos de Oracle.

Bayesiano ingenuo de Oracle

No hay propiedades específicas para los nodos del tipo applyoranbnode.

Bayesiano adaptativo de Oracle

No hay propiedades específicas para los nodos del tipo applyoranbnode.

Máquinas de vectores de soporte de Oracle


No hay propiedades específicas para los nodos del tipo applyorasvmnode.

Árbol de decisión de Oracle


Las siguientes propiedades están disponibles para los nodos del tipo applyoradecisiontreenode.
Tabla 208. propiedades de applyoradecisiontreenode
Propiedades de applyoradecisiontreenode Valores Descripción de la propiedad
use_costs flag
display_rule_ids flag

O-clúster de Oracle

No hay propiedades específicas para los nodos del tipo applyoraoclusternode.

K-medias de Oracle

No hay propiedades específicas para los nodos del tipo applyorakmeansnode.

Capítulo 15. Propiedades del nodo de modelado de base de datos 299


NMF de Oracle

La siguiente propiedad está disponible para los nodos del tipo applyoranmfnode:
Tabla 209. propiedades de applyoranmfnode
Propiedades de applyoranmfnode Valores Descripción de la propiedad
display_all_features flag

Apriori de Oracle
Este nugget de modelo no se puede aplicar en los scripts.

LMD de Oracle

Este nugget de modelo no se puede aplicar en los scripts.

Propiedades de nodos de modelado de IBM Netezza Analytics

Propiedades de nodos de modelado de Netezza


Las siguientes propiedades son comunes a los nodos de modelado de bases de datos de IBM Netezza.
Tabla 210. Propiedades comunes de nodos de Netezza.
Propiedades comunes de nodos de
Netezza Valores Descripción de la propiedad
custom_fields tag Si es verdadero, le permite especificar el objetivo, la
entrada y otros campos del nodo actual. Si es falso, se
utiliza la configuración actual de un nodo Tipo situado
en un punto anterior de la ruta.
inputs [campo1 ... campoN] Campos de entrada o predictor utilizados por el modelo.
objetivo campo Campo de destino (continuo o categórico).
record_id campo El campo que se debe utilizar como identificador de
registros exclusivo.
use_upstream_connection tag Si es verdadero (valor predeterminado), los detalles de
conexión especificados en un nodo anterior. No se utiliza
si se especifica move_data_to_connection.
move_data_connection tag Si es verdadero, transfiere los datos a la base de datos
especificada mediante connection. No se utiliza si se
especifica use_data_upstream_connection.
connection estructurado La cadena de conexión para la base de datos de Netezza
donde se almacena el modelo. Propiedad estructurada
de la siguiente forma:
[’odbc’ ’<dsn>’ ’<nombreusuario>’ ’<psw>’
’<nombrecat>’ ’<atribs_conex>’ [true|false]]

donde:
<dsn> es el nombre del origen de datos
<username> y <psw> son el nombre de usuario y la
contraseña para la base de datos
<catname> es el nombre de catálogo
<conn_attribs> son los atributos de conexión
true | false indica si la contraseña es necesaria.

300 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 210. Propiedades comunes de nodos de Netezza (continuación).
Propiedades comunes de nodos de
Netezza Valores Descripción de la propiedad
table_name cadena Nombre de la base de datos donde se debe almacenar el
modelo.
use_model_name tag Si es true, utiliza el nombre que especifica mediante
model_name como el nombre del modelo, de lo contrario
el sistema crea el nombre del modelo.
model_name cadena Nombre personalizado para nuevo modelo.
include_input_fields tag Si es verdadero, transmite todos los campos de entrada
siguientes, de lo contrario solo transmite record_id y los
campos generados por el modelo.

Árbol de decisión de Netezza


Las siguientes propiedades están disponibles para los nodos del tipo netezzadectreenode.
Tabla 211. Propiedades de netezzadectreenode
Propiedades de netezzadectreenode Valores Descripción de la propiedad
impurity_measure Entropy La medición de impureza, utilizada
Gini para valorar la mejor ubicación para
dividir el árbol.
max_tree_depth entero Número máximo de niveles que
puede alcanzar el crecimiento de
árbol. El valor predeterminado es 62
(el máximo posible).
min_improvement_splits número Mejoras mínimas que se pueden
realizar en la impureza de la división.
El valor predeterminado es 0.01.
min_instances_split entero Número mínimo de registros por
dividir antes de realizar la división.
El valor predeterminado es 2 (el
mínimo posible).
weights structured Ponderaciones relativas para clases.
Propiedad estructurada de la
siguiente forma:
set :netezza_dectree.weights =
[[drugA 0.3][drugB 0.6]]

El valor predeterminado es la
ponderación de 1 para todas las
clases.
pruning_measure Acc El valor predeterminado es Acc
wAcc (precisión). wAcc alternativo (precisión
ponderada) tiene en cuenta las
ponderaciones de clase mientras se
aplica la poda.

Capítulo 15. Propiedades del nodo de modelado de base de datos 301


Tabla 211. Propiedades de netezzadectreenode (continuación)
Propiedades de netezzadectreenode Valores Descripción de la propiedad
prune_tree_options allTrainingData El valor predeterminado es utilizar
partitionTrainingData allTrainingData para calcular la
useOtherTable precisión del modelo. Utilice
partitionTrainingData para
especificar un porcentaje de datos de
prueba por utilizar, o useOtherTable
para utilizar un conjunto de datos de
prueba desde una tabla específica de
la base de datos.
perc_training_data número Si prune_tree_options se establece en
partitionTrainingData, especifica el
porcentaje de datos que se utilizará
para entrenamiento.
prune_seed entero Semilla aleatoria que se debe utilizar
para replicar los resultados del
análisis si prune_tree_options se
establece en partitionTrainingData;
el valor predeterminado es 1.
pruning_table cadena Nombre de tabla de un conjunto de
datos de poda separado para estimar
la precisión del modelo.
compute_probabilities flag Si es verdadero, produce un campo
de nivel de confianza (probabilidad)
y el campo de predicción.

K-medias de Netezza

Las siguientes propiedades están disponibles para los nodos del tipo netezzakmeansnode.
Tabla 212. Propiedades de netezzakmeansnode
Propiedades de netezzakmeansnode Valores Descripción de la propiedad
distance_measure Euclidean Método que se debe utilizar para medir la distancia
Manhattan entre puntos de datos.
Canberra
máximo
num_clusters entero Número de clústeres que se deben crear; el valor
predeterminado es 3.
max_iterations entero Número de iteraciones de algoritmos después de los
cuáles se debe detener la prueba del modelo; el valor
predeterminado es 5.
rand_seed entero Semilla aleatoria que se debe utilizar para replicar los
resultados del análisis; el valor predeterminado es 12345.

302 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Red bayesiana de Netezza

Las siguientes propiedades están disponibles para los nodos del tipo netezzabayesnode.
Tabla 213. Propiedades de netezzabayesnode
Propiedades de netezzabayesnode Valores Descripción de la propiedad
base_index entero Identificador numérico asignado al primer campo de
entrada de gestión interna; el valor predeterminado es
777.
sample_size entero Tamaño de la muestra que se tomará si el número de
atributos es muy grande; el valor predeterminado es
10.000.
display_additional_information flag Si es verdadero, muestra información adicional sobre el
progreso en un cuadro de diálogo de mensaje.
type_of_prediction best Tipo de algoritmo de predicción que se utilizará: el
vecinos mejor (vecino más correlacionado), vecinos (predicción
nn-neighbors ponderada de vecinos), o vecinos NN (vecinos no
nulos).

Bayesiano ingenuo de Netezza

Las siguientes propiedades están disponibles para los nodos del tipo netezzanaivebayesnode.
Tabla 214. propiedades de netezzanaivebayesnode
Propiedades de
netezzanaivebayesnode Valores Descripción de la propiedad
compute_probabilities flag Si es verdadero, produce un campo de nivel de
confianza (probabilidad) y el campo de predicción.
use_m_estimation flag Si es verdadero, utiliza la técnica m-estimation para
evitar probabilidades de cero durante el cálculo.

KNN de Netezza

Las siguientes propiedades están disponibles para los nodos del tipo netezzaknnnode.
Tabla 215. Propiedades de netezzaknnnode
Propiedades de netezzaknnnode Valores Descripción de la propiedad
weights structured Propiedad estructurada que se utiliza para asignar
ponderaciones a clases individuales. Ejemplo:
set :[Link] = [[drugA 0.3][drugB
0.6]]
distance_measure Euclidean Método que se utiliza para medir la distancia entre
Manhattan puntos de datos.
Canberra
Máximo
num_nearest_neighbors entero Número de vecinos más próximos de un caso concreto;
el valor predeterminado es 3.
standardize_measurements flag Si es verdadero, estandariza las mediciones de campos
de entrada continuos antes de calcular los valores de
distancia.

Capítulo 15. Propiedades del nodo de modelado de base de datos 303


Tabla 215. Propiedades de netezzaknnnode (continuación)
Propiedades de netezzaknnnode Valores Descripción de la propiedad
use_coresets flag Si es verdadero, utiliza el muestreo del conjunto
principal para acelerar el cálculo de conjuntos de datos
grandes.

Clúster divisivo de Netezza


Las siguientes propiedades están disponibles para los nodos del tipo netezzadivclusternode.
Tabla 216. Propiedades de netezzadivclusternode
Propiedades de
netezzadivclusternode Valores Descripción de la propiedad
distance_measure Euclidean Método que se utiliza para medir la distancia entre
Manhattan puntos de datos.
Canberra
Máximo
max_iterations entero Número máximo de iteraciones de algoritmo que se
ejecutarán antes de detener el entrenamiento del modelo;
el valor predeterminado es 5.
max_tree_depth entero El número máximo de niveles en los que se puede
subdividir el conjunto de datos; el valor predeterminado
es 3.
rand_seed entero Semilla aleatoria, se utiliza para replicar los análisis; el
valor predeterminado es 12345.
min_instances_split entero El número mínimo de registros que se pueden dividir, el
valor predeterminado es 5.
nivel entero El nivel de jerarquía en el que se guardan los registros;
el valor predeterminado es -1.

PCA de Netezza

Las siguientes propiedades están disponibles para los nodos del tipo netezzapcanode.
Tabla 217. Propiedades de netezzapcanode
Propiedades de netezzapcanode Valores Descripción de la propiedad
center_data flag Si es verdadero (opción predeterminada), ejecuta el
centrado de datos (también conocido como "sustracción
de media") antes del análisis.
perform_data_scaling flag Si es verdadero, ejecuta la adaptación de los datos antes
del análisis. De esta forma el análisis será menos
arbitrario si las diferentes variables se miden en
unidades diferentes.
force_eigensolve flag Si es verdadero, utiliza un método menos preciso, pero
más rápido para encontrar componentes principales.
pc_number entero El número principal de componentes al que se reducirá
el conjunto de datos; el valor predeterminado es 1.

304 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Árbol de regresión de Netezza

Las siguientes propiedades están disponibles para los nodos del tipo netezzaregtreenode.
Tabla 218. Propiedades de netezzaregtreenode
Propiedades de netezzaregtreenode Valores Descripción de la propiedad
max_tree_depth entero Número máximo de niveles que
puede crecer el árbol por debajo del
nodo raíz; el valor predeterminado es
10.
split_evaluation_measure Variance Medida de clase de impureza, se
utiliza para evaluar la mejor
ubicación para dividir el árbol; el
valor predeterminado (y la única
opción actualmente) es Variance.
min_improvement_splits número Cantidad mínima para reducir la
impureza antes de que se cree la
nueva división en el árbol.
min_instances_split entero El número mínimo de registros que
se pueden dividir.
pruning_measure mse Método que se utilizará para la poda.
r2
pearson
spearman
prune_tree_options allTrainingData El valor predeterminado es utilizar
partitionTrainingData allTrainingData para calcular la
useOtherTable precisión del modelo. Utilice
partitionTrainingData para
especificar un porcentaje de datos de
prueba por utilizar, o useOtherTable
para utilizar un conjunto de datos de
prueba desde una tabla específica de
la base de datos.
perc_training_data número Si prune_tree_options se establece en
PercTrainingData, especifica el
porcentaje de datos que se utilizará
para entrenamiento.
prune_seed entero Semilla aleatoria que se debe utilizar
para replicar los resultados del
análisis si prune_tree_options se
establece en PercTrainingData; el
valor predeterminado es 1.
pruning_table cadena Nombre de tabla de un conjunto de
datos de poda separado para estimar
la precisión del modelo.
compute_probabilities flag Si es verdadero, especifica que las
varianzas de las clases asignadas se
deben incluir en el resultado.

Capítulo 15. Propiedades del nodo de modelado de base de datos 305


Regresión lineal de Netezza

Las siguientes propiedades están disponibles para los nodos del tipo netezzalineregressionnode.
Tabla 219. Propiedades de netezzalineregressionnode
Propiedades de
netezzalineregressionnode Valores Descripción de la propiedad
use_svd flag Si es verdadero, utiliza la matriz de descomposición de
valores singulares en lugar de la matriz original, para
mayor velocidad y precisión numérica.
include_intercept flag Si es verdadero (valor predeterminado), aumenta la
precisión global de la solución.
calculate_model_diagnostics flag Si es verdadero, calcula el diagnóstico del modelo.

Series temporales de Netezza

Las siguientes propiedades están disponibles para los nodos del tipo netezzatimeseriesnode.
Tabla 220. Propiedades de netezzatimeseriesnode
Propiedades de
netezzatimeseriesnode Valores Descripción de la propiedad
time_points campo El campo de entrada que contiene los
valores de fecha u hora de la serie
temporal.
time_series_ids campo El campo de entrada que contiene
diversos ID de series temporales;
utilice esta opción si la entrada
contiene más de una serie temporal.
model_table campo Nombre de la tabla de base de datos
en la que se guardará el modelo de
series temporales de Netezza.
description_table campo Nombre de la tabla de entrada que
contiene los nombres y las
descripciones de las series
temporales.
seasonal_adjustment_table campo Nombre de la tabla de salida en la
que se guardarán los valores
ajustados calculados por los
algoritmos de suavizado exponencial
o de descomposición de tendencia
estacional.
algorithm_name SpectralAnalysis o spectral Algoritmo que hay que utilizar para
ExponentialSmoothing o esmoothing el modelado de series temporales.
ARIMA
SeasonalTrendDecomposition o std
trend_name N Tipo de tendencia del suavizado
A exponencial:
DA N - none
M A - aditivo
DM DA -aditivo amortiguado
M - multiplicativo
DM - multiplicativo amortiguado

306 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 220. Propiedades de netezzatimeseriesnode (continuación)
Propiedades de
netezzatimeseriesnode Valores Descripción de la propiedad
seasonality_type N Tipo de estacionalidad del suavizado
A exponencial:
M N - none
A - aditivo
M - multiplicativo
interpolation_method lineal Método de interpolación que hay que
cubicspline utilizar.
exponentialspline
timerange_setting SD Valor de rango de tiempo que se
SP debe utilizar:
SD - determinado por el sistema
(utiliza el rango completo de datos
de series de tiempo)
SP - especificado por el usuario
mediante earliest_time y
latest_time
earliest_time entero Valores de inicio y finalización si
fecha timerange_setting es SP.
latest_time
hora
marca de tiempo El formato debe seguir el valor
time_points.

Por ejemplo, si el campo time_points


contiene una fecha, éste también
debería ser una fecha.

Ejemplo:
set NZ_DT1.timerange_setting =
’SP’
set NZ_DT1.earliest_time =
’1921-01-01’
set NZ_DT1.latest_time =
’2121-01-01’
arima_setting SD Valor para el algoritmo ARIMA (sólo
SP se utiliza si algorithm_name se
establece en ARIMA):
SD - determinado por el sistema
SP - especificado por el usuario

Si se utiliza arima_setting = SP,


utilice los parámetros siguientes para
establecer los valores estacionales y
no estacionales. Ejemplo (solo no
estacionales):
set NZ_DT1.algorithm_name =
’arima’
set NZ_DT1.arima_setting = ’SP’
set NZ_DT1.p_symbol = ’lesseq’
set NZ_DT1.p = ’4’
set NZ_DT1.d_symbol = ’lesseq’
set NZ_DT1.d = ’2’
set NZ_DT1.q_symbol = ’lesseq’
set NZ_DT1.q = ’4’

Capítulo 15. Propiedades del nodo de modelado de base de datos 307


Tabla 220. Propiedades de netezzatimeseriesnode (continuación)
Propiedades de
netezzatimeseriesnode Valores Descripción de la propiedad
p_symbol sin ARIMA - operador para los
eq parámetros p, d, q, sp, sd y sq:
d_symbol
lesseq less - menor que
q_symbol eq - igual a
sp_symbol lesseq - menor o igual que

sd_symbol
sq_symbol
p entero ARIMA: grados no estacionales de
autocorrelación.
q entero ARIMA: valor de derivación no
estacional.
d entero ARIMA: número no estacional de
órdenes de media móvil presentes en
el modelo.
sp entero ARIMA: grados estacionales de
autocorrelación.
sq entero ARIMA: valor de derivación
estacional.
sd entero ARIMA: número estacional de
órdenes de media móvil presentes en
el modelo.
advanced_setting SD Determina cómo se manejan los
SP valores avanzados:
SD - determinado por el sistema
SP - especificado por el usuario
mediante period, units_period y
forecast_setting.

Ejemplo:
set NZ_DT1.advanced_setting = ’SP’
set NZ_DT1.period = 5
set NZ_DT1.units_period = ’d’
punto entero Longitud de ciclo estacional,
especificado junto con units_period.
No aplicable para análisis espectrales.
units_period ms Unidades en que se expresa period:
s ms - milisegundos
min s - segundos
h min - minutos
d h - horas
semana d - días
q wk - semanas
y q - trimestres
y - años

Por ejemplo, para una serie temporal


semanal utilice 1 para period y wk
para units_period.
forecast_setting forecasthorizon Especifica cómo se han de realizar las
forecasttimes previsiones.

308 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 220. Propiedades de netezzatimeseriesnode (continuación)
Propiedades de
netezzatimeseriesnode Valores Descripción de la propiedad
forecast_horizon entero Si forecast_setting =
fecha forecasthorizon, especifica el valor
hora de punto final para la previsión.
marca de tiempo
El formato debe seguir el valor
time_points.

Por ejemplo, si el campo time_points


contiene una fecha, éste también
debería ser una fecha.
forecast_times entero Si forecast_setting =
fecha forecasttimes, especifica los valores
hora que se utilizarán para hacer
marca de tiempo previsiones.

El formato debe seguir el valor


time_points.

Por ejemplo, si el campo time_points


contiene una fecha, éste también
debería ser una fecha.
include_history flag Indica si se deben incluir los valores
históricos en los resultados.
include_interpolated_values flag Indica si se deben incluir los valores
interpolados en los resultados. No es
aplicable si include_history es false.

Lineal generalizado de Netezza

Las siguientes propiedades están disponibles para los nodos del tipo netezzaglmnode.
Tabla 221. Propiedades de netezzaglmnode
Propiedades de netezzaglmnode Valores Descripción de la propiedad
dist_family bernoulli El tipo de distribución. El valor
de gauss predeterminado es bernoulli.
poisson
negativebinomial
wald
gamma
dist_params número Valor del parámetro de distribución
que hay que utilizar. Sólo se aplica si
distribution es Negativebinomial.
trials entero Sólo se aplica si distribution es
Binomial. Cuando la respuesta
objetivo es un número de eventos
que tienen lugar en un conjunto de
ensayos, el campo target contiene el
número de eventos, y el campo
trials contiene el número de
ensayos.

Capítulo 15. Propiedades del nodo de modelado de base de datos 309


Tabla 221. Propiedades de netezzaglmnode (continuación)
Propiedades de netezzaglmnode Valores Descripción de la propiedad
model_table campo Nombre de la tabla de base de datos
en la que se guardará el modelo
lineal generalizado de Netezza.
maxit entero Número máximo de iteraciones que
debe ejecutar el algoritmo; el valor
predeterminado es 20.
eps número Valor del error máximo (en notación
científica) en el que el algoritmo
debería dejar de buscar el modelo de
mejor ajuste. El valor predeterminado
es -3, lo que significa 1E-3 o 0,001.
tol número El valor (en notación científica) por
debajo del que los errores se tratan
como si su valor fuera cero. El valor
predeterminado es -7, lo que significa
que los valores de error por debajo
de 1E-7 (o 0,0000001) se cuentan
como insignificantes.
link_func identidad Función de enlace que se ha de
inverse utilizar; el valor predeterminado es
invnegative logit.
invsquare
sqrt
power
oddspower
anotaciones
clog
loglog
cloglog
logit
probit
gaussit
cauchit
canbinom
cangeom
cannegbinom
link_params número Valor del parámetro de función de
enlace que hay que utilizar. Sólo se
aplica si link_function es power u
oddspower.
interaction [[[nombrescol1],[niveles1]], Especifica las interacciones entre los
[[nombrescol2],[niveles2]], campos. colnames es una lista de
...,[[nombrescolN],[nivelesN]],] campos de entrada, y level es siempre
0 para cada campo.

Ejemplo:
[[["K","BP","Sex","K"],[0,0,0,0]],
[["Age","Na"],[0,0]]]
intercept flag Si es true, incluye la interceptación
en el modelo.

310 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Propiedades de nugget de modelo de Netezza
Las siguientes propiedades son comunes a los nuggets del modelo de la base de datos de Netezza.
Tabla 222. Propiedades comunes de nugget de nodos de Netezza
Propiedades comunes de nugget de modelo
de Netezza Valores Descripción de la propiedad
connection cadena La cadena de conexión para la base de datos de
Netezza donde se almacena el modelo.
table_name cadena Nombre de la base de datos donde se almacenará
el modelo.

Otras las propiedades del nugget de modelo son las mismas que las del nodo de modelado
correspondiente.

Los nombres de script de los nuggets de modelo son los siguientes.


Tabla 223. Nombres de script de nuggets de modelos Netezza
Nugget de modelo Nombre de script
Árbol de decisiones applynetezzadectreenode
K-medias applynetezzakmeansnode
Red bayesiana applynetezzabayesnode
bayesiano ingenuo applynetezzanaivebayesnode
KNN applynetezzaknnnode
Clúster divisivo applynetezzadivclusternode
PCA applynetezzapcanode
Árbol de regresión applynetezzaregtreenode
Regresión lineal applynetezzalineregressionnode
Serie temporal applynetezzatimeseriesnode
Lineal generalizado applynetezzaglmnode

Capítulo 15. Propiedades del nodo de modelado de base de datos 311


312 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python
Capítulo 16. Propiedades del nodo de resultados
Las propiedades de nodos de resultados se diferencian un poco de las de otros tipos de nodos. En lugar
de hacer referencia a una opción determinada de nodo, las propiedades de nodos de resultados
almacenan una referencia en el objeto de resultado. Esto resulta útil al tomar un valor de una tabla y
establecerlo como un parámetro de ruta.

Esta sección describe las propiedades de scripts disponibles para los nodos de resultados.

propiedades de analysisnode
El nodo Análisis evalúa la capacidad de los modelos predictivos para generar predicciones
precisas. Los nodos Análisis realizan varias comparaciones entre los valores predichos y los
valores reales para uno o más nugget de modelo. También pueden comparar modelos
predictivos entre sí.

Ejemplo
node = [Link]("analysis", "My node")
# Pestaña Análisis
[Link]("coincidence", True)
[Link]("performance", True)
[Link]("confidence", True)
[Link]("threshold", 75)
[Link]("improve_accuracy", 3)
[Link]("inc_user_measure", True)
# "Definir medida del usuario..."
[Link]("user_if", "@TARGET = @PREDICTED")
[Link]("user_then", "101")
[Link]("user_else", "1")
[Link]("user_compute", ["Mean", "Sum"])
[Link]("by_fields", ["Drug"])
# Pestaña "Resultados"
[Link]("output_format", "HTML")
[Link]("full_filename", "C:/output/analysis_out.html")
Tabla 224. propiedades de analysisnode.
Propiedad de analysisnode Tipo de datos Descripción de la propiedad
output_mode Screen Se utiliza para especificar la
File ubicación objetivo para el resultado
generado desde el nodo de
resultados.
use_output_name tag Especifica si se utiliza un nombre
de resultado personalizado.
output_name cadena Si use_output_name es verdadero,
especifica el nombre que se va a
utilizar.
output_format Text (.txt) Se utiliza para especificar el tipo de
HTML (.html) resultado.
Output (.cou)
by_fields lista

313
Tabla 224. propiedades de analysisnode (continuación).
Propiedad de analysisnode Tipo de datos Descripción de la propiedad
full_filename cadena Nombre del archivo de resultados,
si se trata de resultados HTML, de
datos o de disco.
coincidence tag
performance tag
evaluation_binary flag
confidence tag
umbral number
improve_accuracy number
inc_user_measure tag
user_if expr
user_then expr
user_else expr
user_compute [Mean Sum Min Max
SDev]

propiedades de dataauditnode
El nodo Auditoría de datos permite echar un primer vistazo exhaustivo a los datos,
incluyendo estadísticos de resumen, histogramas y distribución para cada campo, así como
información sobre valores atípicos, valores perdidos y extremos. Los resultados se muestran
en una matriz fácil de leer que se puede ordenar y utilizar para generar nodos de preparación
de datos y gráficos de tamaño completo.

Ejemplo
filenode = [Link]("variablefile", "File", 100, 100)
[Link]("full_filename", "$CLEO_DEMOS/DRUG1n")
node = [Link]("dataaudit", "My node", 196, 100)
[Link](filenode, node)
[Link]("custom_fields", True)
[Link]("fields", ["Age", "Na", "K"])
[Link]("display_graphs", True)
[Link]("basic_stats", True)
[Link]("advanced_stats", True)
[Link]("median_stats", False)
[Link]("calculate", ["Count", "Breakdown"])
[Link]("outlier_detection_method", "std")
[Link]("outlier_detection_std_outlier", 1.0)
[Link]("outlier_detection_std_extreme", 3.0)
[Link]("output_mode", "Screen")
Tabla 225. propiedades de dataauditnode.
Propiedad de dataauditnode Tipo de datos Descripción de la propiedad
custom_fields tag
campos [campo1 ... campoN]
overlay campo

314 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 225. propiedades de dataauditnode (continuación).
Propiedad de dataauditnode Tipo de datos Descripción de la propiedad
display_graphs flag Se utiliza para activar o desactivar
la representación de gráficos en la
matriz de resultados.
basic_stats tag
advanced_stats tag
median_stats tag
calculate Count Se utiliza para calcular valores
Breakdown perdidos. Seleccione uno de los
métodos de cálculo, ambos o
ninguno.
outlier_detection_method std Se utiliza para especificar el
iqr método de detección de valores
atípicos y extremos.
outlier_detection_std_outlier number Si outlier_detection_method es
std, especifica el número que se
utilizará para definir los valores
atípicos.
outlier_detection_std_extreme number Si outlier_detection_method es
std, especifica el número que se
utilizará para definir los valores
extremos.
outlier_detection_iqr_outlier number Si outlier_detection_method es
iqr, especifica el número que se
utilizará para definir los valores
atípicos.
outlier_detection_iqr_extreme number Si outlier_detection_method es
iqr, especifica el número que se
utilizará para definir los valores
extremos.
use_output_name tag Especifica si se utiliza un nombre
de resultado personalizado.
output_name cadena Si use_output_name es verdadero,
especifica el nombre que se va a
utilizar.
output_mode Screen Se utiliza para especificar la
File ubicación objetivo para el resultado
generado desde el nodo de
resultados.
output_format Formatted (.tab) Se utiliza para especificar el tipo de
Delimited (.csv) resultado.
HTML (.html)
Output (.cou)
paginate_output flag Si output_format es HTML, los
resultados se separarán por
páginas.
lines_per_page número Si se usa con paginate_output,
especifica las líneas por página del
resultado.
full_filename cadena

Capítulo 16. Propiedades del nodo de resultados 315


Propiedades de extensionoutputnode
El nodo de Resultados de extensión le permite analizar
los datos y los resultados de la puntuación de modelo
utilizando su propio script R o Python para Spark
personalizado. El resultado del análisis puede ser en texto
o en gráficos. El resultado se añade a la pestaña
Resultado del panel de gestor. De forma alternativa, el
resultado se puede redirigir a un archivo.

Ejemplo de Python para Spark


#### Ejemplo de script de Python para Spark
import [Link]
stream = [Link]()
node = [Link]("extension_output", "extension_output")
[Link]("syntax_type", "Python")

python_script = """
import json
import [Link]

cxt = [Link]()
df = [Link]()
schema = [Link][:]
print df
"""

[Link]("python_syntax", python_script)

Ejemplo de R
#### Ejemplo de script de R
[Link]("syntax_type", "R")
[Link]("r_syntax", "print(modelerData$Age)")
Tabla 226. Propiedades de extensionoutputnode
Propiedades de extensionoutputnode Tipo de datos Descripción de la propiedad
syntax_type R Especifica qué script se ejecuta: R o
Python Python (R es el valor
predeterminado).
r_syntax string Sintaxis de scripts R para la
puntuación del modelo.
python_syntax string Sintaxis de scripts Python para la
puntuación de modelo.
convert_flags StringsAndDoubles Opción para convertir campos de
LogicalValues distintivos.
convert_missing flag Opción para convertir valores
perdidos al valor NA de R.
convert_datetime flag Opción para convertir las variables
con los formatos de fecha o de
fecha y hora para formatos de
fecha/hora R.
convert_datetime_class POSIXct Opciones para especificar a qué
POSIXlt formato se convierten las variables
con los formatos de fecha o de
fecha y hora.

316 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 226. Propiedades de extensionoutputnode (continuación)
Propiedades de extensionoutputnode Tipo de datos Descripción de la propiedad
output_to Screen Especifique el tipo de salida
File (Screen o File).
output_type Graph Especifique si se debe producir
Text salida gráfica o de texto.
full_filename string Nombre de archivo a utilizar para
la salida generada.
graph_file_type HTML Tipo de archivo para el archivo de
COU salida (.html o .cou).
text_file_type HTML Especifique el tipo de archivo para
TEXT la salida de texto (.html, .txt o
COU .cou).

propiedades de matrixnode
El nodo Matriz crea una tabla que muestra las relaciones entre campos. Se suele utilizar
normalmente para mostrar las relaciones entre dos campos simbólicos, pero también puede
mostrar relaciones entre campos de marcas o entre campos numéricos.

Ejemplo
node = [Link]("matrix", "My node")
# Pestaña "Configuración"
[Link]("fields", "Numerics")
[Link]("row", "K")
[Link]("column", "Na")
[Link]("cell_contents", "Function")
[Link]("function_field", "Age")
[Link]("function", "Sum")
# Pestaña "Aspecto"
[Link]("sort_mode", "Ascending")
[Link]("highlight_top", 1)
[Link]("highlight_bottom", 5)
[Link]("display", ["Counts", "Expected", "Residuals"])
[Link]("include_totals", True)
# Pestaña "Resultados"
[Link]("full_filename", "C:/output/matrix_output.html")
[Link]("output_format", "HTML")
[Link]("paginate_output", True)
[Link]("lines_per_page", 50)
Tabla 227. propiedades de matrixnode.
Propiedades de matrixnode Tipo de datos Descripción de la propiedad
campos Seleccionado
Flags
Caracteres numéricos
row campo
column campo

Capítulo 16. Propiedades del nodo de resultados 317


Tabla 227. propiedades de matrixnode (continuación).
Propiedades de matrixnode Tipo de datos Descripción de la propiedad
include_missing_values tag Determina si los valores perdidos
por el sistema (nulos) o no
especificados por el usuario
(vacíos) se incluyen en los
resultados de fila y columna.
cell_contents CrossTabs
Función
function_field cadena
function Sum
Media
Mín
Máx
SDev
sort_mode Unsorted
Ascending
Descending
highlight_top number Si no es cero, es verdadero.
highlight_bottom number Si no es cero, es verdadero.
display [Counts
Expected
Residuos
RowPct
ColumnPct
TotalPct]
include_totals tag
use_output_name tag Especifica si se utiliza un nombre
de resultado personalizado.
output_name cadena Si use_output_name es verdadero,
especifica el nombre que se va a
utilizar.
output_mode Screen Se utiliza para especificar la
File ubicación objetivo para el resultado
generado desde el nodo de
resultados.
output_format Formatted (.tab) Se utiliza para especificar el tipo de
Delimited (.csv) resultado. Los formatos Formatted
HTML (.html) y Delimited aceptan el modificador
Output (.cou) transposed, mediante el cual se
transponen filas y columnas en la
tabla.
paginate_output flag Si output_format es HTML, los
resultados se separarán por
páginas.
lines_per_page número Si se usa con paginate_output,
especifica las líneas por página del
resultado.
full_filename cadena

318 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


propiedades de meansnode
El nodo Medias compara las medias de grupos independientes o de pares de campos
relacionados para probar si existen diferencias significativas. Por ejemplo, puede comparar los
ingresos medios antes y después de poner en marcha una promoción o comparar los ingresos
de los clientes que no recibieron esa promoción con los que sí lo hicieron.

Ejemplo
node = [Link]("means", "My node")
[Link]("means_mode", "BetweenFields")
[Link]("paired_fields", [["OPEN_BAL", "CURR_BAL"]])
[Link]("label_correlations", True)
[Link]("output_view", "Advanced")
[Link]("output_mode", "File")
[Link]("output_format", "HTML")
[Link]("full_filename", "C:/output/means_output.html")
Tabla 228. propiedades de meansnode.
Propiedad de meansnode Tipo de datos Descripción de la propiedad
means_mode BetweenGroups Especifica el tipo de estadístico de
BetweenFields las medias que se va a ejecutar en
los datos.
test_fields [field1 ... fieldn] Especifica el campo de prueba si
means_mode se establece en
BetweenGroups.
grouping_field campo Especifica el campo de agrupación.
paired_fields [[field1 field2] Especifica los pares de campos que
[campo3 campo4] se usan si means_mode se establece
...] en BetweenFields.
label_correlations tag Determina si las etiquetas de
correlación se muestran en el
resultado. Esta configuración se
aplica únicamente si means_mode se
establece en BetweenFields.
correlation_mode Probability Determina si las correlaciones
Absolute deben etiquetarse según la
probabilidad o según el valor
absoluto.
weak_label cadena
medium_label cadena
strong_label cadena
weak_below_probability number Si correlation_mode se establece en
Probability, determina el valor de
corte para las correlaciones débiles.
Debe tratarse de un valor
comprendido entre 0 y 1; por
ejemplo, 0,90.
strong_above_probability number Valor de corte para correlaciones
fuertes.

Capítulo 16. Propiedades del nodo de resultados 319


Tabla 228. propiedades de meansnode (continuación).
Propiedad de meansnode Tipo de datos Descripción de la propiedad
weak_below_absolute number Si correlation_mode se establece en
Absolute, especifica el valor de
corte para las correlaciones débiles.
Debe tratarse de un valor
comprendido entre 0 y 1; por
ejemplo, 0,90.
strong_above_absolute number Valor de corte para correlaciones
fuertes.
unimportant_label cadena
marginal_label cadena
important_label cadena
unimportant_below number Valor de corte para una
importancia del campo baja. Debe
tratarse de un valor comprendido
entre 0 y 1; por ejemplo, 0,90.
important_above number
use_output_name tag Especifica si se utiliza un nombre
de resultado personalizado.
output_name cadena Nombre que se va a usar.
output_mode Screen Especifica la ubicación objetivo
File para el resultado generado desde el
nodo de resultados.
output_format Formatted (.tab) Especifica el tipo de resultado.
Delimited (.csv)
HTML (.html)
Output (.cou)
full_filename cadena
output_view Simple Determina si el resultado muestra
Advanced la vista simple o la avanzada.

propiedades de reportnode
El nodo Informe crea informes con formato que contienen texto fijo, así como datos y otras
expresiones derivadas de los datos. Puede especificar el formato del informe utilizando
plantillas de texto para definir el texto fijo y las construcciones de resultados de datos. Puede
proporcionar formato de texto personalizado utilizando etiquetas HTML de la plantilla y
configurando opciones en la pestaña Resultado. Puede incluir valores de datos y otros
resultados condicionales mediante el uso de expresiones CLEM en la plantilla.

Ejemplo
node = [Link]("report", "My node")
[Link]("output_format", "HTML")
[Link]("full_filename", "C:/report_output.html")
[Link]("lines_per_page", 50)
[Link]("title", "Report node created by a script")
[Link]("highlights", False)

320 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 229. propiedades de reportnode.
Propiedad de reportnode Tipo de datos Descripción de la propiedad
output_mode Screen Se utiliza para especificar la
File ubicación objetivo para el resultado
generado desde el nodo de
resultados.
output_format HTML (.html) Se utiliza para especificar el tipo de
Text (.txt) salida de archivo.
Output (.cou)
format Automático Se utiliza para elegir si la salida se
Personalizado formatea automáticamente o si se
formatea utilizando el HTML
incluido en la plantilla. Para
utilizar el formato HTML en la
plantilla, especifique
Personalizado.
use_output_name tag Especifica si se utiliza un nombre
de resultado personalizado.
output_name cadena Si use_output_name es verdadero,
especifica el nombre que se va a
utilizar.
text cadena
full_filename cadena
highlights tag
título cadena
lines_per_page number

propiedades de routputnode
El nodo Routput permite analizar datos y resultados de la
puntuación del modelo utilizando su propio script R
personalizado. El resultado del análisis puede ser en texto
o en gráficos. El resultado se añade a la pestaña
Resultado del panel de gestor. De forma alternativa, el
resultado se puede redirigir a un archivo.

Tabla 230. propiedades de routputnode


Propiedades de routputnode Tipo de datos Descripción de la propiedad
syntax cadena
convert_flags StringsAndDoubles
LogicalValues
convert_datetime flag
convert_datetime_class POSIXct
POSIXlt
convert_missing flag
output_name Auto
Custom
custom_name cadena

Capítulo 16. Propiedades del nodo de resultados 321


Tabla 230. propiedades de routputnode (continuación)
Propiedades de routputnode Tipo de datos Descripción de la propiedad
output_to Screen
File
output_type Graph
Text
full_filename cadena
graph_file_type HTML
COU
text_file_type HTML
TEXT
COU

propiedades de setglobalsnode
El nodo Val. globales explora los datos y calcula los valores de resumen que se pueden
utilizar en expresiones CLEM. Por ejemplo, puede utilizar este nodo para calcular estadísticos
para un campo denominado edad y, a continuación, utilizar la media global de edad en
expresiones CLEM insertando la función @GLOBAL_MEAN(edad).

Ejemplo
node = [Link]("setglobals", "My node")
[Link]("globals", "Na", ["Max", "Sum", "Mean"])
[Link]("globals", "K", ["Max", "Sum", "Mean"])
[Link]("globals", "Age", ["Max", "Sum", "Mean", "SDev"])
[Link]("clear_first", False)
[Link]("show_preview", True)
Tabla 231. propiedades de setglobalsnode.
Propiedad de setglobalsnode Tipo de datos Descripción de la propiedad
globals [Sum Mean Min Max Propiedad estructurada en la que
SDev] los campos que se van a establecer
deben hacer referencia a la sintaxis
siguiente:
[Link](
"globals", "Age", ["Max", "Sum",
"Mean", "SDev"])
clear_first tag
show_preview tag

propiedades de simevalnode
El nodo de evaluación de simulación evalúa un campo de destino predicho y presenta
información sobre la distribución y correlación del campo de destino.

322 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 232. propiedades de simevalnode.
propiedades de simevalnode Tipo de datos Descripción de la propiedad
target campo
iteration campo
presorted_by_iteration booleano
max_iterations número
tornado_fields [field1...fieldN]
plot_pdf booleano
plot_cdf booleano
show_ref_mean booleano
show_ref_median booleano
show_ref_sigma booleano
num_ref_sigma número
show_ref_pct booleano
ref_pct_bottom número
ref_pct_top número
show_ref_custom booleano
ref_custom_values [number1...numberN]
category_values Category
Probabilities
Both
category_groups Categories
Iterations
create_pct_table booleano
pct_table Quartiles
Intervals
Custom
pct_intervals_num número
pct_custom_values [number1...numberN]

propiedades de simfitnode
El nodo de simulación de ajuste examina la distribución de las estadísticas de los datos de
cada campo y genera (o actualiza) un nodo de generación de simulación, con la mejor
distribución de ajuste asignada a cada campo. El nodo de generación de simulación se puede
utilizar, a continuación, para generar datos simulados.

Tabla 233. propiedades de simfitnode.


propiedades de simfitnode Tipo de datos Descripción de la propiedad
build Nodo
XMLExport
Both
use_source_node_name booleano
source_node_name cadena El nombre personalizado del nodo
de origen que se está generando o
actualizando.

Capítulo 16. Propiedades del nodo de resultados 323


Tabla 233. propiedades de simfitnode (continuación).
propiedades de simfitnode Tipo de datos Descripción de la propiedad
use_cases All
LimitFirstN
use_case_limit entero
fit_criterion AndersonDarling
KolmogorovSmirnov
num_bins entero
parameter_xml_filename cadena
generate_parameter_import booleano

propiedades de statisticsnode
El nodo Estadísticos ofrece información básica de resumen acerca de los campos numéricos.
Calcula estadísticos de resumen para campos individuales y correlaciones entre campos.

Ejemplo
node = [Link]("statistics", "My node")
# Pestaña "Configuración"
[Link]("examine", ["Age", "BP", "Drug"])
[Link]("statistics", ["mean", "sum", "sdev"])
[Link]("correlate", ["BP", "Drug"])
# "Etiquetas de correlación..." section
[Link]("label_correlations", True)
[Link]("weak_below_absolute", 0.25)
[Link]("weak_label", "lower quartile")
[Link]("strong_above_absolute", 0.75)
[Link]("medium_label", "middle quartiles")
[Link]("strong_label", "upper quartile")
# Pestaña "Resultados"
[Link]("full_filename", "c:/output/statistics_output.html")
[Link]("output_format", "HTML")
Tabla 234. propiedades de statisticsnode.
Propiedad de statisticsnode Tipo de datos Descripción de la propiedad
use_output_name tag Especifica si se utiliza un nombre
de resultado personalizado.
output_name cadena Si use_output_name es verdadero,
especifica el nombre que se va a
utilizar.
output_mode Screen Se utiliza para especificar la
File ubicación objetivo para el resultado
generado desde el nodo de
resultados.
output_format Text (.txt) Se utiliza para especificar el tipo de
HTML (.html) resultado.
Output (.cou)
full_filename cadena

324 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 234. propiedades de statisticsnode (continuación).
Propiedad de statisticsnode Tipo de datos Descripción de la propiedad
examine lista
correlate lista
statistics [count mean sum min
max range variance
sdev semean median
mode]
correlation_mode Probability Determina si las correlaciones
Absolute deben etiquetarse según la
probabilidad o según el valor
absoluto.
label_correlations tag
weak_label cadena
medium_label cadena
strong_label cadena
weak_below_probability number Si correlation_mode se establece en
Probability, determina el valor de
corte para las correlaciones débiles.
Debe tratarse de un valor
comprendido entre 0 y 1; por
ejemplo, 0,90.
strong_above_probability number Valor de corte para correlaciones
fuertes.
weak_below_absolute number Si correlation_mode se establece en
Absolute, especifica el valor de
corte para las correlaciones débiles.
Debe tratarse de un valor
comprendido entre 0 y 1; por
ejemplo, 0,90.
strong_above_absolute number Valor de corte para correlaciones
fuertes.

Propiedades de statisticsoutputnode
El nodo Resultados de Statistics le permite llamar a un procedimiento de IBM SPSS Statistics
para analizar los datos de IBM SPSS Modeler. Se puede acceder a una gran variedad de
procedimientos analíticos de IBM SPSS Statistics. Este nodo requiere una copia de IBM SPSS
Statistics con licencia.

Las propiedades de este nodo están descritas en “Propiedades de statisticsoutputnode” en la página 348.

propiedades de tablenode
El nodo Tabla muestra los datos en formato de tabla, que también se puede escribir en un
archivo. Esto es útil en cualquier momento en que necesite inspeccionar sus valores de datos
o exportarlos en un formato fácilmente legible.

Capítulo 16. Propiedades del nodo de resultados 325


Ejemplo
node = [Link]("table", "My node")
[Link]("highlight_expr", "Age > 30")
[Link]("output_format", "HTML")
[Link]("transpose_data", True)
[Link]("full_filename", "C:/output/table_output.htm")
[Link]("paginate_output", True)
[Link]("lines_per_page", 50)
Tabla 235. propiedades de tablenode.
Propiedad de tablenode Tipo de datos Descripción de la propiedad
full_filename cadena Nombre del archivo de resultados, si se
trata de resultados HTML, de datos o de
disco.
use_output_name tag Especifica si se utiliza un nombre de
resultado personalizado.
output_name cadena Si use_output_name es verdadero,
especifica el nombre que se va a utilizar.
output_mode Screen Se utiliza para especificar la ubicación
File objetivo para el resultado generado
desde el nodo de resultados.
output_format Formatted (.tab) Se utiliza para especificar el tipo de
Delimited (.csv) resultado.
HTML (.html)
Output (.cou)
transpose_data tag Transpone los datos antes de exportarlos
de manera que las filas representan
campos y las columnas, registros.
paginate_output flag Si output_format es HTML, los resultados
se separarán por páginas.
lines_per_page número Si se usa con paginate_output, especifica
las líneas por página del resultado.
highlight_expr cadena
output cadena Propiedad de sólo lectura que mantiene
una referencia en la última tabla creada
por el nodo.
value_labels [[Valor CadenaEtiqueta] Se utiliza para especificar etiquetas para
[Valor CadenaEtiqueta] ...] los pares de valores.
display_places entero Establece el número de cifras decimales
para el campo cuando se muestra (sólo
se aplica a campos con almacenamiento
REAL). Un valor de -1 utilizará el valor
predeterminado de la ruta.
export_places entero Establece el número de cifras decimales
para el campo cuando se exporta (sólo se
aplica a campos con almacenamiento
REAL). Un valor de -1 utilizará el valor
predeterminado de la ruta.
decimal_separator DEFAULT Establece el separador decimal para el
PERIOD campo (sólo se aplica a campos con
COMMA almacenamiento REAL).

326 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 235. propiedades de tablenode (continuación).
Propiedad de tablenode Tipo de datos Descripción de la propiedad
date_format "DDMMAA" Establece el formato de fecha para el
"MMDDYY" campo (sólo se aplica a campos con
"AAMMDD" almacenamiento FECHA o MARCADETIEMPO).
"YYMMDD"
"YYYYDDD"
DAY
MONTH
"DD-MM-YY"
"DD-MM-YYYY"
"MM-DD-YY"
"MM-DD-AAAA"
"DD-MES-YY"
"DD-MES-YYYY"
"YYYY-MM-DD"
"[Link]"
"[Link]"
"[Link]"
"[Link]"
"[Link]"
"DD/MM/YY"
"DD/MM/AAAA"
"MM/DD/YY"
"MM/DD/YYYY"
"DD/MES/YY"
"DD/MES/YYYY"
MON YYYY
q Q YYYY
ww WK YYYY
time_format "HHMMSS" Establece el formato de hora para el
"HHMM" campo (sólo se aplica a campos con
"MMSS" almacenamiento TIME o TIMESTAMP).
"HH:MM:SS"
"HH:MM"
"MM:SS"
"(H)H:(M)M:(S)S"
"(H)H:(M)M"
"(M)M:(S)S"
"[Link]"
"[Link]"
"[Link]"
"(H)H.(M)M.(S)S"
"(H)H.(M)M"
"(M)M.(S)S"
column_width entero Establece el ancho de columna para el
campo. Un valor de -1 establecerá el
ancho de columna en Auto.
justify AUTO Establece la justificación de columna
CENTER para el campo.
LEFT
RIGHT

Capítulo 16. Propiedades del nodo de resultados 327


propiedades de transformnode
El nodo Transformación permite seleccionar y previsualizar los resultados de las
transformaciones antes de aplicarlas a los campos seleccionados.

Ejemplo
node = [Link]("transform", "My node")
[Link]("fields", ["AGE", "INCOME"])
[Link]("formula", "Select")
[Link]("formula_log_n", True)
[Link]("formula_log_n_offset", 1)
Tabla 236. propiedades de transformnode.
propiedades de transformnode Tipo de datos Descripción de la propiedad
campos [ field1... fieldn] Campos que se utilizarán en la
transformación.
formula Todos Indica si se deben calcular todas
Select las transformaciones o sólo las
seleccionadas.
formula_inverse flag Indica si se debe utilizar la
transformación inversa.
formula_inverse_offset número Indica el desplazamiento de los
datos que se utilizará en la
fórmula. De forma predeterminada
es 0, a menos que el usuario
especifique un valor.
formula_log_n flag Indica si debe utilizarse la
transformación logn.
formula_log_n_offset número
formula_log_10 flag Indica si debe utilizarse la
transformación log10.
formula_log_10_offset número
formula_exponential flag Indica si se debe utilizar la
transformación exponencial (ex).
formula_square_root flag Indica si se debe utilizar la
transformación de raíz cuadrada.
use_output_name flag Especifica si se utiliza un nombre
de resultado personalizado.
output_name string Si use_output_name es verdadero,
especifica el nombre que se va a
utilizar.
output_mode Screen Se utiliza para especificar la
File ubicación objetivo para el resultado
generado desde el nodo de
resultados.
output_format HTML (.html) Se utiliza para especificar el tipo de
Output (.cou) resultado.

328 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 236. propiedades de transformnode (continuación).
propiedades de transformnode Tipo de datos Descripción de la propiedad
paginate_output flag Si output_format es HTML, los
resultados se separarán por
páginas.
lines_per_page número Si se usa con paginate_output,
especifica las líneas por página del
resultado.
full_filename cadena Indica el nombre de archivo que se
utilizará para el resultado de
archivo.

Capítulo 16. Propiedades del nodo de resultados 329


330 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python
Capítulo 17. Propiedades de nodos Exportar
Propiedades de nodos Exportar comunes
Las siguientes propiedades son comunes a todos los nodos de exportación:
Tabla 237. Propiedades comunes de nodos de exportación
Propiedad Valores Descripción de la propiedad
publish_path cadena Introduzca el nombre raíz que se utilizará
para la imagen publicada y los archivos de
parámetros.
publish_metadata flag Especifica si un archivo de metadatos se
crea y que describe las entradas y los
resultados de la imagen y sus modelos de
datos.
publish_use_parameters flag Especifica si se incluyen parámetros de ruta
en el archivo *.par.
publish_parameters lista de cadenas Especifica los parámetros que se van a
incluir.
execute_mode export_data Especifica si el nodo se ejecuta sin publicar
publish la ruta, o si la ruta se publica
automáticamente cuando se ejecuta el nodo.

Propiedades de asexport
La exportación de Analytic Server permite ejecutar una ruta en el sistema de archivos distribuido de
Hadoop (HDFS).

Ejemplo
[Link]("use_default_as", False)
[Link]("connection",
["false","[Link]","9080","analyticserver","ibm","admin","admin","false","","","",""])
Tabla 238. Propiedades de asexport.
Propiedades de asexport Tipo de datos Descripción de la propiedad
data_source cadena Nombre del origen de datos.
export_mode cadena Especifica si se añaden (append) los datos
exportados al origen de datos existente o
si se sobrescriben (overwrite) al origen
de datos existente.
use_default_as booleano Si se establece en True, utiliza la conexión
de Analytic Server predeterminada
configurada en el archivo [Link] de
servidor. Si se establece en False, utiliza
la conexión de este nodo.

331
Tabla 238. Propiedades de asexport (continuación).
Propiedades de asexport Tipo de datos Descripción de la propiedad
connection ["string","string","string", Una propiedad de la lista que contiene los
"string","string","string","string", detalles de conexión de Analytic Server. El
"string","string","string", "string" formato es: ["is_secure_connect",
,"string"] "server_url", "server_port",
"context_root", "consumer",
"user_name", "password",
"use-kerberos-auth",
"kerberos-krb5-config-file-path",
"kerberos-jaas-config-file-path",
"kerberos-krb5-service-principal-
name", "enable-kerberos-debug"] Donde:
is_secure_connect: indica si se utiliza la
conexión segura y es true o false.
use-kerberos-auth: indica si se utiliza
autenticación Kerberos y es true o false.
enable-kerberos-debug: indica si se
utiliza el modo de depuración de la
autenticación Kerberos y es true o false.

Propiedades del nodo de exportación Cognos


El nodo Exportar de IBM Cognos exporta datos en un formato que pueden leer las bases de
datos de IBM Cognos.

Para este nodo, debe definir una conexión de Cognos y una conexión ODBC.

332 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Conexión de Cognos

Las propiedades de la conexión de Cognos son las siguientes.


Tabla 239. Propiedades del nodo de exportación Cognos
Propiedades del nodo de
exportación Cognos Tipo de datos Descripción de la propiedad
cognos_connection ["cadena","distintivo","cadena","cadena", Una propiedad de la lista que contiene
"cadena"] los detalles de conexión para el servidor
de Cognos. El formato es:
["Cognos_server_URL", login_mode,
"namespace", "username", "password"]

donde:
Cognos_server_URL es la URL del
servidor de Cognos que contiene el
origen.
login_mode indica si se utiliza el inicio de
sesión anónimo, y es true o false; si se
establece en true, los campos siguientes
deben establecerse en "".
namespace especifica el proveedor de
autenticación de seguridad utilizado para
registrarse en el servidor.
username y password son los utilizados
para registrarse en el servidor de Cognos.

En lugar de login_mode, también hay


disponibles las modalidades siguientes:
v anonymousMode. Por ejemplo:
[’Cognos_server_url’,
’anonymousMode’, "namespace",
"username", "password"]
v credentialMode. Por ejemplo:
[’Cognos_server_url’,
’credentialMode’, "namespace",
"username", "password"]
v storedCredentialMode. Por ejemplo:
[’Cognos_server_url’,
’storedCredentialMode’,
"stored_credential_name"]

Donde stored_credential_name es el
nombre de una credencial de Cognos
del repositorio.
cognos_package_name cadena La ruta y el nombre del paquete de
Cognos al que está exportando datos, por
ejemplo:
/Public Folders/MyPackage
cognos_datasource cadena
cognos_export_mode Publicar
ExportFile
cognos_filename cadena

Capítulo 17. Propiedades de nodos Exportar 333


Conexión ODBC

Las propiedades de la conexión ODBC son idénticas a las indicadas para databaseexportnode en la
sección siguiente, a excepción de la propiedad datasource, que no es válida.

propiedades de databaseexportnode
El nodo Exportar base de datos escribe datos en orígenes de datos relacionales compatibles
con ODBC. Para escribir en un origen de datos ODBC, el origen de datos debe existir y debe
tener permiso para escribir en él.

Ejemplo
’’’
Se asume que se ha configurado un origen de datos denominado "Miorigendedatos"
’’’
stream = [Link]()
db_exportnode = [Link]("databaseexport", "DB Export", 200, 200)
applynn = [Link]("applyneuralnetwork", None)
[Link](applynn, db_exportnode)

# pestaña Exportar
db_exportnode.setPropertyValue("username", "user")
db_exportnode.setPropertyValue("datasource", "MyDatasource")
db_exportnode.setPropertyValue("password", "password")
db_exportnode.setPropertyValue("table_name", "predictions")
db_exportnode.setPropertyValue("write_mode", "Create")
db_exportnode.setPropertyValue("generate_import", True)
db_exportnode.setPropertyValue("drop_existing_table", True)
db_exportnode.setPropertyValue("delete_existing_rows", True)
db_exportnode.setPropertyValue("default_string_size", 32)

# Cuadro de diálogo Esquema


db_exportnode.setKeyedPropertyValue("type", "region", "VARCHAR(10)")
db_exportnode.setKeyedPropertyValue("export_db_primarykey", "id", True)
db_exportnode.setPropertyValue("use_custom_create_table_command", True)
db_exportnode.setPropertyValue("custom_create_table_command", "My SQL Code")

# Cuadro de diálogo Índices


db_exportnode.setPropertyValue("use_custom_create_index_command", True)
db_exportnode.setPropertyValue("custom_create_index_command", "CREATE BITMAP INDEX <index-name>
ON <table-name> <(index-columns)>")
db_exportnode.setKeyedPropertyValue("indexes", "MYINDEX", ["fields", ["id", "region"]])
Tabla 240. propiedades de databaseexportnode.
Propiedades de databaseexportnode Tipo de datos Descripción de la propiedad
datasource cadena
nombre de usuario cadena
contraseña cadena

334 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 240. propiedades de databaseexportnode (continuación).
Propiedades de databaseexportnode Tipo de datos Descripción de la propiedad
epassword cadena Este intervalo es de sólo lectura
durante la ejecución. Para generar
una contraseña codificada, utilice la
herramienta Contraseña disponible
del menú Herramientas. Consulte el
tema “Generación de una contraseña
codificada” en la página 52 para
obtener más información.
table_name cadena
write_mode Create
Append
Fundir
map cadena Correlaciona un nombre de campo de
ruta a un nombre de columna de la
base de datos (sólo es válido si
write_mode es Merge).

Para una fusión, todos los campos se


deben estar correlacionados para que
se exporten. Los nombres de campos
que no existen en la base de datos se
añaden como nuevas columnas.
key_fields lista Especifica el campo de ruta que se
utiliza para la clave; la propiedad map
muestra los elementos que se
corresponden con la base de datos.
join Base de datos
Añadir
drop_existing_table tag
delete_existing_rows tag
default_string_size entero
type Propiedad estructurada que se utiliza
para establecer el tipo de esquema.
generate_import tag
use_custom_create_table_command tag Utilice el intervalo custom_create_table
para modificar el comando de SQL
estándar CREATE TABLE.
custom_create_table_command cadena Especifica el comando de cadena a
utilizar en lugar del comando de SQL
estándar CREATE TABLE.
use_batch tag Las siguientes propiedades son
opciones avanzadas para la carga
masiva de la base de datos. Un valor
verdadero para Use_batch desactiva
fila a fila las confirmaciones en la
base de datos.
batch_size number Especifica el número de registros
para enviar a la base de datos antes
de confirmar en la memoria.

Capítulo 17. Propiedades de nodos Exportar 335


Tabla 240. propiedades de databaseexportnode (continuación).
Propiedades de databaseexportnode Tipo de datos Descripción de la propiedad
bulk_loading Off Especifica el tipo de carga masiva. A
ODBC continuación se muestran las
External opciones adicionales para ODBC y
External.
not_logged flag
odbc_binding Row Especifique el enlace a lo largo de las
Columna filas o de las columnas para la carga
masiva a través de ODBC.
loader_delimit_mode Tabulador Especifique el tipo de delimitador
Space para la carga masiva a través de un
Other programa externo. Seleccione Other
junto con la propiedad
loader_other_delimiter
para especificar los delimitadores,
como la coma (,).
loader_other_delimiter cadena
specify_data_file flag Una marca verdadera activa la
siguiente propiedad data_file, en la
que puede especificar el nombre de
archivo y la ruta de acceso en la que
se va a escribir al realizar la carga
masiva en la base de datos.
data_file cadena
specify_loader_program flag Una marca verdadera activa la
siguiente propiedad loader_program,
en la que puede especificar el nombre
y la ubicación de un programa o
script del cargador externo.
loader_program cadena
gen_logfile flag Una marca verdadera activa la
siguiente propiedad logfile_name, en
la que puede especificar el nombre
de un archivo en el servidor para
generar un registro de errores.
logfile_name cadena
check_table_size flag Una marca verdadera permite la
comprobación de la tabla para
garantizar que el aumento del
tamaño de la tabla de la base de
datos se corresponde con el número
de filas exportadas desde IBM SPSS
Modeler.
loader_options cadena Especifique los argumentos
adicionales, como -comment y
-specialdir, en el programa
cargador.
export_db_primarykey tag Determina si el campo especificado
es una clave primaria.
use_custom_create_index_command tag Si se establece true, se activa SQL
personalizado para todos los índices.

336 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 240. propiedades de databaseexportnode (continuación).
Propiedades de databaseexportnode Tipo de datos Descripción de la propiedad
custom_create_index_command cadena Especifica el comando de SQL
empleado para crear índices cuando
SQL personalizado está activado.
(Este valor puede anularse para
determinados índices, tal y como se
indica a continuación.)
[Link] Crea el índice especificado si procede
y enumera los nombres de campos
que se van a incluir en él.
INDEXNAME "use_custom_create_ tag Se usa para activar o desactivar el
index_command" SQL personalizado para un índice
específico. Consulte los ejemplos
situados a continuación de la
siguiente tabla.
INDEXNAME "custom_create_index_ cadena Especifica el SQL personalizado que
command" se usa para el índice específico.
Consulte los ejemplos situados a
continuación de la siguiente tabla.
[Link] tag Si se establece True, se elimina el
índice específico del grupo de
índices.
table_space cadena Especifica el espacio de tabla que se
creará.
use_partition tag Especifica que se utilizará el campo
Distribuir Hash.
partition_field cadena Especifica el contenido del campo
Distribuir Hash.

Nota: Para algunas bases de datos, puede especificar que se crearán tablas de bases de datos para la
exportación con compresión (por ejemplo, el equivalente a CREATE TABLE MYTABLE (...) COMPRESS YES;
en SQL). Las propiedades use_compression y compression_mode se proporcionan para dar soporte a esta
característica, como se indica a continuación.
Tabla 241. Propiedades de databaseexportnode utilizando funciones de compresión.
Propiedades de databaseexportnode Tipo de datos Descripción de la propiedad
use_compression Booleana Si se establece en True, crea tablas para la
exportación con compresión.
compression_mode Row Establece el nivel de compresión de las bases
Page de datos de SQL Server.
Predeterminado Establece el nivel de compresión de las bases
Direct_Load_Operations de datos de Oracle. Tenga en cuenta que los
All_Operations valores OLTP, Query_High, Query_Low,
Básico Archive_High y Archive_Low requieren un
OLTP mínimo de Oracle 11gR2.
Query_High
Query_Low
Archive_High
Archive_Low

Ejemplo que muestra cómo cambiar el comando CREATE INDEX para un índice específico:

Capítulo 17. Propiedades de nodos Exportar 337


db_exportnode.setKeyedPropertyValue("indexes", "MYINDEX", ["use_custom_create_index_command",
True])db_exportnode.setKeyedPropertyValue("indexes", "MYINDEX", ["custom_create_index_command",
"CREATE BITMAP INDEX <index-name> ON <table-name> <(index-columns)>"])

De forma alternativa, esto puede hacerse a través de una tabla hash:


db_exportnode.setKeyedPropertyValue("indexes", "MYINDEX", ["fields":["id", "region"],
"use_custom_create_index_command":True, "custom_create_index_command":"CREATE INDEX
<index-name> ON
<nombre-tabla> <(columnasindex-columns)>"])

Propiedades de datacollectionexportnode
El nodo de exportación Data Collection abre los datos en el formato utilizado por el software
de investigación de mercados Data Collection. Debe estar instalada una biblioteca de datos de
Data Collection para utilizar este nodo.

Ejemplo
stream = [Link]()
datacollectionexportnode = [Link]("datacollectionexport", "Data Collection", 200, 200)
[Link]("metadata_file", "c:\\[Link]")
[Link]("merge_metadata", "Overwrite")
[Link]("casedata_file", "c:\\[Link]")
[Link]("generate_import", True)
[Link]("enable_system_variables", True)
Tabla 242. propiedades de datacollectionexportnode
propiedades de datacollectionexportnode Tipo de datos Descripción de la propiedad
metadata_file cadena Nombre del archivo de metadatos
que se va a exportar.
merge_metadata Overwrite
MergeCurrent
enable_system_variables flag Especifica si el archivo .mdd
exportado debe incluir las variables
de sistema de Data Collection.
casedata_file cadena Nombre del archivo .sav donde se
exportan los datos de casos.
generate_import flag

Propiedades de excelexportnode
El nodo de exportación Excel genera datos en el formato de archivo .xlsx de Microsoft Excel.
Si lo desea, puede elegir iniciar automáticamente Excel y abrir el archivo exportado cuando se
ejecute el nodo.

Ejemplo
stream = [Link]()
excelexportnode = [Link]("excelexport", "Excel", 200, 200)
[Link]("full_filename", "C:/output/[Link]")

338 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


[Link]("excel_file_type", "Excel2007")
[Link]("inc_field_names", True)
[Link]("inc_labels_as_cell_notes", False)
[Link]("launch_application", True)
[Link]("generate_import", True)
Tabla 243. Propiedades de excelexportnode
Propiedad de excelexportnode Tipo de datos Descripción de la propiedad
full_filename cadena
excel_file_type Excel2007
export_mode Create
Append
inc_field_names flag Especifica si los nombres de
campos deben incluirse en la
primera fila de la hoja de trabajo.
start_cell cadena Especifica la casilla de inicio de la
exportación.
worksheet_name cadena Nombre de la hoja de trabajo que
se va a escribir.
launch_application flag Determina si Excel debe invocarse
para el archivo resultante. Tenga en
cuenta que deberá especificar la
ruta para iniciar Excel en el cuadro
de diálogo Aplicaciones de ayuda
(menú Herramientas, Aplicaciones
de ayuda).
generate_import flag Determina si debe crearse un nodo
Importar a Excel que leerá el
archivo de datos exportado.

Propiedades de extensionexportnode

Con el nodo de Exportación de extensión, puede ejecutar


scripts R o Python para Spark para exportar datos.

Ejemplo de Python para Spark


#### Ejemplo de script de Python para Spark
import [Link]
stream = [Link]()
node = [Link]("extension_export", "extension_export")
[Link]("syntax_type", "Python")

python_script = """import [Link]


from [Link] import SQLContext
from [Link] import *

cxt = [Link]()
df = [Link]()
print [Link][:]
_newDF = [Link]("Age","Drug")

Capítulo 17. Propiedades de nodos Exportar 339


print _newDF.dtypes[:]

[Link]("Age", "Drug").[Link]("c:/data/[Link]", format="json")


"""

[Link]("python_syntax", python_script)

Ejemplo de R
#### Ejemplo de script de R
[Link]("syntax_type", "R")
[Link]("r_syntax", """[Link](modelerData, "C:/[Link]")""")
Tabla 244. Propiedades de extensionexportnode
Propiedades de extensionexportnode Tipo de datos Descripción de la propiedad
syntax_type R Especifica qué script se ejecuta: R o
Python Python (R es el valor
predeterminado).
r_syntax string Sintaxis de scripts R a ejecutar.
python_syntax string Sintaxis de scripts Python a
ejecutar.
convert_flags StringsAndDoubles Opción para convertir campos de
LogicalValues distintivos.
convert_missing flag Opción para convertir valores
perdidos al valor NA de R.
convert_datetime flag Opción para convertir las variables
con los formatos de fecha o de
fecha y hora para formatos de
fecha/hora R.
convert_datetime_class POSIXct Opciones para especificar a qué
POSIXlt formato se convierten las variables
con los formatos de fecha o de
fecha y hora.

Propiedades de outputfilenode
El nodo Archivo sin formato produce datos en un archivo de texto delimitado. Esto es útil
para exportar datos que se pueden leer con otro software de hoja de cálculo o de análisis.

Ejemplo
stream = [Link]()
outputfile = [Link]("outputfile", "File Output", 200, 200)
[Link]("full_filename", "c:/output/flatfile_output.txt")
[Link]("write_mode", "Append")
[Link]("inc_field_names", False)
[Link]("use_newline_after_records", False)
[Link]("delimit_mode", "Tab")
[Link]("other_delimiter", ",")
[Link]("quote_mode", "Double")
[Link]("other_quote", "*")
[Link]("decimal_symbol", "Period")
[Link]("generate_import", True)

340 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 245. propiedades de outputfilenode
Propiedades de outputfilenode Tipo de datos Descripción de la propiedad
full_filename cadena Nombre del archivo de resultados.
write_mode Overwrite
Append

inc_field_names flag
use_newline_after_records flag
delimit_mode Comma
Tab
Space
Other
other_delimiter carácter
quote_mode Ninguno
Single
Double
Other
other_quote flag
generate_import flag
codificación StreamDefault
SystemDefault
"UTF-8"

Propiedades de sasexportnode
El nodo Exportar SAS produce datos en formato SAS, para leerlos en SAS o en un paquete de
software compatible con SAS. Hay tres formatos de archivo SAS disponibles: SAS para
Windows/OS2, SAS para UNIX o SAS versión 7/8.

Ejemplo
stream = [Link]()
sasexportnode = [Link]("sasexport", "SAS Export", 200, 200)
[Link]("full_filename", "c:/output/SAS_output.sas7bdat")
[Link]("format", "SAS8")
[Link]("export_names", "NamesAndLabels")
[Link]("generate_import", True)
Tabla 246. propiedades de sasexportnode
Propiedades de sasexportnode Tipo de datos Descripción de la propiedad
format Windows Campos de etiquetas de propiedad
UNIX de variantes.
SAS7
SAS8
full_filename cadena
export_names NamesAndLabels Se utiliza para correlacionar los
NamesAsLabels nombres de campos de IBM SPSS
Modeler que se vayan a exportar a
nombres de variables de IBM SPSS
Statistics o SAS.

Capítulo 17. Propiedades de nodos Exportar 341


Tabla 246. propiedades de sasexportnode (continuación)
Propiedades de sasexportnode Tipo de datos Descripción de la propiedad
generate_import flag

Propiedades de statisticsexportnode
El nodo Exportar Statistics ofrece los resultados en formato IBM SPSS Statistics .sav o .zsav.
Los archivos .sav o .zsav se pueden leer con IBM SPSS Statistics Base y otros productos. Este
es también el formato utilizado para los archivos caché de IBM SPSS Modeler.

Las propiedades de este nodo están descritas en “Propiedades de statisticsexportnode” en la página 349.

Propiedades del nodo tm1odataexport


El nodo Exportar de IBM Cognos TM1 exporta datos en un formato que pueden leer las bases
de datos de IBM Cognos TM1.

Tabla 247. Propiedades del nodo tm1odataexport


Propiedades del nodo tm1odataexport Tipo de datos Descripción de la propiedad
admin_host cadena El URL del nombre de host de la API REST.
server_name cadena El nombre del servidor TM1 seleccionado de
admin_host.
credential_type inputCredential o Se utiliza para indicar el tipo de credencial.
storedCredential
input_credential lista Cuando credential_type es inputCredential;
especifique el dominio, el nombre de usuario y la
contraseña.
stored_credential_name cadena Cuando credential_type es storedCredential;
especifique el nombre de la credencial en el
servidor C&DS.
selected_cube campo El nombre del cubo al que está exportando datos.
Por ejemplo:
TM1_export.setPropertyValue("selected_cube",
"plan_BudgetPlan")

342 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 247. Propiedades del nodo tm1odataexport (continuación)
Propiedades del nodo tm1odataexport Tipo de datos Descripción de la propiedad
spss_field_to_tm1_element_mapping lista El elemento de tm1 al que hay que correlacionar
debe formar parte de la dimensión de columna
para la vista de cubo seleccionada. El formato es:
[[[Campo_1, Dimensión_1, False], [Elemento_1,
Dimensión_2, True], ...], [[Campo_2,
ElementoMedidaExistente, False], [Campo_3,
NuevoElementoMedida, True], ...]]

Existen 2 listas para describir la información de


correlación. La correlación de un elemento de hoja
a una dimensión se corresponde al ejemplo 2
siguiente:
Ejemplo 1: La primera lista: ([[Campo_1,
Dimensión_1, False], [Elemento_1, Dimensión_2,
True], ...]) se utiliza para la información de
mapas de la dimensión TM1.

Cada lista de 3 valores indica información de


correlación de dimensiones. El tercer valor
booleano se utiliza para indicar si selecciona un
elemento de una dimensión. Por ejemplo:
"[Campo_1, Dimensión_1, False]" significa que
Campo_1 está correlacionado con Dimensión_1;
"[Elemento_1, Dimensión_2, True]" significa que
Elemento_1 está seleccionado para Dimensión_2.

Ejemplo 2: La segunda lista: ([[Campo_2,


ElementoMedidaExistente, False], [Campo_3,
NuevoElementoMedida, True], ...]) se utiliza para
la información de correlación de elemento de
dimensión de medida TM1.

Cada lista de 3 valores indica información de


correlación de elementos de medida. El tercer valor
booleano se utiliza para indicar la necesidad de
crear un elemento nuevo. "[Campo_2,
ElementoMedidaExistente, False]" significa que
Campo_2 está correlacionado con
ElementoMedidaExistente; "[Campo_3,
NuevoElementoMedida, True]" significa que
NuevoElementoMedida debe ser una dimensión de
medida seleccionada en selected_measure y el
Campo_3 está correlacionado con este.
selected_measure cadena Especifique la dimensión de medida.

Ejemplo: setPropertyValue("selected_measure",
"Measures")

Propiedades del nodo tm1export (en desuso)


El nodo Exportar de IBM Cognos TM1 exporta datos en un formato que pueden leer las bases
de datos de IBM Cognos TM1.

Capítulo 17. Propiedades de nodos Exportar 343


Nota: Este nodo estaba en desuso en Modeler 18.0. El nombre del script del nodo de sustitución es
tm1odataexport.
Tabla 248. Propiedades del nodo tm1export.
Propiedades del nodo tm1export Tipo de datos Descripción de la propiedad
pm_host cadena Nota: sólo para la versión 16.0 y 17.0

Nombre del host. Por ejemplo:


TM1_export.setPropertyValue("pm_host",
’[Link]
tm1_connection ["campo","campo", ... Nota: sólo para la versión 16.0 y 17.0
,"campo"]
Una propiedad de la lista que contiene los detalles
de conexión para el servidor de TM1. El formato
es: [ "TM1_Server_Name", "tm1_ username",
"tm1_password"]

Por ejemplo:
TM1_export.setPropertyValue("tm1_connection",
[’Planning Sample’, "admin" "apple"])
selected_cube campo El nombre del cubo al que está exportando datos.
Por ejemplo:
TM1_export.setPropertyValue("selected_cube",
"plan_BudgetPlan")

344 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 248. Propiedades del nodo tm1export (continuación).
Propiedades del nodo tm1export Tipo de datos Descripción de la propiedad
spssfield_tm1element_mapping list El elemento de tm1 al que hay que correlacionar
debe formar parte de la dimensión de columna
para la vista de cubo seleccionada. El formato es:
[[[Campo_1, Dimensión_1, False], [Elemento_1,
Dimensión_2, True], ...], [[Campo_2,
ElementoMedidaExistente, False], [Campo_3,
NuevoElementoMedida, True], ...]]

Existen 2 listas para describir la información de


correlación. La correlación de un elemento de hoja
a una dimensión se corresponde al ejemplo 2
siguiente:
Ejemplo 1: La primera lista: ([[Campo_1,
Dimensión_1, False], [Elemento_1, Dimensión_2,
True], ...]) se utiliza para la información de
mapas de la dimensión TM1.

Cada lista de 3 valores indica información de


correlación de dimensiones. El tercer valor
booleano se utiliza para indicar si selecciona un
elemento de una dimensión. Por ejemplo:
"[Campo_1, Dimensión_1, False]" significa que
Campo_1 está correlacionado con Dimensión_1;
"[Elemento_1, Dimensión_2, True]" significa que
Elemento_1 está seleccionado para Dimensión_2.

Ejemplo 2: La segunda lista: ([[Campo_2,


ElementoMedidaExistente, False], [Campo_3,
NuevoElementoMedida, True], ...]) se utiliza para
la información de correlación de elemento de
dimensión de medida TM1.

Cada lista de 3 valores indica información de


correlación de elementos de medida. El tercer valor
booleano se utiliza para indicar la necesidad de
crear un elemento nuevo. "[Campo_2,
ElementoMedidaExistente, False]" significa que
Campo_2 está correlacionado con
ElementoMedidaExistente; "[Campo_3,
NuevoElementoMedida, True]" significa que
NuevoElementoMedida debe ser una dimensión de
medida seleccionada en selected_measure y el
Campo_3 está correlacionado con este.
selected_measure cadena Especifique la dimensión de medida.

Ejemplo: setPropertyValue("selected_measure",
"Measures")

Propiedades de xmlexportnode
El nodo de exportación XML exporta datos a un archivo en formato XML. También puede
crear un nodo de origen XML para leer los datos exportados a la ruta.

Capítulo 17. Propiedades de nodos Exportar 345


Ejemplo
stream = [Link]()
xmlexportnode = [Link]("xmlexport", "XML Export", 200, 200)
[Link]("full_filename", "c:/export/[Link]")
[Link]("map", [["/catalog/book/genre", "genre"],
["/catalog/book/title", "title"]])
Tabla 249. propiedades de xmlexportnode
propiedades de xmlexportnode Tipo de datos Descripción de la propiedad
full_filename cadena (obligatorio) Ruta completa y nombre de
archivo del archivo XML para exportar.
use_xml_schema flag Especifica si utilizar un esquema XML (archivo
XSD o DTD) para controlar la estructura de los
datos exportados.
full_schema_filename cadena Ruta completa y nombre de archivo del
archivo XSD o DTD que se quiere utilizar. Es
obligatorio si use_xml_schema está establecido
como true.
generate_import flag Genera un nodo de origen XML que leerá el
archivo de datos exportados de nuevo en la
ruta.
registros cadena Expresión de XPath que denota el límite de
registro.
map cadena Correlaciona el nombre de campo a la
estructura XML.

346 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Capítulo 18. Propiedades de nodos de IBM SPSS Statistics
Propiedades de statisticsimportnode
El nodo Archivo Statistics lee los datos desde un formato de archivo .sav o .zsav que utiliza
IBM SPSS Statistics y archivos caché guardados en IBM SPSS Modeler, que también puede
utilizar el mismo formato.

Ejemplo
stream = [Link]()
statisticsimportnode = [Link]("statisticsimport", "SAV Import", 200, 200)
[Link]("full_filename", "C:/data/[Link]")
[Link]("import_names", True)
[Link]("import_data", True)
Tabla 250. propiedades de statisticsimportnode.
propiedades de statisticsimportnode Tipo de datos Descripción de la propiedad
full_filename cadena El nombre completo del archivo, incluyendo la
ruta.
contraseña cadena La contraseña. El parámetro password se debe
establecer antes que el parámetro
file_encrypted.
file_encrypted tag Indica si el archivo está protegido con
contraseña.
import_names NamesAndLabels Método para gestionar nombres y etiquetas de
LabelsAsNames variables.
import_data DataAndLabels Método para gestionar valores y etiquetas.
LabelsAsData
use_field_format_for_storage Booleana Especifica si se utiliza la información de
formato de campo de IBM SPSS Statistics al
importar.

propiedades de statisticstransformnode
El nodo Transformación Statistics ejecuta una selección de comandos de sintaxis de IBM SPSS
Statistics en los orígenes de datos de IBM SPSS Modeler. Este nodo requiere una copia de
IBM SPSS Statistics con licencia.

Ejemplo
stream = [Link]()
statisticstransformnode = [Link]("statisticstransform", "Transform", 200, 200)
[Link]("syntax", "COMPUTE NewVar = Na + K.")
[Link]("new_name", "NewVar", "Mixed Drugs")
[Link]("check_before_saving", True)

347
Tabla 251. propiedades de statisticstransformnode
propiedades de statisticstransformnode Tipo de datos Descripción de la propiedad
syntax cadena
check_before_saving flag Valida la sintaxis introducida antes
de guardar las entradas. Muestra
un mensaje de error si la sintaxis
no es válida.
default_include flag Consulte el tema “propiedades de
filternode” en la página 144 para
obtener más información.
include flag Consulte el tema “propiedades de
filternode” en la página 144 para
obtener más información.
new_name cadena Consulte el tema “propiedades de
filternode” en la página 144 para
obtener más información.

propiedades de statisticsmodelnode
El nodo Modelo Statistics permite analizar y trabajar con sus datos ejecutando los
procedimientos de IBM SPSS Statistics que producen PMML. Este nodo requiere una copia de
IBM SPSS Statistics con licencia.

Ejemplo
stream = [Link]()
statisticsmodelnode = [Link]("statisticsmodel", "Model", 200, 200)
[Link]("syntax", "COMPUTE NewVar = Na + K.")
[Link]("new_name", "NewVar", "Mixed Drugs")

propiedades de statisticsmodelnode Tipo de datos Descripción de la propiedad


syntax cadena
default_include flag Consulte el tema “propiedades de
filternode” en la página 144 para
obtener más información.
include flag Consulte el tema “propiedades de
filternode” en la página 144 para
obtener más información.
new_name cadena Consulte el tema “propiedades de
filternode” en la página 144 para
obtener más información.

Propiedades de statisticsoutputnode
El nodo Resultados de Statistics le permite llamar a un procedimiento de IBM SPSS Statistics
para analizar los datos de IBM SPSS Modeler. Se puede acceder a una gran variedad de
procedimientos analíticos de IBM SPSS Statistics. Este nodo requiere una copia de IBM SPSS
Statistics con licencia.

348 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Ejemplo
stream = [Link]()
statisticsoutputnode = [Link]("statisticsoutput", "Output", 200, 200)
[Link]("syntax", "SORT CASES BY Age(A) Sex(A) BP(A)
Cholesterol(A)")
[Link]("use_output_name", False)
[Link]("output_mode", "File")
[Link]("full_filename", "Cases by Age, Sex and Medical History")
[Link]("file_type", "HTML")
Tabla 252. propiedades de statisticsoutputnode
propiedades de statisticsoutputnode Tipo de datos Descripción de la propiedad
mode Dialog Selecciona la opción "cuadro de
Syntax diálogo de IBM SPSS Statistics" o el
editor Sintaxis
syntax cadena
use_output_name flag
output_name cadena
output_mode Screen
File
full_filename cadena
file_type HTML
SPV
SPW

Propiedades de statisticsexportnode
El nodo Exportar Statistics ofrece los resultados en formato IBM SPSS Statistics .sav o .zsav.
Los archivos .sav o .zsav se pueden leer con IBM SPSS Statistics Base y otros productos. Este
es también el formato utilizado para los archivos caché de IBM SPSS Modeler.

Ejemplo
stream = [Link]()
statisticsexportnode = [Link]("statisticsexport", "Export", 200, 200)
[Link]("full_filename", "c:/output/SPSS_Statistics_out.sav")
[Link]("field_names", "Names")
[Link]("launch_application", True)
[Link]("generate_import", True)
Tabla 253. propiedades de statisticsexportnode.
propiedades de
statisticsexportnode Tipo de datos Descripción de la propiedad
full_filename cadena
file_type sav Guardar el archivo en formato sav o zsav. Por ejemplo:
zsav [Link]("file_type","sav")
encrypt_file flag Indica si el archivo está protegido con contraseña.
password cadena La contraseña.

Capítulo 18. Propiedades de nodos de IBM SPSS Statistics 349


Tabla 253. propiedades de statisticsexportnode (continuación).
propiedades de
statisticsexportnode Tipo de datos Descripción de la propiedad
launch_application flag
export_names NamesAndLabels Se utiliza para correlacionar los nombres de campos de IBM
NamesAsLabels SPSS Modeler que se vayan a exportar a nombres de variables
de IBM SPSS Statistics o SAS.
generate_import flag

350 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Capítulo 19. Propiedades de nodo Python
Propiedades de ocsvmnode
El nodo SVM de una clase utiliza un algoritmo de aprendizaje no supervisado. El nodo se
puede utilizar para la detección de novedad. Detectará el límite flexible de un conjunto de
muestras proporcionado, para clasificar a continuación los puntos nuevos como pertenecientes
o no a dicho conjunto. Este nodo de modelado SVM de una clase en SPSS Modeler se
implementa en Python y necesita la biblioteca scikit-learn© de Python.

Tabla 254. Propiedades de ocsvmnode


Propiedades de ocsvmnode Tipo de datos Descripción de la propiedad
role_use string Especifique predefined para utilizar roles
predefinidos o custom para utilizar
asignaciones de campo personalizado. El valor
predeterminado es predefined.
inputs field Lista de los nombres de campo para entrada.
splits field Lista de nombre de campo para división.
use_partition Booleana Especifique true o false. El valor
predeterminado es true. Si se establece en
true, sólo se utilizarán datos de entrenamiento
al generar el modelo.
mode_type string Modo. Los valores posibles son simple o
expert. Todos los parámetros de la pestaña
Experto estarán inhabilitados si se especifica
simple.
stopping_criteria string Serie de notación científica. Los valores
posibles son 1.0E-1, 1.0E-2, 1.0E-3, 1.0E-4,
1.0E-5 o 1.0E-6. El valor predeterminado es
1.0E-3.
precision float Precisión de regresión (nu). Límite en la
fracción de errores de entrenamiento y vectores
de soporte. Especifique un número mayor que
0 y menor que o igual a 1,0. El valor
predeterminado es 0,1.
kernel string Tipo de kernel a utilizar en el algoritmo. Los
valores posibles son linear, poly, rbf, sigmoid
o precomputed. El valor predeterminado es rbf.
enable_gamma Booleana Habilita el parámetro gamma. Especifique true o
false. El valor predeterminado es true.
gamma float Este parámetro sólo está habilitado para los
kernels rbf, poly y sigmoid. Si el parámetro
enable_gamma se establece en false, este
parámetro se establecerá en auto. Si se
establece en true, el valor predeterminado es
0,1.
coef0 float Término independiente en la función de
kernel. Este parámetro sólo está habilitado
para el kernel poly y el kernel sigmoid. El
valor predeterminado es 0,0.

351
Tabla 254. Propiedades de ocsvmnode (continuación)
Propiedades de ocsvmnode Tipo de datos Descripción de la propiedad
degree integer Grado de función de kernel polinómica. Este
parámetro sólo está habilitado para el kernel
poly. Especifique cualquier entero. El valor
predeterminado es 3.
shrinking Booleana Especifica si se debe utilizar la opción
heurística de reducción. Especifique true o
false. El valor predeterminado es false.
enable_cache_size Booleana Habilita el parámetro cache_size. Especifique
true o false. El valor predeterminado es
false.
cache_size float Tamaño de caché de kernel en MB. El valor
predeterminado es 200.
enable_random_seed Booleana Habilita el parámetro random_seed. Especifique
true o false. El valor predeterminado es
false.
random_seed integer Semilla de aleatorización a utilizar al
reorganizar datos para la estimación de
probabilidad. Especifique cualquier entero.
pc_type string Tipo del gráfico de coordenadas paralelas. Los
valores posibles son independent o general.
lines_amount integer Número máximo de líneas a incluir en el
gráfico. Especifique un entero entre 1 y 1000.
lines_fields_custom Booleana Habilita el parámetro lines_fields, que le
permite especificar campos personalizados
para mostrarlos en el resultado gráfico. Si se
establece en false, se mostrarán todos los
campos. Si se establece en true, sólo se
mostrarán los campos especificados con el
parámetro lines_fields. Por razones de
rendimiento, se visualizará un máximo de 20
campos.
lines_fields field Lista de nombres de campo a incluir en el
gráfico como ejes verticales.
enable_graphic Booleana Especifique true o false. Habilita el resultado
gráfico (inhabilite esta opción si desea ahorrar
tiempo y reducir el tamaño de archivo de
corriente).
enable_hpo Booleana Especifique true o false para habilitar o
inhabilitar las opciones de HPO. Si está
establecido en true, Rbfopt se aplicará para
descubrir el "mejor" modelo SVM de una clase
automáticamente, que alcanza el valor de
objetivo de destino que ha definido el usuario
con el parámetro target_objval siguiente.
target_objval float El valor de función de objetivo (índice de
errores del modelo en las muestras) que se
desea alcanzar (por ejemplo, el valor del
óptimo desconocido). Establezca este
parámetro en el valor apropiado si el óptimo
es desconocido (por ejemplo, 0.01).
max_iterations integer Número máximo de iteraciones para intentar el
modelo. El valor predeterminado es 1000.

352 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 254. Propiedades de ocsvmnode (continuación)
Propiedades de ocsvmnode Tipo de datos Descripción de la propiedad
max_evaluations integer Número máximo de evaluaciones de función
para intentar el modelo, donde el foco es la
precisión sobre la velocidad. El valor
predeterminado es 300.

Propiedades rfnode

El nodo Bosque aleatorio utiliza una implementación avanzada de un algoritmo de


agregación autodocimante con un modelo de árbol como modelo base. Este nodo de
modelado Bosque aleatorio en SPSS Modeler se implementa en Python y requiere la biblioteca
scikit-learn© Python.

Tabla 255. Propiedades rfnode


Propiedades rfnode Tipo de datos Descripción de la propiedad
role_use serie Especifique predefined para utilizar roles
predefinidos o custom para utilizar
asignaciones de campo personalizado. El valor
predeterminado es predefined.
inputs field Lista de los nombres de campo para entrada.
splits field Lista de nombre de campo para división.
n_estimators integer Número de árboles para crear. El valor
predeterminado es 10.
specify_max_depth Booleana Especifique la profundidad máxima
personalizada. Si es false, los nodos se
expanden hasta que todas las hojas están vacía
o hasta que todas las hojas contienen menos
que min_samples_split muestras. El valor
predeterminado es false.
max_depth integer La profundidad máxima del árbol. El valor
predeterminado es 10.
min_samples_leaf integer Tamaño mínimo de nodo de hoja. El valor
predeterminado es 1.
max_features serie El número de características para tener en
cuenta al buscar la mejor división.
v Si auto, max_features=sqrt(n_features)
para clasificador y para regresión.
v Si sqrt, max_features=sqrt(n_features).
v Si log2, max_features=log2 (n_features).
El valor predeterminado es auto.
bootstrap Booleana Utilice las muestras de programa de arranque
al crear árboles. El valor predeterminado es
true.
oob_score Booleana Utilice muestras aleatorias para estimar la
precisión de la generalización. El valor
predeterminado es false.
extreme Booleana Utilice árboles extremadamente aleatorizados.
El valor predeterminado es false.

Capítulo 19. Propiedades de nodo Python 353


Tabla 255. Propiedades rfnode (continuación)
Propiedades rfnode Tipo de datos Descripción de la propiedad
use_random_seed Booleana Especifique esto para duplicar los resultados.
El valor predeterminado es false.
random_seed integer La semilla de aleatorización para utilizar al
crear árboles. Especifique cualquier entero.
cache_size float Tamaño de caché de kernel en MB. El valor
predeterminado es 200.
enable_random_seed Booleana Habilita el parámetro random_seed. Especifique
true o false. El valor predeterminado es false.
enable_hpo Booleana Especifique true o false para habilitar o
inhabilitar las opciones de HPO. Si está
establecido en true, Rbfopt se aplicará para
determinar el "mejor" modelo de bosque
aleatorio automáticamente, que alcanza el
valor del objetivo de destino que ha definido
el usuario con el parámetro target_objval
siguiente.
target_objval float El valor de función de objetivo (índice de
errores del modelo en las muestras) que desea
alcanzar (por ejemplo, el valor del óptimo
conocido). Establezca este parámetro en el
valor apropiado si el óptimo es desconocido
(por ejemplo, 0.01).
max_iterations integer Número máximo de iteraciones para intentar el
modelo. El valor predeterminado es 1000.
max_evaluations integer Número máximo de evaluaciones de función
para intentar el modelo, donde el foco es la
precisión sobre la velocidad. El valor
predeterminado es 300.

Propiedades tsnenode

t-SNE (vecino estocástico con t distribuida incorporado) es una herramienta para visualizar
datos de alta dimensión. Convierte afinidades de puntos de datos a probabilidades. Este nodo
t-SNE en SPSS Modeler se implementa en Python y requiere la biblioteca scikit-learn©
Python.

Tabla 256. propiedades tsnenode


Propiedades tsnenode Tipo de datos Descripción de la propiedad
mode_type serie Especifique la modalidad simple o experto.
n_components serie Dimensión del espacio incorporado (2D o 3D).
Especifique 2 o 3. El valor predeterminado es
2.
method serie Especifique barnes_hut o exact. El valor
predeterminado es barnes_hut.
init serie Inicialización de la incorporación. Especifique
random o pca. El valor predeterminado es
random.

354 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 256. propiedades tsnenode (continuación)
Propiedades tsnenode Tipo de datos Descripción de la propiedad
target_field serie El nombre del campo objetivo. Será un mapa
de colores en el gráfico de salida. El gráfico
utilizará un color si no se especifica ningún
campo objetivo.
perplexity float La perplejidad está relacionada con el número
de los vecinos más cercanos utilizados en otros
algoritmos de aprendizaje de colector.
Normalmente, los conjuntos de datos más
grandes requieren una mayor perplejidad.
Considere seleccionar un valor entre 5 y 50. El
valor predeterminado es 30.
early_exaggeration float Controla cómo de ajustados están los clústeres
naturales del espacio original en el espacio
incorporado, y cuánto espacio habrá entre
ellos. El valor predeterminado es 12.0.
learning_rate float El valor predeterminado es 200.
n_iter integer Número máximo de iteraciones para la
optimización. Se establece en 250, como
mínimo. El valor predeterminado es 1000.
angle float El tamaño angular del nodo distante como se
ha medido a partir de un punto. Especifique
un valor dentro del rango de 0-1. El valor
predeterminado es 0,5.
enable_random_seed Booleana Establezca el valor en true para habilitar el
parámetro random_seed. El valor
predeterminado es false.
random_seed integer La semilla de aleatorización para utilizar. El
valor predeterminado es Ninguno.
n_iter_without_progress integer Máximo de iteraciones sin progreso. El valor
predeterminado es 300.
min_grad_norm serie Si la norma gradiente está por debajo de este
umbral, la optimización se detendrá. El valor
predeterminado es 1.0E-7. Los valores posibles
son:
v 1.0E-1
v 1.0E-2
v 1.0E-3
v 1.0E-4
v 1.0E-5
v 1.0E-6
v 1.0E-7
v 1.0E-8
isGridSearch Booleana Se establece en true para realizar t-SNE con
varias perplejidades distintas. El valor
predeterminado es false.
output_Rename Booleana Especifique true si desea proporcionar un
nombre personalizado, o false para
denominar la salida automáticamente. El valor
predeterminado es false.

Capítulo 19. Propiedades de nodo Python 355


Tabla 256. propiedades tsnenode (continuación)
Propiedades tsnenode Tipo de datos Descripción de la propiedad
output_to serie Especifique Screen o Output. El valor
predeterminado es Screen.
full_filename serie Especifique el nombre de archivo de salida.
output_file_type serie Formato de archivo de salida. Especifique HTML
u Objeto de salida. El valor predeterminado
es HTML.

Propiedades de smotenode
El nodo SMOTE (Synthetic Minority Over-sampling Technique) proporciona un algoritmo de
sobremuestreo para tratar con conjuntos de datos desequilibrados. Proporciona un método
avanzado para equilibrar los datos. El nodo de proceso SMOTE en SPSS Modeler se
implementa en Python y necesita la biblioteca de Python imbalanced-learn©.

Tabla 257. Propiedades de smotenode


Propiedades de smotenode Tipo de datos Descripción de la propiedad
target_field field Campo objetivo.
sample_ratio string Habilita un valor de cociente personalizado.
Las dos opciones son Automático
(sample_ratio_auto) o Establecer cociente
(sample_ratio_manual).
sample_ratio_value float El cociente es el número de muestras en la
clase de minoría sobre el número de muestras
en la clase de mayoría. Debe ser mayor que 0
y menor que o igual a 1. El valor
predeterminado es auto.
enable_random_seed Booleana Si está establecido en true, se habilitará la
propiedad random_seed.
random_seed integer Semilla utilizada por el generador de números
aleatorios.
k_neighbours integer Número de vecinos más cercanos a utilizar
para construir muestras sintéticas. El valor
predeterminado es 5.
m_neighbours integer Número de vecinos más cercanos a utilizar
para determinar si una muestra de minoría
está en peligro. Esta opción sólo se habilita con
los tipos de algoritmo de SMOTE borderline1
y borderline2. El valor predeterminado es 10.
algorithm_kind string Tipo de algoritmo de SMOTE: regular,
borderline1 o borderline2.
usepartition Booleana Si se establece en true, sólo se utilizarán datos
de entrenamiento para la generación de
modelos. El valor predeterminado es true.

356 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Propiedades xgboostlinearnode
XGBoost Linear© es una implementación avanzada de un algoritmo de aumento de gradiente
con un modelo lineal como modelo base. Los algoritmos de aumento conocen de forma
iterativa los clasificadores débiles y, a continuación, los añaden a un clasificador fuerte final.
El nodo XGBoost Linear en SPSS Modeler se implementa en Python.

Tabla 258. Propiedades de xgboostlinearnode


Propiedades de xgboostlinearnode Tipo de datos Descripción de la propiedad
TargetField field
InputFields field
alpha Double Parámetro de aumento lineal alfa. Especifique
cualquier número 0 o superior. El valor
predeterminado es 0.
lambda Double Parámetro de aumento lineal lambda.
Especifique cualquier número 0 o superior. El
valor predeterminado es 1.
lambdaBias Double Parámetro de aumento lineal lambda bias.
Especifique cualquier número. El valor
predeterminado es 0.
numBoostRound integer Valor de redondeo de aumento de número
para la generación de modelos. Especifique un
valor entre 1 y 1000. El valor predeterminado
es 10.
objectiveType string Tipo de objetivo para la tarea de aprendizaje.
Los valores posibles son reg:linear,⌂
reg:logistic,⌂ reg:gamma,⌂ reg:tweedie,
count:poisson, ⌂rank:pairwise,
binary:logistic o multi. Tenga en cuenta que
para objetivos de marca, sólo se puede utilizar
binary:logistic o multi. Si se utiliza multi, el
resultado de puntuación mostrará los tipos de
objetivo de XGBoost multi:softmax y
multi:softprob.
random_seed integer Semilla de aleatorización. Cualquier número
entre 0 y 9999999. El valor predeterminado es
0.
useHPO Booleana Especifique true o false para habilitar o
inhabilitar las opciones de HPO. Si está
establecido en true, Rbfopt se aplicará para
descubrir el "mejor" modelo SVM de una clase
automáticamente, que alcanza el valor de
objetivo de destino que ha definido el usuario
con el parámetro target_objval.

Capítulo 19. Propiedades de nodo Python 357


Propiedades de xgboosttreenode
XGBoost Tree© es una implementación avanzada de un algoritmo de aumento de gradiente
con un modelo de árbol como modelo base. Los algoritmos de aumento conocen de forma
iterativa los clasificadores débiles y, a continuación, los añaden a un clasificador fuerte final.
XGBoost Tree es muy flexible y proporciona muchos parámetros que pueden ser abrumadores
para la mayoría de usuarios, de modo que el nodo XGBoost Tree en SPSS Modeler expone las
características principales y los parámetros utilizados comúnmente. El nodo se implementa en
Python.

Tabla 259. Propiedades de xgboosttreenode


Propiedades de xgboosttreenode Tipo de datos Descripción de la propiedad
TargetField field Campos objetivo.
InputFields field Campos de entrada.
treeMethod string Método de árbol para la generación de
modelos. Los valores posibles son auto, exact
o approx. El valor predeterminado es auto.
numBoostRound integer Valor de redondeo de aumento de número
para la generación de modelos. Especifique un
valor entre 1 y 1000. El valor predeterminado
es 10.
maxDepth integer Profundidad máxima para el crecimiento del
árbol. Especifique un valor de 1 o superior. El
valor predeterminado es 6.
minChildWeight Double Ponderación hijo mínima para el crecimiento
del árbol. Especifique un valor de 0 o superior.
El valor predeterminado es 1.
maxDeltaStep Double Paso delta máximo para el crecimiento del
árbol. Especifique un valor de 0 o superior. El
valor predeterminado es 0.
objectiveType string Tipo de objetivo para la tarea de aprendizaje.
Los valores posibles son reg:linear,⌂
reg:logistic,⌂ reg:gamma,⌂ reg:tweedie,
count:poisson, ⌂rank:pairwise,
binary:logistic o multi. Tenga en cuenta que
para objetivos de marca, sólo se puede utilizar
binary:logistic o multi. Si se utiliza multi, el
resultado de puntuación mostrará los tipos de
objetivo de XGBoost multi:softmax y
multi:softprob.
random_seed integer Semilla de aleatorización. Cualquier número
entre 0 y 9999999. El valor predeterminado es
0.
sampleSize Double La submuestra para el sobreajuste de control.
Especifique un valor entre 0,1 y 1,0. El valor
predeterminado es 0,1.
eta Double Eta para el sobreajuste de control. Especifique
un valor entre 0 y 1. El valor predeterminado
es 0,3.
gamma Double Gamma para el sobreajuste de control.
Especifique cualquier número 0 o superior. El
valor predeterminado es 6.

358 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 259. Propiedades de xgboosttreenode (continuación)
Propiedades de xgboosttreenode Tipo de datos Descripción de la propiedad
colsSampleRatio Double Muestra de columna por árbol para el
sobreajuste de control. Especifique un valor
entre 0,01 y 1. El valor predeterminado es 1.
colsSampleLevel Double Muestra de columna por nivel para el
sobreajuste de control. Especifique un valor
entre 0,01 y 1. El valor predeterminado es 1.
lambda Double Lambda para el sobreajuste de control.
Especifique cualquier número 0 o superior. El
valor predeterminado es 1.
alpha Double Alfa para el sobreajuste de control. Especifique
cualquier número 0 o superior. El valor
predeterminado es 0.
scalePosWeight Double Ponderación de posición de escala para
manejar conjuntos de datos desequilibrados. El
valor predeterminado es 1.

Capítulo 19. Propiedades de nodo Python 359


360 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python
Capítulo 20. Propiedades de nodo Spark
Propiedades isotonicasnode

La regresión isotónica pertenece a la familia de algoritmos de regresión. El nodo Isotónica-AS


en SPSS Modeler se implementa en Spark. Si desea más detalles sobre algoritmos de regresión
isotónica, consulte [Link]

Tabla 260. propiedades isotonicasnode


Propiedades isotonicasnode Tipo de datos Descripción de la propiedad
label cadena Esta propiedad es una variable dependiente
para la cual se calcula la regresión isotónica.
features cadena Esa propiedad es una variable independiente.
weightCol cadena La ponderación representa una serie de
medidas. El valor predeterminado es 1.
isotonic Booleana Esta propiedad indica si el tipo es isotonic o
antitonic.
featureIndex entero Esta propiedad es para el índice de la
característica, si featuresCol es una columna
de vector. El valor predeterminado es 0.

Propiedades xgboostasnode

XGBoost es una implementación avanzada de un algoritmo de aumento de gradiente. Los


algoritmos de aumento conocen de forma iterativa los clasificadores débiles y, a continuación,
los añaden a un clasificador fuerte final. XGBoost es muy flexible y proporciona tantos
parámetros que puede resultar abrumador para la mayoría de los usuarios, de forma que el
nodo XGBoost-AS en SPSS Modeler expone las características principales y los parámetros
utilizados más habitualmente. El nodo XGBoost-AS se implementa en Spark.

Tabla 261. propiedades xgboostasnode


Propiedades xgboostasnode Tipo de datos Descripción de la propiedad
target_field campo Lista de los nombres de campo para el
objetivo.
input_fields campo Lista de los nombres de campo para entradas.
nWorkers entero El número de trabajadores utilizados para
formar el modelo XGBoost. El valor
predeterminado es 1.
numThreadPerTask entero El número de hebras utilizadas por trabajador.
El valor predeterminado es 1.
useExternalMemory Booleana Indica si se va a utilizar memoria externa
como memoria caché. El valor predeterminado
es false.

361
Tabla 261. propiedades xgboostasnode (continuación)
Propiedades xgboostasnode Tipo de datos Descripción de la propiedad
boosterType cadena El tipo de amplificador para utilizar. Las
opciones disponibles son gbtree, gblinear o
dart. El valor predeterminado es gbtree.
numBoostRound entero El número de rondas para amplificar.
Especifique un valor de 0 o superior. El valor
predeterminado es 10.
scalePosWeight Double Controle el equilibrio entre ponderaciones
positivas y negativas. El valor predeterminado
es 1.
randomseed entero Semilla utilizada por el generador de números
aleatorios. El valor predeterminado es 0.
objectiveType cadena El objetivo de aprendizaje. Los valores posibles
son reg:linear,⌂ reg:logistic,⌂ reg:gamma,⌂
reg:tweedie, count:poisson, ⌂rank:pairwise,
binary:logistic o multi. Tenga en cuenta que
para objetivos de marca, sólo se puede utilizar
binary:logistic o multi. Si se utiliza multi, el
resultado de puntuación mostrará los tipos de
objetivo de XGBoost multi:softmax y
multi:softprob. El valor predeterminado es
reg:linear.
evalMetric cadena Las métricas de evaluación para datos de
validación. Se asignará una métrica
predeterminada de acuerdo con el objetivo.
Los valores posibles son rmse, mae, logloss,
error, merror, mlogloss, auc, ndcg, map o
gamma-deviance. El valor predeterminado es
rmse.
lambda Double Término de regularización L2 sobre
ponderaciones. El aumento de este valor hará
que el modelo sea más conservador.
Especifique cualquier número 0 o superior. El
valor predeterminado es 1.
alpha Double Término de regularización L1 sobre
ponderaciones. El aumento de este valor hará
que el modelo sea más conservador.
Especifique cualquier número 0 o superior. El
valor predeterminado es 0.
lambdaBias Double Término de regularización L2 sobre el sesgo. Si
se utiliza el tipo de amplificador gblinear, está
disponible este parámetro d e amplificador
lineal de sesgo lambda. Especifique cualquier
número 0 o superior. El valor predeterminado
es 0.
treeMethod cadena Si se utiliza el tipo de amplificador gbtree o
dart, está disponible este parámetro de método
de árbol para el crecimiento del árbol (y los
otros parámetros de árbol que siguen).
Especifica el algoritmo de construcción de
árbol XGBoost para utilizar. Las opciones
disponibles son auto, exact o approx. El valor
predeterminado es auto.

362 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 261. propiedades xgboostasnode (continuación)
Propiedades xgboostasnode Tipo de datos Descripción de la propiedad
maxDepth entero La profundidad máxima para árboles.
Especifique un valor de 2 o superior. El valor
predeterminado es 6.
minChildWeight Double La suma mínima de la ponderación de
instancias (hessiana) necesaria en un hijo.
Especifique un valor de 0 o superior. El valor
predeterminado es 1.
maxDeltaStep Double El paso delta máximo para permitir para la
estimación ponderada de cada árbol.
Especifique un valor de 0 o superior. El valor
predeterminado es 0.
sampleSize Double La muestra secundaria es la proporción de la
instancia de formación. Especifique un valor
entre 0,1 y 1,0. El valor predeterminado es
1.0.
eta Double La reducción de tamaño de paso utilizada
durante el paso para evitar el sobreajuste.
Especifique un valor entre 0 y 1. El valor
predeterminado es 0.3.
gamma Double La reducción de pérdida mínima necesaria
para realizar una partición adicional en un
nodo de hoja del árbol. Especifique cualquier
número 0 o superior. El valor predeterminado
es 6.
colsSampleRatio Double La proporción de muestra secundaria de
columnas al construir cada árbol. Especifique
un valor entre 0,01 y 1. El valor
predeterminado es 1.
colsSampleLevel Double La proporción de muestra secundaria de
columnas para cada división, en cada nivel.
Especifique un valor entre 0,01 y 1. El valor
predeterminado es 1.
normalizeType cadena Si se utiliza el tipo de amplificador dart, están
disponibles este parámetro dart y los tres
parámetros dart siguientes. Este parámetro
define el algoritmo de normalización.
Especifique tree o forest. El valor
predeterminado es tree.
sampleType cadena El tipo de algoritmo de muestreo. Especifique
uniform o weighted. El valor predeterminado
es uniform.
rateDrop Doble El parámetro de amplificador dart de índice de
descarte. Especifique un valor entre 0.0 y 1.0.
El valor predeterminado es 0.0.
skipDrop Doble El parámetro de amplificador dart para la
probabilidad de descarte de salto. Especifique
un valor entre 0.0 y 1.0. El valor
predeterminado es 0.0.

Capítulo 20. Propiedades de nodo Spark 363


364 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python
Capítulo 21. Propiedades de supernodo
En las siguientes tablas se describen las propiedades específicas de los Supernodos. Tenga en cuenta que
las propiedades de nodos comunes se aplican también a los Supernodos.
Tabla 262. Propiedades del supernodo de terminal
Nombre de la propiedad Tipo de propiedad / Lista de valores Descripción de la propiedad
execute_method Script
Normal
script cadena

Parámetros de Supernodos

Puede utilizar scripts para crear o establecer parámetros de Supernodo utilizando el formato general:
[Link]("minvalue", 30)

Puede recuperar el valor del parámetro con:


value [Link]("minvalue")

Búsqueda de los supernodos existentes

Puede encontrar supernodos en rutas utilizando la función findByType() :


source_supernode = [Link]().findByType("source_super", None)
process_supernode = [Link]().findByType("process_super", None)
terminal_supernode = [Link]().findByType("terminal_super", None)

Configuración de las propiedades de nodos encapsulados

Puede establecer las propiedades de determinados nodos encapsulados dentro un supernodo accediendo
al diagrama hijo dentro del Supernodo. Por ejemplo, imaginemos que tiene un Supernodo de origen que
incluye un nodo de archivo de variables encapsulado para leer los datos. Puede pasar el nombre del
archivo para leer (especificado mediante la propiedad full_filename ) accediendo al diagrama hijo y
buscando el nodo relevante como se indica a continuación:
childDiagram = source_supernode.getChildDiagram()
varfilenode = [Link]("variablefile", None)
[Link]("full_filename", "c:/[Link]")

Creación de supernodos

Si desea crear un supernodo y su contenido de cero, puede hacerlo de forma similar a la creación del
supernodo, accediendo al diagrama hijo y creando los nodos que desee. También debe asegurarse de que
los nodos del diagrama del supernodo estén también vinculados a los nodos de los conectores de entrada
y/o de salida. Por ejemplo, si desea crear un proceso Supernodo:
process_supernode = [Link]().createAt("process_super", "My SuperNode", 200, 200)
childDiagram = process_supernode.getChildDiagram()
filternode = [Link]("filter", "My Filter", 100, 100)
[Link](filternode)
[Link](filternode)

365
366 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python
Apéndice A. Referencia de nombres de nodo
Esta sección ofrece una referencia de todos los nombres de script de los nodos de IBM SPSS Modeler.

Nombres de nugget de modelo


Se puede hacer referencia a los nugget de modelo (también denominados modelos generados) según el
tipo, como con los objetos de nodo y de resultado. Las siguientes tablas muestran los nombres de
referencia de los objetos del modelo.

Tenga en cuenta que estos nombres se utilizan específicamente para hacer referencia a los nugget de
modelo en la paleta Modelos (en la esquina superior derecha de la ventana de IBM SPSS Modeler). Para
hacer referencia a los nodos de modelo que se han añadido a una ruta para la puntuación, se utiliza un
conjunto diferente de nombres con el prefijo apply.... Consulte el tema Propiedades de nodos de nugget
de modelo para obtener más información.

Nota: En circunstancias normales, se recomienda hacer referencia a los modelos por nombre y tipo para
evitar confusiones.
Tabla 263. Nombres de nugget de modelo (paleta de modelado).
Nombre del modelo Modelo
anomalydetection Anomalía
a priori A priori
autoclassifier Clasificado automático
autocluster Agrupación en clústeres automática
autonumeric Autonumérico
bayesnet Red bayesiana
c50 C5.0
carma Carma
árbol cr Árbol C&R
chaid CHAID
coxreg Regresión de Cox
decisionlist Lista de decisiones
discriminant Discriminante
factor PCA/Factorial
featureselection Sel. características
genlin Regresión lineal generalizada
glmm GLMM
kmeans K-medias
knn k: vecino más cercano
kohonen Kohonen
lineal Lineal
logreg Regresión logística
neuralnetwork Red neuronal

367
Tabla 263. Nombres de nugget de modelo (paleta de modelado) (continuación).
Nombre del modelo Modelo
quest QUEST
regresión Regresión lineal
secuencia Secuencia
slrm Modelo de respuesta de autoaprendizaje
statisticsmodel Modelo de IBM SPSS Statistics
svm Máquina de vectores de soporte
timeseries Serie temporal
twostep Dos fases

Tabla 264. Nombres de nugget de modelo (paleta de modelado de bases de datos).


Nombre del modelo Modelo
db2imcluster Clúster de IBM ISW
db2imlog Regresión logística de IBM ISW
db2imnb Bayesiano ingenuo de IBM ISW
db2imreg Regresión de IBM ISW
db2imtree Árbol de decisión de IBM ISW
msassoc Reglas de asociación de MS
msbayes Bayesiano ingenuo de MS
mscluster Clúster de MS
mslogistic Regresión logística de MS
msneuralnetwork Red neuronal de MS
msregression Regresión lineal de MS
mssequencecluster Clúster de secuencias de MS
mstimeseries Series temporales de MS
mstree Árbol de decisión de MS
netezzabayes Red bayesiana de Netezza
netezzadectree Árbol de decisión de Netezza
netezzadivcluster Clúster divisivo de Netezza
netezzaglm Lineal generalizado de Netezza
netezzakmeans K-medias de Netezza
netezzaknn KNN de Netezza
netezzalineregression Regresión lineal de Netezza
netezzanaivebayes Bayesiano ingenuo de Netezza
netezzapca PCA de Netezza
netezzaregtree Árbol de regresión de Netezza
netezzatimeseries Series temporales de Netezza
oraabn Bayesiano adaptativo de Oracle
oraai Oracle AI
oradecisiontree Árbol de decisión de Oracle
oraglm GLM de Oracle

368 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 264. Nombres de nugget de modelo (paleta de modelado de bases de datos) (continuación).
Nombre del modelo Modelo
orakmeans K-medias de Oracle
oranb Bayesiano ingenuo de Oracle
oranmf NMF de Oracle
oraocluster O-clúster de Oracle
orasvm SVM de Oracle

Evitar nombres duplicados del modelo


Al utilizar los scripts para manipular los modelos generados, debe tener en cuenta que el hecho de
permitir nombres de modelo duplicados puede originar referencias ambiguas. Para evitarlo, resulta útil
utilizar nombres exclusivos para los modelos generados en los scripts.

Para configurar las opciones de los nombres de modelo duplicados:


1. Seleccione en los menús:
Herramientas > Opciones de usuario
2. Pulse en la pestaña Notificaciones.
3. Seleccione Sustituir modelo anterior para restringir los nombres duplicados de los modelos
generados.

El comportamiento de la ejecución de scripts puede variar entre SPSS Modeler y IBM SPSS Collaboration
and Deployment Services cuando haya referencias de modelo ambiguas. El cliente de SPSS Modeler
incluye la opción "Reemplazar modelo anterior", que reemplaza automáticamente los modelos que tengan
el mismo nombre (por ejemplo, cuando un script se itera a través de un bucle para producir un modelo
diferente cada vez). Sin embargo, esta opción no está disponible cuando el mismo script se ejecuta en
IBM SPSS Collaboration and Deployment Services. Puede evitar esta situación cambiando el nombre del
modelo generado en cada iteración para evitar referencias ambiguas a los modelos o borrando el modelo
actual (por ejemplo, añadiendo una instrucción clear generated palette) antes del final del bucle.

Nombres de tipo de resultados


La siguiente tabla indica los tipos de objetos de resultados y los nodos que los crean. Para obtener una
lista completa de los formatos de exportación disponibles para cada tipo de objeto de salida, consulte la
descripción de las propiedades del nodo que crea el tipo de salida, disponible en Propiedades comunes
de nodos Gráfico y en Propiedades de los nodos de resultados.
Tabla 265. Tipos de objeto de salida y los nodos que los crean.
Tipo de objeto de resultado Nodo
analysisoutput Análisis
collectionoutput Colección
dataauditoutput Auditoría de datos
distributionoutput Distribución
evaluationoutput Evaluación
histogramoutput Histograma
matrixoutput Matriz
meansoutput Medias
multiplotoutput G. múltiple

Apéndice A. Referencia de nombres de nodo 369


Tabla 265. Tipos de objeto de salida y los nodos que los crean (continuación).
Tipo de objeto de resultado Nodo
plotoutput Gráfico
qualityoutput Calidad
reportdocumentoutput Este tipo de objeto no es de un nodo, es un resultado creado por
un informe de proyecto
reportoutput Informe
statisticsprocedureoutput Resultado de Estadísticas
statisticsoutput Estadísticos
tableoutput Tabla
timeplotoutput Gráfico de tiempo
weboutput Malla

370 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Apéndice B. Migración desde scripts de herencia a scripts
Python
Visión general de la migración de scripts de herencia
Esta sección proporciona un resumen de las diferencias entre el script de Python y el script de herencia
en IBM SPSS Modeler y proporciona información acerca de cómo migrar los scripts de herencia a scripts
Python. En esta sección encontrar una lista de los comandos de herencia de SPSS Modeler estándar y los
comandos Python equivalentes.

Diferencias generales
Una gran parte del diseño de los scripts de herencia se debe a los scripts de comandos del sistema
operativo. Los scripts de herencia están orientados a líneas y, aunque existen algunas estructuras de
bloque, por ejemplo if...then...else...endif y for...endfor, generalmente la indentación no es
importante.

En los scripts Python, la indentación es importante y las líneas que pertenecen al mismo bloque lógico se
deben indentar en el mismo nivel.

Nota: Debe prestar atención cuando copie y pegue el código Python. En el editor, una línea que se ha
indentado utilizando pestañas puede parecer la misma que una línea que se ha indentado utilizando
espacios. Sin embargo, el script Python generará un error porque no se considera que la indentación de
las líneas sea la misma.

El contexto de los scripts


El contexto de script define el entorno en el que se ejecuta un script como, por ejemplo, la ruta o
Supernodo que ejecuta el script. En los scripts heredados el contexto es implícito, lo que significa que, por
ejemplo, se asume que toda referencia a un nodo de una ruta está dentro de la ruta que ejecuta el script.

En los scripts Python el contexto de script se proporciona de forma explícita mediante el módulo
[Link]. Por ejemplo, un script Python de ruta puede acceder a la ruta que ejecuta el script
mediante el código siguiente:
s = [Link]()

A continuación podrán invocarse funciones relacionadas con la ruta a través del objeto devuelto.

Comparativa de comandos y funciones


Los scripts heredados están orientados a comando. Esto significa que cada línea del script suele comenzar
con el comando a ejecutar seguido de los parámetros, por ejemplo:
connect ’Type’:typenode to :filternode
rename :derivenode as "Compute Total"

Python utiliza funciones que suelen invocarse a través de un objeto (módulo, clase u objeto) que define la
función, por ejemplo:
stream = [Link]()
typenode = [Link]("type", "Type)
filternode = [Link]("filter", None)
[Link](nodotipo, nodofiltro)
[Link]("Compute Total")

371
Literales y comentarios
Algunos de los literales y comandos de comentarios que normalmente se utilizan en IBM SPSS Modeler
tienen sus equivalentes en los scripts Python. Esto puede ayudarle a convertir los scripts de SPSS
Modeler de herencia existentes en scripts Python para utilizarlos en IBM SPSS Modeler 17.
Tabla 266. Correlación de scripts de herencia con scripts Python para literales y comentarios.
Scripts de herencia scripts Python
Entero, por ejemplo 4 El mismo
Flotante, por ejemplo, 0,003 El mismo
Cadenas entre comillas simples, por ejemplo, 'Hola' El mismo
Nota: Los literales de cadena que contengan caracteres
que no sean ASCII deberán tener el prefijo u para
garantizar que se representen en Unicode.
Cadenas entre comillas dobles, por ejemplo, “Hola de El mismo
nuevo" Nota: Los literales de cadena que contengan caracteres
que no sean ASCII deberán tener el prefijo u para
garantizar que se representen en Unicode.
Cadenas largas, por ejemplo, El mismo
“””Estas es una cadena
que abarca varias
líneas”””
Listas, por ejemplo, [1 2 3] [1, 2, 3]
Referencia de variable, por ejemplo, set x = 3 x = 3
Continuación de línea (\), por ejemplo, x = [ 1, 2,\
set x = [1 2 \ 3, 4]
3 4]
Comentario de bloque, por ejemplo, """ Este es un comentario largo
/* Éste es un comentario largo a través de una línea. """
a través de una línea. */
Comentario de línea, por ejemplo, set x = 3 # make x = 3 # make x 3
x 3
undef Ninguno
true True
false False

Operadores
Algunos de los comandos de operadores que normalmente se utilizan en IBM SPSS Modeler tienen sus
comandos equivalentes en los scripts Python. Esto puede ayudarle a convertir los scripts de SPSS
Modeler de herencia existentes en scripts Python para utilizarlos en IBM SPSS Modeler 17.
Tabla 267. Correlación de scripts de herencia con scripts Python para operadores.
Scripts de herencia scripts Python
NUM1 + NUM2 NUM1 + NUM2
LIST + ITEM [Link](ITEM)
LIST1 + LIST2 [Link](LIST2)
NUM1 – NUM2 NUM1 – NUM2
LIST - ITEM [Link](ITEM)
NUM1 * NUM2 NUM1 * NUM2

372 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Tabla 267. Correlación de scripts de herencia con scripts Python para operadores (continuación).
Scripts de herencia scripts Python
NUM1 / NUM2 NUM1 / NUM2
= ==
==
/= !=
/==
X ** Y X ** Y
X < Y X < Y
X <= Y X <= Y
X > Y X > Y
X >= Y X >= Y
X div Y X // Y
X rem Y X % Y
X mod Y X % Y
and and
or or
not(EXPR) not EXPR

Comandos condicionales y de bucle


Algunos comandos condicionales y de bucle utilizados habitualmente en IBM SPSS Modeler tienen sus
comandos equivalentes en los scripts Python. Esto puede ayudarle a convertir los scripts de SPSS
Modeler de herencia existentes en scripts Python para utilizarlos en IBM SPSS Modeler 17.
Tabla 268. Correspondencia de scripts de herencia con scripts Python en lo referente a comandos condicionales y
de bucle.
Scripts de herencia scripts Python
for VAR from INT1 to INT2 for VAR in range(INT1, INT2):
... ...
endfor
o
VAR = INT1
while VAR <= INT2:
...
VAR += 1
for VAR in LIST for VAR in LIST:
... ...
endfor
for VAR in_fields_to NODE for VAR in [Link]():
... ...
endfor
for VAR in_fields_at NODE for VAR in [Link]():
... ...
endfor
if...then if ...:
... ...
elseif...then elif ...:
... ...
else else:
... ...
endif
with TYPE OBJECT Sin equivalente
...
endwith

Apéndice B. Migración desde scripts de herencia a scripts Python 373


Tabla 268. Correspondencia de scripts de herencia con scripts Python en lo referente a comandos condicionales y
de bucle (continuación).
Scripts de herencia scripts Python
var VAR1 La declaración de variables no es obligatoria

Variables
En los scripts heredados, las variables se declaran antes de ser referenciadas, por ejemplo:
var minodo
set minodo = create typenode at 96 96

En los scripts Python, las variables se crean la primera vez que se referencian, por ejemplo:
minodo = [Link]("type", "Type", 96, 96)

En los scripts heredados, las referencias a variables deben eliminarse explícitamente mediante el operador
^, por ejemplo:
var minodo
set minodo = create typenode at 96 96
set ^[Link]."Age" = Input

Al igual que en la mayoría de lenguajes de script, esto no es necesario en los scripts Python, por ejemplo:
minodo = [Link]("type", "Type", 96, 96)
[Link]("direction","Age","Input")

Tipos modelo, resultado y nodo


En los scripts heredados, a los distintos tipos de objeto (nodo, resultado y modelo) se les suele añadir el
tipo al tipo de objeto. Por ejemplo, el nodo Derivar es de tipo derivenode:
set feature_name_node = create derivenode at 96 96

El API de IBM SPSS Modeler en Python no incluye el sufijo node, de modo que el nodo Derivar tiene el
tipo derive, por ejemplo:
feature_name_node = [Link]("derive", "Feature", 96, 96)

La única diferencia en los tipos de nombre entre los scripts Python y los heredados es la ausencia del
sufijo de tipo.

Nombres de propiedades
Los nombres de las propiedades son los mismos en scripts heredados y en scripts Python. Por ejemplo,
en el nodo Archivo variable, la propiedad que define la ubicación del archivo es full_filename en ambos
entornos de creación de scripts.

Referencias de nodos
Muchos scripts de herencia utilizan una búsqueda implícita para buscar y acceder al nodo que se ha de
modificar. Por ejemplo, los comandos siguientes buscan en la ruta actual un nodo Type con la etiqueta
"Type", a continuación, establecen la dirección (o el rol de modelado) del campo "Age" como entrada y el
campo "Drug" como destino, esto es, el valor predicho:
set ’Type’:[Link]."Age" = Input
set ’Type’:[Link]."Drug" = Target

En los scripts Python, los objetos de nodo se han de localizar de forma explícita antes de llamar a la
función para establecer el valor de propiedad, por ejemplo:

374 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


typenode = [Link]("type", "Type")
[Link]("direction", "Age", "Input")
[Link]("direction", "Drug", "Target")

Nota: En este caso, "Target" debe estar encerrado entre comillas en la cadena.

Los scripts Python pueden utilizar de forma alternativa la enumeración ModelingRole del paquete
[Link].

Aunque la versión de los scripts Python puede ser más verbosa, el rendimiento de tiempo de ejecución es
mejor ya que la búsqueda del nodo generalmente solo se realiza una vez. En el ejemplo de scripts de
herencia, la búsqueda del nodo se realiza para cada comando.

También está soportado buscar nodos por ID (el ID de nodo se puede ver en la pestaña Anotaciones del
diálogo del nodo). Por ejemplo, en los scripts de herencia:
# id65EMPB9VL87 es el ID de un nodo Type
set @[Link]."Age" = Input

El script siguiente muestra el mismo ejemplo en scripts Python:


typenode = [Link]("id65EMPB9VL87")
[Link]("direction", "Age", "Input")

Obtener y establecer propiedades


Los scripts de herencia utilizan el comando set para asignar un valor. El término que sigue al comando
set puede ser una definición de propiedad. El script siguiente muestra dos formatos de script posibles
para establecer una propiedad:
set <referencia de nodo>.<propiedad> = <valor>
set <referencia de nodo>.<propiedad-con claves>.<clave> = <valor>

En los scripts Python, se obtiene el mismo resultado utilizando las funciones setPropertyValue() y
setKeyedPropertyValue(), por ejemplo:
[Link](propiedad, valor)
[Link](propiedad-con claves, clave, valor)

En los scripts de herencia, se puede acceder a los valores de las propiedades utilizando el comando get,
por ejemplo:
var n v
set n = get node :filternode
set v = ^[Link]

En los scripts Python, se obtiene el mismo resultado utilizando la función getPropertyValue(), por
ejemplo:
n = [Link]("filter", None)
v = [Link]("name")

Edición de rutas
En los scripts de herencia, se utiliza el comando create para crear un nodo nuevo, por ejemplo:
var agg select
set agg = create aggregatenode at 96 96
set select = create selectnode at 164 96

En los scripts Python, las rutas tienen varios métodos para crear nodos, por ejemplo:
stream = [Link]()
agg = [Link]("aggregate", "Aggregate", 96, 96)
select = [Link]("select", "Select", 164, 96)

Apéndice B. Migración desde scripts de herencia a scripts Python 375


En los scripts de herencia, se utiliza el comando connect para crear enlaces entre nodos, por ejemplo:
connect ^agg to ^select

En los scripts Python, se utiliza el método link para crear enlaces entre nodos, por ejemplo:
[Link](agg, select)

En los scripts de herencia, se utiliza el comando disconnect para eliminar enlaces entre nodos, por
ejemplo:
disconnect ^agg from ^select

En los scripts Python, se utiliza el método unlink para eliminar enlaces entre nodos, por ejemplo:
[Link](agg, select)

En los scripts de herencia, se utiliza el comando position para posicionar los nodos en el lienzo de rutas
o entre nodos, por ejemplo:
position ^agg at 256 256
position ^agg between ^myselect and ^mydistinct

En los scripts Python, se obtiene el mismo resultado utilizando dos métodos separados: setXYPosition y
setPositionBetween. Por ejemplo:
[Link](256, 256)
[Link](myselect, mydistinct)

Operaciones de nodo
Algunos de los comandos de operaciones de nodo que normalmente se utilizan en IBM SPSS Modeler
tienen sus comandos equivalentes en los scripts Python. Esto puede ayudarle a convertir los scripts de
SPSS Modeler de herencia existentes en scripts Python para utilizarlos en IBM SPSS Modeler 17.
Tabla 269. Correlación de scripts de herencia con scripts Python para operaciones de nodo.
Scripts de herencia scripts Python
create especificaciónodo at x y [Link](tipo, nombre)
[Link](tipo, nombre, x, y)
[Link](tipo, nombre, preNode, postNode)
[Link](modelo, nombre)
connect desdeNodo to aNodo [Link](desdeNodo, aNodo)
delete nodo [Link](nodo)
disable nodo [Link](nodo, False)
enable nodo [Link](nodo, True)
disconnect desdeNodo from aNodo [Link](desdeNodo, aNodo)
[Link](nodo)
duplicate nodo [Link]()
execute nodo [Link](nodos, resultados)
[Link](resultados)
flush nodo [Link]()
position nodo at x y [Link](x, y)
position nodo between nodo1 and nodo2 [Link](nodo1, nodo2)
rename nodo as nombre [Link](nombre)

376 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Bucle
En los scripts de herencia, hay dos opciones de bucle principales a las que se da soporte:
v Bucles de Valor contado, en los que una variable de índice se mueve entre dos límites de entero.
v Bucles de secuencia que avanzan en bucle por una secuencia de valores, enlazando el valor actual con la
variable de bucle.

El script siguiente es un ejemplo de un bucle de valor contado en un script de herencia:


for i from 1 to 10
println ^i
endfor

El script siguiente es un ejemplo de un bucle de secuencia en un script de herencia:


var items
set items = [a b c d]

for i in items
println ^i
endfor

También existen otros tipos de bucles que se pueden utilizar:


v Iteración por los modelos de la paleta de modelos o por los resultados de la paleta de resultados.
v Iteración por los campos de entrada o salida de un nodo.

Los scripts Python también dan soporte a diferentes tipos de bucles. El script siguiente es un ejemplo de
un bucle de valor contado en un script Python:
i = 1
while i <= 10:
print i
i += 1

El script siguiente es un ejemplo de un bucle de secuencia en un script Python:


items = ["a", "b", "c", "d"]
for i in items:
print i

El bucle de secuencia es muy flexible y cuando se combina con los métodos de la API de IBM SPSS
Modeler puede dar soporte a la mayoría de los casos de uso scripts de herencia. El siguiente ejemplo
muestra cómo utilizar un bucle de secuencia en scripts Python para iterar por los campos de salida de un
nodo:
node = [Link]().findByType("filter", None)
for column in [Link]().columnIterator():
print [Link]()

Ejecución de rutas
Durante la ejecución de la ruta, el modelo o los objetos de resultados que se generan se añaden a uno de
los gestores de objeto. En el script existente, el script debe localizar los objetos creados desde el gestor de
objeto, o acceder al resultado generado más recientemente desde el nodo que ha generado el resultado.

La ejecución de rutas en Python es diferente, ya que cualquier objeto de modelo o resultados que genere
la ejecución se devuelve una lista que se pasa a la función de ejecución. Esto hace que resulte más
sencillo acceder a los resultados de la ejecución de la ruta.

Los scripts de herencia dan soporte a tres comandos de ejecución de ruta:


v execute_all ejecuta todos nodos terminales ejecutables en la ruta.

Apéndice B. Migración desde scripts de herencia a scripts Python 377


v execute_script ejecuta el script de ruta independientemente del valor de la ejecución del script.
v execute nodo ejecuta el nodo especificado.

Los scripts Python dan soporte a un conjunto de funciones similares:


v [Link](lista-resultados) ejecuta todos los nodos terminales ejecutables de la ruta.
v [Link](lista-resultados) ejecuta el script de ruta independientemente del valor de la
ejecución del script.
v [Link](matriz-nodos, lista-resultados) ejecuta el conjunto de nodos especificados en el
orden en que se suministran.
v [Link](lista-resultados) ejecuta el nodo especificado.

En los scripts de herencia, la ejecución de ruta se puede finalizar con el comando exit con un código de
entero opcional, por ejemplo:
exit 1

En los scripts Python, se puede obtener el mismo resultado con el script siguiente:
[Link](1)

Acceso a objetos mediante el sistema de archivos y el repositorio


En los scripts heredados se puede abrir una ruta, un modelo o un resultado existentes mediante el
comando open, por ejemplo:
var s
set s = open stream "c:/my streams/[Link]"

En los scripts Python, existe la clase TaskRunner, accesible desde la sesión, que puede utilizarse para
realizar tareas similares, por ejemplo:
taskrunner = [Link]().getTaskRunner()
s = [Link]("c:/my streams/[Link]", True)

Para guardar un objeto en los scripts heredados, puede utilizarse el comando save, por ejemplo:
save stream s as "c:/my streams/new_modeling.str"

El enfoque de un script Python consiste en utilizar la clase TaskRunner, por ejemplo:


[Link](s, "c:/my streams/new_modeling.str")

Las operaciones basadas en un Repositorio de IBM SPSS Collaboration and Deployment Services se
soportan en los scripts heredados mediante los comandos retrieve y store, por ejemplo:
var s
set s = retrieve stream "/my repository folder/my_stream.str"
store stream ^s as "/my repository folder/my_stream_copy.str"

En los scripts Python, se accede a la funcionalidad equivalente a través del objeto Repository asociado a
la sesión, por ejemplo:
session = [Link]()
repo = [Link]()
s = [Link]("/my repository folder/my_stream.str", None, None, True)
[Link](s, "/my repository folder/my_stream_copy.str", None)

Nota: El acceso al repositorio exige que la sesión se haya configurado con una conexión de repositorio
válida.

378 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Operaciones de ruta
Algunos comandos de operación de ruta que normalmente se utilizan en IBM SPSS Modeler tienen sus
comandos equivalentes en los scripts Python. Esto puede ayudarle a convertir los scripts de SPSS
Modeler de herencia existentes en scripts Python para utilizarlos en IBM SPSS Modeler 17.
Tabla 270. Correlación de scripts de herencia con scripts Python para operaciones de ruta.
Scripts de herencia scripts Python
create stream NOMBREARCHIVO_PREDETERMINADO [Link](nombre, autoConectar,
autoGestionar)
close stream [Link]()
clear stream [Link]()
get stream ruta Sin equivalente
load stream vía de acceso Sin equivalente
open stream vía de acceso [Link](vía de acceso,
autoGestionar)
save ruta as vía de acceso [Link](ruta, vía de acceso)
retreive stream vía de acceso [Link](vía de acceso, versión,
etiqueta, autoGestionar)
store ruta as vía de acceso [Link](ruta, vía de acceso,
etiqueta)

Operaciones de modelo
Algunos de los comandos de operación de modelo que normalmente se utilizan en IBM SPSS Modeler
tienen sus comandos equivalentes en los scripts Python. Esto puede ayudarle a convertir los scripts de
SPSS Modeler de herencia existentes en scripts Python para utilizarlos en IBM SPSS Modeler 17.
Tabla 271. Correlación de scripts de herencia con scripts Python para operaciones de modelo.
Scripts de herencia scripts Python
open model vía de acceso [Link](vía de acceso,
autoGestionar)
save modelo as vía de acceso [Link](modelo, vía de acceso)
retrieve model vía de acceso [Link](vía de acceso, versión,
etiqueta, autoGestionar)
store modelo as vía de acceso [Link](modelo, vía de acceso,
etiqueta)

Operaciones de resultado de documento


Algunos de los comandos de operaciones de resultado de documento que normalmente se utilizan en
IBM SPSS Modeler tienen sus comandos equivalentes en los scripts Python. Esto puede ayudarle a
convertir los scripts de SPSS Modeler de herencia existentes en scripts Python para utilizarlos en IBM
SPSS Modeler 17.
Tabla 272. Correlación de scripts de herencia con scripts Python para operaciones de resultado de documento.
Scripts de herencia scripts Python
open output vía de acceso [Link](vía de acceso,
autoGestionar)
save resultado as vía de acceso [Link](resultado, vía de
acceso)

Apéndice B. Migración desde scripts de herencia a scripts Python 379


Tabla 272. Correlación de scripts de herencia con scripts Python para operaciones de resultado de
documento (continuación).
Scripts de herencia scripts Python
retrieve output vía de acceso [Link](vía de acceso, versión,
etiqueta, autoGestionar)
store resultado as vía de acceso [Link](resultado, vía de acceso,
etiqueta)

Otras diferencias entre scripts heredados y scripts Python


Los scripts heredados soportan la manipulación de proyectos de IBM SPSS Modeler. Los scripts Python
no soportan esto actualmente.

Los scripts heredados proporcionan cierto soporte de carga de objetos de estado (combinaciones de rutas y
modelos). Los objetos de estado han caído en desuso desde IBM SPSS Modeler 8.0. Los scripts Python no
soportan objetos de estado.

Los scripts Python proporcionan las siguientes funciones adicionales no disponibles en los scripts
heredados:
v Definiciones de clase y función.
v Manejo de errores.
v Soporte más sofisticado de entrada/salida.
v Módulos externos y de terceros.

380 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


Avisos
Esta información se ha desarrollado para productos y servicios ofrecidos en los [Link]. Este material
puede estar disponible en IBM en otros idiomas. Sin embargo, es posible que deba ser propietario de una
copia del producto o de la versión del producto en dicho idioma para acceder a él.

Es posible que IBM no ofrezca los productos, servicios o características que se tratan en este documento
en otros países. El representante local de IBM le puede informar sobre los productos y servicios que están
actualmente disponibles en su localidad. Cualquier referencia a un producto, programa o servicio de IBM
no pretende afirmar ni implicar que solamente se pueda utilizar ese producto, programa o servicio de
IBM. En su lugar, se puede utilizar cualquier producto, programa o servicio funcionalmente equivalente
que no infrinja los derechos de propiedad intelectual de IBM. Sin embargo, es responsabilidad del usuario
evaluar y comprobar el funcionamiento de todo producto, programa o servicio que no sea de IBM.

IBM puede tener patentes o solicitudes de patente en tramitación que cubran la materia descrita en este
documento. Este documento no le otorga ninguna licencia para estas patentes. Puede enviar preguntas
acerca de las licencias, por escrito, a:

IBM Director of Licensing


IBM Corporation
North Castle Drive, MD-NC119
Armonk, NY 10504-1785
[Link].

Para consultas sobre licencias relacionadas con información de doble byte (DBCS), póngase en contacto
con el departamento de propiedad intelectual de IBM de su país o envíe sus consultas, por escrito, a:

Intellectual Property Licensing


Legal and Intellectual Property Law
IBM Japan Ltd.
19-21, Nihonbashi-Hakozakicho, Chuo-ku
Tokio 103-8510, Japón

INTERNATIONAL BUSINESS MACHINES CORPORATION PROPORCIONA ESTA PUBLICACIÓN "TAL


CUAL", SIN GARANTÍAS DE NINGUNA CLASE, NI EXPLÍCITAS NI IMPLÍCITAS, INCLUYENDO,
PERO SIN LIMITARSE A, LAS GARANTÍAS IMPLÍCITAS DE NO VULNERACIÓN,
COMERCIALIZACIÓN O ADECUACIÓN A UN PROPÓSITO DETERMINADO. Algunas jurisdicciones
no permiten la renuncia a las garantías explícitas o implícitas en determinadas transacciones; por lo tanto,
es posible que esta declaración no sea aplicable a su caso.

Esta información puede incluir imprecisiones técnicas o errores tipográficos. Periódicamente, se efectúan
cambios en la información aquí y estos cambios se incorporarán en nuevas ediciones de la publicación.
IBM puede realizar en cualquier momento mejoras o cambios en los productos o programas descritos en
esta publicación sin previo aviso.

Las referencias hechas en esta publicación a sitios web que no son de IBM se proporcionan sólo para la
comodidad del usuario y no constituyen de modo alguno un aval de esos sitios web. La información de
esos sitios web no forma parte de la información de este producto de IBM y la utilización de esos sitios
web se realiza bajo la responsabilidad del usuario.

IBM puede utilizar o distribuir la información que se le proporcione del modo que considere adecuado
sin incurrir por ello en ninguna obligación con el remitente.

381
Los titulares de licencias de este programa que deseen tener información sobre el mismo con el fin de
permitir: (i) el intercambio de información entre programas creados independientemente y otros
programas (incluido este) y (ii) el uso mutuo de la información que se ha intercambiado, deberán ponerse
en contacto con:

IBM Director of Licensing


IBM Corporation
North Castle Drive, MD-NC119
Armonk, NY 10504-1785
[Link].

Esta información estará disponible, bajo las condiciones adecuadas, incluyendo en algunos casos el pago
de una cuota.

El programa bajo licencia que se describe en este documento y todo el material bajo licencia disponible
los proporciona IBM bajo los términos de las Condiciones Generales de IBM, Acuerdo Internacional de
Programas Bajo Licencia de IBM o cualquier acuerdo equivalente entre las partes.

Los ejemplos de datos de rendimiento y de clientes citados se presentan solamente a efectos ilustrativos.
Los resultados reales de rendimiento pueden variar en función de las configuraciones específicas y
condiciones de operación.

La información relacionada con productos no IBM se ha obtenido de los proveedores de esos productos,
de sus anuncios publicados o de otras fuentes disponibles públicamente. IBM no ha probado esos
productos y no puede confirmar la exactitud del rendimiento, la compatibilidad ni ninguna otra
afirmación relacionada con productos no IBM. Las preguntas sobre las posibilidades de productos que no
son de IBM deben dirigirse a los proveedores de esos productos.

Las declaraciones sobre el futuro rumbo o intención de IBM están sujetas a cambio o retirada sin previo
aviso y representan únicamente metas y objetivos.

Esta información contiene ejemplos de datos e informes utilizados en operaciones comerciales diarias.
Para ilustrarlos lo máximo posible, los ejemplos incluyen los nombres de las personas, empresas, marcas
y productos. Todos estos nombres son ficticios y cualquier parecido con personas o empresas comerciales
reales es pura coincidencia.

Marcas comerciales
IBM, el logotipo de IBM e [Link] son marcas registradas o marcas comerciales de International Business
Machines Corp., registradas en muchas jurisdicciones en todo el mundo. Otros nombres de productos y
servicios podrían ser marcas registradas de IBM u otras compañías. En Internet hay disponible una lista
actualizada de las marcas registradas de IBM, en "Copyright and trademark information", en
[Link]/legal/[Link].

Adobe, el logotipo Adobe, PostScript y el logotipo PostScript son marcas registradas o marcas comerciales
de Adobe Systems Incorporated en Estados Unidos y/o otros países.

Intel, el logotipo de Intel, Intel Inside, el logotipo de Intel Inside, Intel Centrino, el logotipo de Intel
Centrino, Celeron, Intel Xeon, Intel SpeedStep, Itanium y Pentium son marcas comerciales o marcas
registradas de Intel Corporation o sus filiales en Estados Unidos y otros países.

Linux es una marca registrada de Linus Torvalds en Estados Unidos, otros países o ambos.

Microsoft, Windows, Windows NT, y el logotipo de Windows son marcas comerciales de Microsoft
Corporation en Estados Unidos, otros países o ambos.

382 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


UNIX es una marca registrada de The Open Group en Estados Unidos y otros países.

Java y todas las marcas comerciales y los logotipos basados en Java son marcas comerciales o registradas
de Oracle y/o sus afiliados.

Términos y condiciones para la documentación del producto


Los permisos para utilizar estas publicaciones se otorgan de acuerdo con los términos y condiciones
siguientes.

Aplicabilidad

Estos términos y condiciones son adicionales a los términos de uso del sitio web de IBM.

Uso personal
Estas publicaciones se pueden reproducir para uso personal no comercial siempre que se conserven todos
los avisos de propiedad. No puede distribuir, visualizar ni realizar trabajos derivados de estas
publicaciones, ni de partes de las mismas, sin el consentimiento expreso de IBM.

Uso comercial

Puede reproducir, distribuir y visualizar estas publicaciones únicamente dentro de la empresa a condición
de que se conserven todos los avisos de propiedad. No puede realizar trabajos derivados de estas
publicaciones, ni de partes de las mismas, ni reproducirlas, distribuirlas o visualizarlas fuera de su
empresa sin el consentimiento expreso de IBM.

Derechos

Excepto de la forma explícitamente otorgada en este permiso, no se otorga ningún permiso, licencia ni
derecho, ni explícito ni implícito, sobre las publicaciones ni a ninguna otra información, datos, software u
otra propiedad intelectual contenida en ellas.

IBM se reserva el derecho de retirar los permisos aquí otorgados siempre que, a su discreción, el uso de
las publicaciones sea perjudicial para su interés o cuando, según determine IBM, las instrucciones
anteriores no se sigan correctamente.

No puede descargar, exportar ni volver a exportar esta información si no es cumpliendo totalmente todas
las leyes y regulaciones aplicables, incluyendo las leyes y regulaciones de exportación de los Estados
Unidos.

IBM NO GARANTIZA EL CONTENIDO DE ESTAS PUBLICACIONES. LAS PUBLICACIONES SE


PROPORCIONAN "TAL CUAL" Y SIN GARANTÍA DE NINGUNA CLASE, NI EXPLÍCITA NI
IMPLÍCITA, INCLUYENDO PERO SIN LIMITARSE A LAS GARANTÍAS IMPLÍCITAS DE
COMERCIALIZACIÓN, NO VULNERACIÓN E IDONEIDAD PARA UN FIN DETERMINADO.

Avisos 383
384 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python
Índice
A CLEM
scripts 1
G
acceder a los resultados de la ejecución Clúster de secuencias de MS GLE, modelos
de ruta propiedades de scripts de nodos 291 propiedades de scripts de nodos 222,
modelo de contenido de tabla 54 comando clear generated palette 53 279
modelo de contenido JSON 57 comando de conjunto múltiple 69
modelo de contenido XML 55 comando for 49
acceder a resultados de ejecución de la
ruta 53, 58
comando retrieve 50 I
comando store 50 IBM SPSS Modeler
adición de atributos 24 comentarios 18 ejecución desde la línea de
API de creación de scripts comprobación de errores comandos 63
acceso a objetos generados 41 scripts 52 identificadores 19
buscar 37 configuración de propiedades 30 inheritance 25
ejemplo 37 contraseñas instrucciones 19
introducción 37 adición a scripts 52 interrupción de scripts 12
manejo de errores 42 codificadas 66
metadatos 38 contraseñas codificadas
obtener un directorio 37
parámetros de ruta 43
adición a scripts 52
creación de nodos 31, 33
J
parámetros de sesión 43 crear una clase 24 Jython 15
parámetros de Supernodos 43
scripts autónomos 47
valores globales 46
varias rutas 47 D L
definición de atributos 24 línea de comandos
applyextension, propiedades 276
definir métodos 24 ejecutar IBM SPSS Modeler 63
applyocsvm, propiedades 282
definir una clase 24 lista de argumentos 64, 66, 67, 68
applyxgboostlinearnode,
derive_stbnode parámetros 65
propiedades 287
propiedades 111 scripts 52
applyxgboosttreenode, propiedades 287
Diagramas 27 varios argumentos 68
Árbol de decisión de MS
listas 16
propiedades de scripts de nodos 289,
291
argumentos E M
archivo de comandos 68 ejecución condicional de rutas 6, 11
conexión con el servidor 66 Ejecución de rutas 27 marcas
conexión de IBM SPSS Collaboration ejecución de scripts 12 argumentos de la línea de
and Deployment Services ejemplos 20 comandos 63
Repository 67 exportModelToFile 41 combinación de varias marcas 68
Conexión del repositorio de IBM SPSS extensionexportnode, propiedades 339 métodos matemáticos 21
Analytic Server 68 extensionimportnode, propiedades 89 migrar
sistema 64 extensionmodelnode, propiedades 209 acceder a objetos 378
atravesar los nodos 33 extensionoutputnode, propiedades 316 borrar rutas, salida y gestores de
extensionprocessnode, propiedades 115 modelos 34
bucle 377
B comandos 371
conceptos básicos 371
bloques de código 19 F configuración de propiedades 375
bucles función lowertoupper 49 contexto de los scripts 371
uso en scripts 49 funciones diferencias generales 371
bucles en rutas 6, 7 bucle 373 editar rutas 375
buscar nodos 29 comentarios 372 ejecución de rutas 377
condicionales 373 funciones 371
literales 372 nombres de propiedad 374
C operaciones de modelo 379 obtener propiedades 375
cadenas 17 operaciones de nodo 376 referencias de nodos 374
cambio entre minúsculas y operaciones de resultado de repositorio 378
mayúsculas 49 documento 379 sistema de archivos 378
campos operaciones de ruta 379 tipos de modelos 374
desactivación de los scripts 163 operadores 372 tipos de nodo 374
caracteres que no son ASCII 22 referencias de objeto 372 tipos de salida 374
clave de iteración funciones de cadena 49 variables 374
bucle en scripts 8 varios 380

385
modelado de bases de datos 289 Modelos de clasificador automático modelos de secuencias
modelo de contenido de tabla 54 propiedades de scripts de nodos 272 propiedades de scripts de nodos 248,
modelo de contenido JSON 57 modelos de detección de anomalías 284
modelo de contenido XML 55 propiedades de scripts de nodos 185, modelos de selección de características
modelos 271 aplicación 5
nombres de scripts 367, 369 Modelos de IBM SPSS Statistics propiedades de scripts de nodos 213,
modelos apriori propiedades de scripts de nodos 348 278
propiedades de scripts de nodos 187, modelos de K-medias scripts 5
271 propiedades de scripts de nodos 227, modelos de serie temporal
Modelos Apriori de Oracle 279 propiedades de scripts de nodos 259,
propiedades de scripts de nodos 293, modelos de K-medias de Netezza 285
299 propiedades de scripts de nodos 300, modelos de serie temporal de modalidad
modelos autonuméricos 311 continua
propiedades de scripts de nodos 194 Modelos de K-medias de Oracle propiedades de scripts de nodos 125
Modelos autonuméricos propiedades de scripts de nodos 293, modelos de series temporales
propiedades de scripts de nodos 273 299 propiedades de scripts de nodos 259,
Modelos bayesianos adaptativos de modelos de la máquina de vectores de 263, 285
Oracle soporte Modelos de series temporales de Netezza
propiedades de scripts de nodos 293, propiedades de scripts de nodos 254, propiedades de scripts de nodos 300
299 284 modelos del vecino más próximo
modelos bietápicos modelos de la máquina de vectores de propiedades de scripts de nodos 228
propiedades de scripts de nodos 267, soporte lineal modelos discriminantes
286 propiedades de scripts de nodos 237, propiedades de scripts de nodos 208,
modelos bietápicos AS 281 275
propiedades de scripts de nodos 268, modelos de listas de decisiones modelos generados
286 propiedades de scripts de nodos 206, nombres de scripts 367, 369
modelos C5.0 275 Modelos GLMM
propiedades de scripts de nodos 198, Modelos de máquinas de vectores de propiedades de scripts de nodos 218,
273 soporte de Oracle 278
modelos CARMA propiedades de scripts de nodos 293, modelos KNN
propiedades de scripts de nodos 199, 299 propiedades de scripts de nodos 280
274 modelos de Microsoft Modelos KNN de Netezza
modelos causales temporales propiedades de scripts de nodos 289, propiedades de scripts de nodos 300,
propiedades de scripts de nodos 255 291 311
modelos CHAID Modelos de Netezza modelos kohonen
propiedades de scripts de nodos 203, propiedades de scripts de nodos 300 propiedades de scripts de nodos 229
274 Modelos de NMF de Oracle modelos Kohonen
Modelos de agrupación en clústeres propiedades de scripts de nodos 293, propiedades de scripts de nodos 280
divisivo de Netezza 299 modelos lineales
propiedades de scripts de nodos 300, modelos de Oracle propiedades de scripts de nodos 231,
311 propiedades de scripts de nodos 293 280
modelos de árbol aleatorio modelos de red bayesiana modelos lineales generalizados
propiedades de scripts de nodos 244, propiedades de scripts de nodos 196 propiedades de scripts de nodos 215,
283 Modelos de red bayesiana de Netezza 278
modelos de árbol C&R propiedades de scripts de nodos 300, Modelos lineales generalizados de
propiedades de scripts de nodos 200, 311 Netezza
274 modelos de red neuronal propiedades de scripts de nodos 300
Modelos de árbol de decisión de Oracle propiedades de scripts de nodos 238, Modelos lineales generalizados de Oracle
propiedades de scripts de nodos 293, 281 propiedades de scripts de nodos 293
299 Modelos de redes bayesianas modelos linear-AS
modelos de árboles de decisión de propiedades de scripts de nodos 273 propiedades de scripts de nodos 232,
Netezza Modelos de regresión de Cox 280
propiedades de scripts de nodos 300, propiedades de scripts de nodos 205, modelos LSVM
311 275 propiedades de scripts de nodos 237
Modelos de árboles de regresión de modelos de regresión lineal Modelos Oracle AI
Netezza propiedades de scripts de nodos 246, propiedades de scripts de nodos 293
propiedades de scripts de nodos 300, 283, 284 Modelos para LMD de Oracle
311 Modelos de regresión lineal de Netezza propiedades de scripts de nodos 293,
modelos de Autoclúster propiedades de scripts de nodos 300, 299
propiedades de scripts de nodos 273 311 modelos PCA
Modelos de bayesiano ingenuo de modelos de regresión logística propiedades de scripts de nodos 212,
Netezza propiedades de scripts de nodos 233, 277
propiedades de scripts de nodos 300, 281 Modelos PCA de Netezza
311 modelos de respuesta de autoaprendizaje propiedades de scripts de nodos 300,
Modelos de bayesiano ingenuo de Oracle propiedades de scripts de nodos 249, 311
propiedades de scripts de nodos 293, 284
299

386 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


modelos PCA/Factorial nodo de importación de extensión nodo G. múltiple
propiedades de scripts de nodos 212, propiedades 89 propiedades 175
277 nodo de Modelo de extensión nodo Generación de análisis de serie
modelos QUEST propiedades de scripts de nodos 209 temporal
propiedades de scripts de nodos 242, Nodo de origen de Excel propiedades 128
282 propiedades 88 nodo Gráfico de tiempo
modelos SLRM Nodo de origen de IBM SPSS Statistics propiedades 178
propiedades de scripts de nodos 249, Collection nodo Gráfico electrónico
284 propiedades 347 propiedades 179
modelos SVM Nodo de origen de importación de TWC Nodo graphboard
propiedades de scripts de nodos 254 propiedades 99 propiedades 168
modelos tcm nodo de origen Geospacial nodo histogram
propiedades de scripts de nodos 285 propiedades 94 propiedades 170
modelos Tree-AS nodo de origen Recopilación de datos nodo history
propiedades de scripts de nodos 265, propiedades 86 propiedades 145
286 Nodo de origen SAS nodo Informe
modificar rutas 31, 33 propiedades 94 propiedades 320
nodo de origen Vista de datos nodo Intervalos de tiempo
propiedades 104 propiedades 152
N Nodo de origen XML
propiedades 104
nodo Intervalos de tiempo AS
propiedades 137
Nodo Adición de RFM
nodo de predicción espaciotemporal nodo Isotónica-AS
propiedades 118
propiedades 250 propiedades 361
nodo aggregate
nodo de Resultados de extensión nodo Malla
propiedades 107
propiedades 316 propiedades 182
Nodo Agrupación en clústeres automática
Nodo de salida de IBM SPSS Statistics nodo Malla direccional
propiedades de scripts de nodos 193
Collection propiedades 182
Nodo Análisis de RFM
propiedades 348 Nodo Marcas
propiedades 149
nodo de simulación de ajuste propiedades 151
Nodo analysis
propiedades 323 nodo matrix
propiedades 313
nodo de simulación de evaluación propiedades 317
nodo anonimyze
propiedades 322 nodo Medias
propiedades 133
nodo de transformación propiedades 319
nodo append
propiedades 328 nodo origen Analytic Server
propiedades 107
nodo de Transformación de extensión propiedades 81
nodo Archivo var.
propiedades 115 nodo Origen de IBM Cognos
propiedades 100
Nodo de transformación de IBM SPSS propiedades 82
Nodo Auditoría de datos
Statistics Collection nodo Origen de IBM Cognos TM1
propiedades 314
propiedades 347 propiedades 97, 98
nodo balance
nodo de transformación R nodo partition
propiedades 108
propiedades 119 propiedades 146
nodo Base de datos
nodo de visualización de mapas nodo plot
propiedades 84
propiedades 171 propiedades 176
nodo binning
nodo derive nodo R Build
propiedades 137
propiedades 140 propiedades de scripts de nodos 197
nodo Bosque aleatorio
nodo distinct nodo Reclasificar
propiedades 353
propiedades 113 propiedades 147
nodo Cajas-Espacio-Tiempo
nodo distribution nodo Reestructurar
propiedades 111, 123
propiedades 165 propiedades 149
Nodo Clasificador automático
nodo ensemble nodo Reglas de asociación
propiedades de scripts de nodos 191
propiedades 142 propiedades 188
nodo Colección
nodo Estadísticos nodo Rellenar
propiedades 164
propiedades 324 propiedades 143
nodo de datos de usuario
nodo evaluation nodo Reordenar
propiedades 100
propiedades 166 propiedades 148
nodo de Exportación de extensión
nodo Exportar base de datos nodo Reorg. campos
propiedades 339
propiedades 334 propiedades 148
Nodo de exportación de IBM SPSS
Nodo Exportar SAS nodo Reprojection
Statistics Collection
propiedades 341 propiedades 148
propiedades 349
nodo filter nodo Routput
nodo de exportación de recopilación de
propiedades 144 propiedades 321
datos
nodo fixedfile nodo sample
propiedades 338
propiedades 92 propiedades 120
Nodo de exportación Excel
nodo flatfilenode nodo Seleccionar
propiedades 338
propiedades 340 propiedades 122
nodo de exportación XML
nodo Fundir nodo Sim Eval
propiedades 345
propiedades 116 propiedades 322

Índice 387
nodo Sim Fit orden de ejecución propiedades de applylinearasnode 280
propiedades 323 modificación con scripts 49 Propiedades de applylinearnode 280
nodo Sim Gen orden de ejecución de rutas propiedades de applylogregnode 281
propiedades 95 modificación con scripts 49 propiedades de applylsvmnode 281
nodo Simulación de generación orientado a objetos 23 propiedades de
propiedades 95 applymslogisticnode 291
nodo sort propiedades de
propiedades 122
nodo STP
P applymsneuralnetworknode 291
propiedades de
palabra clave generada 53
propiedades 250 applymsregressionnode 291
parámetros 5, 69, 71, 73
nodo t-SNE propiedades de
scripts 16
propiedades 180, 354 applymssequenceclusternode 291
Supernodos 365
nodo Tabla propiedades de
parámetros de intervalo 5, 69, 71
propiedades 325 applymstimeseriesnode 291
pasar argumentos 20
nodo Tipo propiedades de applymstreenode 291
preparación automática de datos
propiedades 157 propiedades de
propiedades 134
nodo Transponer applynetezzabayesnode 311
properties autodataprepnode 134
propiedades 156 propiedades de
propiedad [Link] 49
nodo Val. globales applynetezzadectreenode 311
propiedades
propiedades 322 propiedades de
nodos de modelado de bases de
nodo XGBoost-AS applynetezzadivclusternode 311
datos 289
propiedades 361 propiedades de
nodos Filtrar 69
nodos applynetezzakmeansnode 311
ruta 73
desenlazar nodos 31 propiedades de
scripts 69, 71, 185, 271, 331
enlazar nodos 31 applynetezzaknnnode 311
scripts comunes 71
importación 33 propiedades de
Supernodos 365
información 34 applynetezzalineregressionnode 311
propiedades applyrandomtrees 283
recorrido en bucle en scripts 49 propiedades de
propiedades applyts 285
referencia de nombres 367 applynetezzanaivebayesnode 311
propiedades associationrulesnode 188
suprimir 33 propiedades de
Propiedades cplexoptnode 109
volver a poner 33 applynetezzapcanode 311
propiedades de aggregatenode 107
nodos de exportación propiedades de
propiedades de analysisnode 313
propiedades de scripts de nodos 331 applynetezzaregtreenode 311
propiedades de
nodos de gráficos propiedades de applyneuralnetnode 281
anomalydetectionnode 185
propiedades de los scripts 163 propiedades de
propiedades de anonymizenode 133
nodos de modelado applyneuralnetworknode 282
propiedades de appendnode 107
propiedades de scripts de nodos 185 propiedades de applyoraabnnode 299
propiedades de
nodos de origen propiedades de
applyanomalydetectionnode 271
propiedades 77 applyoradecisiontreenode 299
propiedades de applyapriorinode 271
nodos de resultados propiedades de
propiedades de
propiedades de los scripts 313 applyorakmeansnode 299
applyassociationrulesnode 272
nombres de campos propiedades de applyoranbnode 299
propiedades de
cambio entre minúsculas y propiedades de applyoranmfnode 299
applyautoclassifiernode 272
mayúsculas 49 propiedades de
propiedades de
nugget applyoraoclusternode 299
applyautoclusternode 273
propiedades de scripts de nodos 271 propiedades de applyorasvmnode 299
propiedades de
nugget de nodo de reglas de asociación propiedades de applyquestnode 282
applyautonumericnode 273
propiedades 272 propiedades de applyr 283
propiedades de applybayesnetnode 273
nugget de nodo STP propiedades de
propiedades de applyc50node 273
propiedades 284 applyregressionnode 284
propiedades de applycarmanode 274
nuggets de modelo propiedades de
propiedades de applycartnode 274
nombres de scripts 367, 369 applyselflearningnode 284
propiedades de applychaidnode 274
propiedades de scripts de nodos 271 propiedades de applysequencenode 284
propiedades de applycoxregnode 275
propiedades de applystpnode 284
propiedades de
propiedades de applysvmnode 284
applydecisionlistnode 275
O propiedades de
Propiedades de applytcmnode 285
propiedades de
O-clúster de Oracle applydiscriminantnode 275
applytimeseriesnode 285
propiedades de scripts de nodos 293, propiedades de applyfactornode 277
propiedades de applytreeas 286
299 propiedades de
propiedades de applytwostepAS 286
objetos de resultados applyfeatureselectionnode 278
propiedades de applytwostepnode 286
nombres de scripts 369 propiedades de
propiedades de apriorinode 187
objetos del modelo applygeneralizedlinearnode 278
propiedades de asexport 331
nombres de scripts 367, 369 Propiedades de applygle 279
propiedades de asimport 81
ocsvmnode, propiedades 351 Propiedades de applyglmmnode 278
propiedades de astimeintervalsnode 137
operaciones 16 propiedades de applykmeansnode 279
propiedades de autoclassifiernode 191
Optimización de CPLEX, nodo propiedades de applyknnnode 280
propiedades de autonumericnode 194
propiedades 109 propiedades de applykohonennode 280

388 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


propiedades de balancenode 108 Propiedades de netezzakmeansnode 300 propiedades de tablenode 325
propiedades de bayesnet 196 Propiedades de netezzaknnnode 300 propiedades de tcmnode 255
propiedades de binningnode 137 Propiedades de propiedades de timeintervalsnode 152
propiedades de buildr 197 netezzalineregressionnode 300 propiedades de timeplotnode 178
propiedades de c50node 198 propiedades de propiedades de timeseriesnode 263
propiedades de carmanode 199 netezzanaivebayesnode 300 propiedades de transformnode 328
propiedades de cartnode 200 Propiedades de netezzapcanode 300 propiedades de transposenode 156
propiedades de chaidnode 203 Propiedades de netezzaregtreenode 300 propiedades de treeas 265
propiedades de collectionnode 164 Propiedades de propiedades de twostepAS 268
propiedades de coxregnode 205 netezzatimeseriesnode 300 propiedades de twostepnode 267
propiedades de dataauditnode 314 propiedades de neuralnetnode 238 propiedades de typenode 5, 157
propiedades de databaseexportnode 334 Propiedades de neuralnetwork 241 propiedades de userinputnode 100
propiedades de databasenode 84 propiedades de nodo de agrupación en propiedades de variablefilenode 100
propiedades de clústeres automática 193 propiedades de webnode 182
datacollectionexportnode 338 propiedades de propiedades de xmlexportnode 345
propiedades de numericpredictornode 194 propiedades de xmlimportnode 104
datacollectionimportnode 86 propiedades de oraabnnode 293 propiedades del nodo
propiedades de dataviewimport 104 Propiedades de oraainode 293 Cajas-Espacio-Tiempo 111
propiedades de decisionlist 206 Propiedades de oraapriorinode 293 propiedades del nodo cognosimport 82
propiedades de derivenode 140 Propiedades de oradecisiontreenode 293 propiedades del nodo gsdata_import 94
propiedades de directedwebnode 182 Propiedades de oraglmnode 293 propiedades del nodo tm1import 98
propiedades de discriminantnode 208 Propiedades de orakmeansnode 293 propiedades del nodo
propiedades de distinctnode 113 propiedades de oramdlnode 293 tm1odataimport 97
propiedades de distributionnode 165 propiedades de oranbnode 293 propiedades eplotnode 179
propiedades de ensemblenode 142 Propiedades de oranmfnode 293 propiedades estructuradas 69
propiedades de evaluationnode 166 Propiedades de oraoclusternode 293 propiedades isotonicasnode 361
Propiedades de excelexportnode 338 propiedades de orasvmnode 293 propiedades lineales 231
propiedades de excelimportnode 88 propiedades de outputfilenode 340 propiedades linear-AS 232
propiedades de factornode 212 propiedades de partitionnode 146 propiedades randomtrees 244
propiedades de featureselectionnode 5, propiedades de plotnode 176 propiedades rfmaggregatenode 118
213 propiedades de questnode 242 Propiedades rfnode 353
propiedades de fillernode 143 propiedades de reclassifynode 147 propiedades streamingtimeseries 125
propiedades de filternode 144 Propiedades de regressionnode 246 propiedades streamingts 128
propiedades de fixedfilenode 92 propiedades de reordernode 148 propiedades ts 259
propiedades de flatfilenode 340 propiedades de reportnode 320 propiedades tsnenode 180, 354
propiedades de genlinnode 215 propiedades de reprojectnode 148 propiedades xgboostasnode 361
Propiedades de gle 222 propiedades de restructurenode 149 Python 15
Propiedades de glmmnode 218 propiedades de rfmanalysisnode 149 scripts 16
Propiedades de graphboardnode 168 propiedades de routputnode 321 Python, modelos
propiedades de histogramnode 170 propiedades de Rprocessnode 119 propiedades de scripts de nodos 282,
propiedades de historynode 145 propiedades de samplenode 120 287
propiedades de kmeansnode 227 propiedades de sasexportnode 341
propiedades de knnnode 228 propiedades de sasimportnode 94
propiedades de kohonennode 229
Propiedades de logregnode 233
propiedades de scripts de nodos 289
nodos de exportación 331
R
Red neuronal de MS
propiedades de lsvmnode 237 nodos de modelado 185
propiedades de scripts de nodos 289,
Propiedades de mapvisualization 171 nuggets de modelo 271
291
propiedades de matrixnode 317 propiedades de selectnode 122
redes neuronales
propiedades de meansnode 319 propiedades de sequencenode 248
propiedades de scripts de nodos 241,
propiedades de mergenode 116 propiedades de setglobalsnode 322
282
propiedades de msassocnode 289 propiedades de settoflagnode 151
referencia a nodos 29
propiedades de msbayesnode 289 propiedades de simevalnode 322
buscar nodos 29
propiedades de msclusternode 289 propiedades de simfitnode 323
configuración de propiedades 30
propiedades de mslogisticnode 289 propiedades de simgennode 95
Regresión lineal de MS
propiedades de propiedades de slrmnode 249
propiedades de scripts de nodos 289,
msneuralnetworknode 289 propiedades de sortnode 122
291
propiedades de msregressionnode 289 Propiedades de spacetimeboxes 123
Regresión logística de MS
propiedades de propiedades de statisticsexportnode 349
propiedades de scripts de nodos 289,
mssequenceclusternode 289 propiedades de statisticsimportnode 5,
291
propiedades de mstimeseriesnode 289 347
Repositorio de IBM SPSS Analytic Server
propiedades de mstreenode 289 propiedades de statisticsmodelnode 348
Repository
propiedades de multiplotnode 175 propiedades de statisticsnode 324
argumentos de la línea de
Propiedades de netezzabayesnode 300 propiedades de statisticsoutputnode 348
comandos 68
Propiedades de netezzadectreenode 300 propiedades de
Repositorio de IBM SPSS Collaboration
Propiedades de statisticstransformnode 347
and Deployment Services
netezzadivclusternode 300 propiedades de stpnode 250
argumentos de la línea de
Propiedades de netezzaglmnode 300 propiedades de svmnode 254
comandos 67

Índice 389
Repositorio de IBM SPSS Collaboration servidor
and Deployment Services (continuación) argumentos de la línea de
scripts 50 comandos 66
resultados de ejecución de la ruta, sistema
acceder 53, 58 argumentos de la línea de
modelo de contenido de tabla 54 comandos 64
modelo de contenido JSON 57 sistema de coordenadas de reproyección
modelo de contenido XML 55 propiedades 148
rutas SMOTE, nodo
bucle 6, 7 propiedades 356
comando de conjunto múltiple 69 smotenode, propiedades 356
ejecución 27 supernodo 69
ejecución condicional 6, 11 Supernodo
modificándose 31 ruta 27
propiedades 73 Supernodos
scripts 1, 27 configuración de propiedades 365
parámetros 365
propiedades 365
S rutas 27
scripts 1, 5, 6, 27, 365
script
SVM de una clase, nodo
abreviaturas utilizadas 70
propiedades 351
bucles visuales 6, 7
clave de iteración 8
comprobación de errores 52
conceptos básicos 1, 15 T
ejecución condicional 6, 11 twcimport, propiedades de nodo 99
en Supernodos 5
interfaz de usuario 1, 4, 5
nodos de resultados 313
orden de ejecución de rutas 49
V
variable de iteración
propiedades comunes 71
bucle en scripts 9
scripts de herencia 372, 373, 376, 379
variables
scripts Python 372, 373, 376, 379
scripts 16
selección de campos 10
variables ocultas 25
sintaxis 16, 17, 18, 19, 20, 21, 22, 23,
24, 25
variable de iteración 9
scripts X
almacenamiento 1 XGBoost Linear, nodo
bucle 6, 7 propiedades 357
clave de iteración 8 XGBoost Tree, nodo
compatibilidad con versiones propiedades 358
anteriores 53 xgboostlinearnode, propiedades 357
contexto 28 xgboosttreenode, propiedades 358
desde la línea de comandos 52
Diagramas 27
ejecución 12
ejecución condicional 6, 11
importación desde archivos de
texto 1
interrupción 12
modelos de selección de
características 5
nodos de gráficos 163
rutas 1, 27
rutas de supernodo 27
scripts autónomos 1, 27
Scripts de Supernodo 1, 27
selección de campos 10
variable de iteración 9
scripts autónomos 1, 4, 27
seguridad
contraseñas codificadas 52, 66
Series temporales de MS
propiedades de scripts de nodos 291

390 IBM SPSS Modeler 18.1.1 Guía de automatización y scripts Python


IBM®

Impreso en España

También podría gustarte