© 2016 Pitney Bowes Software Inc. Todos los derechos reservados.
Este documento puede incluir información confidencial y exclusiva de propiedad de Pitney Bowes Inc. y/o sussubsidiarias y compañías asociadas.
Portrait Software, el logotipo de Portrait Software, Portrait y la marca Portrait de Portrait Software son lasmarcas comerciales de Portrait Software International Limited y se prohíbe su uso o explotación de cualquierforma sin previa autorización escrita expresa de Portrait Software International Limited.
Reconocimiento de marcas comerciales
Otros nombres de productos, nombres de compañías, marcas, logotipos y símbolos a los que se hace referenciaen la presente pueden ser marcas comerciales o marcas comerciales registradas de sus propietarios registrados.
Soporte técnico de Portrait Software
Si necesita ayuda con algún tema no abordado en esta documentación, consulte la Base de conocimientosde nuestro sitio web http://support.portraitsoftware.com y siga los enlaces que llevan al producto.
También puede descargar otra documentación de Portrait Software desde el sitio. Si no tiene nombre deusuario ni contraseña, o no los recuerda, comuníquese con nosotros a través de uno de los canalesmencionados a continuación.
Si encuentra un problema en el uso, la instalación o la documentación de este producto, comuníquese connosotros a través de cualquiera de los siguientes métodos:
Correo electrónico:[email protected]
Teléfono
• EE. UU./Canadá 1-800-335-3860 (línea gratuita)• Resto del mundo +44 800 840 0001
Cuando notifique un problema, nos resultará útil la siguiente información:
• El nombre de la aplicación de software.• Las circunstancias en las que surgió el problema.• Los mensajes de error que recibió (si hubiera).• La versión del software que utiliza.
Pitney Bowes Software Inc.
February 23, 2016
Contenidos
Capítulo 1: Introducción...........................................................................................13Descripción general de Portrait Miner............................................................................14Quién debe leer este manual............................................................................................14
Capítulo 2: Comandos de creación de datos de Portrait Miner............................15Acerca de los comandos de creación de datos de Portrait Miner................................16Opciones estándar de la línea de comandos.................................................................21La opción de línea de comandos -force..........................................................................24La opción de línea de comandos -macro........................................................................25
Capítulo 3: Administrar el comando de creación de datos Portrait Miner..........27qsbuild................................................................................................................................28
Capítulo 4: Comandos para importar y exportar datos.........................................31qsdbaccess........................................................................................................................32qsimportdb.........................................................................................................................33qsdbcreatetable.................................................................................................................35qsdbinsert..........................................................................................................................37qsdbupdate........................................................................................................................38qsgenfdd............................................................................................................................40qsimportflat........................................................................................................................42qsexportflat........................................................................................................................44qsimportstat.......................................................................................................................48qsexportstat.......................................................................................................................50qsimportfocus....................................................................................................................52Cómo Portrait Miner importa los tipos de base de datos..............................................54
Importación a Portrait Miner desde una base de datos.................................................54Exportación de Portrait Miner a una base de datos.......................................................55
Formatos de fecha.............................................................................................................55Formatos de fecha estándar..........................................................................................56Formatos de fechas personalizados..............................................................................56
Capítulo 5: Comandos para procesar enfoques....................................................61qssort..................................................................................................................................62qsderive..............................................................................................................................63qsmeasure..........................................................................................................................66qstrack................................................................................................................................70qsselect..............................................................................................................................73qsrenamefields..................................................................................................................75qsexportmetadata..............................................................................................................78qsimportmetadata.............................................................................................................78qsupdate.............................................................................................................................82
Capítulo 6: Comandos para combinar enfoques...................................................85Acerca de la combinación de enfoques..........................................................................86qsjoin..................................................................................................................................86qsmerge..............................................................................................................................90
Capítulo 7: Comandos para administrar enfoques................................................93qscopy................................................................................................................................94qslink..................................................................................................................................95qsmove...............................................................................................................................95qsremove............................................................................................................................96qsarchive............................................................................................................................97qsunzip...............................................................................................................................98
Capítulo 8: Comandos para elaborar informes....................................................101qssettings.........................................................................................................................102qsaudit..............................................................................................................................102qsdescribe........................................................................................................................106qsdescribestat.................................................................................................................107qshtmlunpack..................................................................................................................108qsdtsnapshot, qsscsnapshot.........................................................................................109qsxt...................................................................................................................................112qsinfo................................................................................................................................113
Portrait Miner 7.14
qsdescribelicense...........................................................................................................114
Capítulo 9: Comandos para construir modelos...................................................117Acerca del Asistente de scorecard................................................................................118qsscorecardwizard..........................................................................................................119qsdecisiontree.................................................................................................................125qsscorecard.....................................................................................................................126Acerca del Asistente para reglas de asociación..........................................................128qsruleminer......................................................................................................................129
Capítulo 10: Comandos para trabajar con archivos QMML................................133qsqmmlview.....................................................................................................................134qsqmmledit......................................................................................................................134qslt....................................................................................................................................137qsqmml2sas.....................................................................................................................139qsqmml2sql......................................................................................................................139qsqsfmtosas....................................................................................................................140
Capítulo 11: Otros comandos................................................................................141qsmapgen.........................................................................................................................142
Capítulo 12: Lenguaje de medición de transacciones........................................147Acerca de Transaction Measurement Language..........................................................148Sintaxis de TML...............................................................................................................148Palabras reservadas en TML..........................................................................................149
Capítulo 13: Instrucciones TML.............................................................................151Definición de campos: la instrucción create................................................................152Uso de funciones de agregación y las cláusulas where y default.............................154División de agregaciones: la cláusula by.....................................................................156Evaluación del enfoque de estadísticas: la instrucción de calcular..........................158
Capítulo 14: Funciones de agregación.................................................................161Funciones de agregación para mediciones y derivaciones........................................162any....................................................................................................................................165confintlower.....................................................................................................................165
5Guía de referencia del comando de creación de datos y TML
confintupper.....................................................................................................................166count.................................................................................................................................167countnonnull/countnonnulls..........................................................................................167countnull/countnulls.......................................................................................................168countunique.....................................................................................................................169countuniquenonnull........................................................................................................169first....................................................................................................................................170last....................................................................................................................................171max (un argumento)........................................................................................................171mean (un argumento)......................................................................................................172median..............................................................................................................................173min (un argumento).........................................................................................................173mode.................................................................................................................................174moderatio.........................................................................................................................175percentage.......................................................................................................................175percentagerate.................................................................................................................176segindex...........................................................................................................................177significance......................................................................................................................177stdev.................................................................................................................................178sum (un argumento)........................................................................................................179variance............................................................................................................................179
Capítulo 15: Lenguaje de derivación de campos.................................................181Acerca del lenguaje de derivación de campos (FDL)..................................................182
Capítulo 16: Sintaxis FDL.......................................................................................183Tipos de datos.................................................................................................................184
El valor null...................................................................................................................184Datos booleanos..........................................................................................................185Compatibilidad de tipos................................................................................................185Conversión de tipos.....................................................................................................186
Expressions (Expresiones)............................................................................................186Expresiones básicas....................................................................................................186
Expresiones condicionales............................................................................................187La expresión if..............................................................................................................188La expresión case........................................................................................................189
Variables...........................................................................................................................190Variables globales en Decision Studio.........................................................................191
Portrait Miner 7.16
Variables state en Transaction Measurement Language.............................................191Funciones definidas por el usuario...............................................................................192
Atributos de funciones.................................................................................................194Operadores aritméticos..................................................................................................195Operadores relacionales.................................................................................................196Operadores lógicos.........................................................................................................198Prioridad de operadores.................................................................................................199Funciones incorporadas.................................................................................................199Palabras reservadas en FDL..........................................................................................206
Capítulo 17: Funciones condicionales..................................................................207clamp................................................................................................................................208cond..................................................................................................................................208iff.......................................................................................................................................209ifnull, nvl...........................................................................................................................210isnull.................................................................................................................................211isselected.........................................................................................................................212replace..............................................................................................................................212
Capítulo 18: Funciones de conversión de tipo de datos.....................................215todate................................................................................................................................216tointeger...........................................................................................................................217toreal.................................................................................................................................217tostring.............................................................................................................................218
Capítulo 19: Funciones para trabajar con fechas................................................221addcenturies, addcenturiescountbackwards...............................................................223adddays............................................................................................................................224addhours..........................................................................................................................224addminutes......................................................................................................................225addmonths, addmonthscountbackwards.....................................................................226addseconds......................................................................................................................228addweeks.........................................................................................................................229addyears, addyearscountbackwards............................................................................230countcenturies.................................................................................................................231countdays.........................................................................................................................231counthours.......................................................................................................................232
7Guía de referencia del comando de creación de datos y TML
countminutes...................................................................................................................233countseconds..................................................................................................................234countweeks......................................................................................................................235countwholecenturies, countwholecenturiesbackwards..............................................236countwholedays..............................................................................................................237countwholehours.............................................................................................................238countwholeminutes.........................................................................................................238countwholemonths, countwholemonthsbackwards....................................................239countwholeseconds........................................................................................................241countwholeweeks............................................................................................................242countwholeyears, countwholeyearsbackwards...........................................................243countyears.......................................................................................................................244day....................................................................................................................................245dayofweek........................................................................................................................245gmt2edt.............................................................................................................................246hour...................................................................................................................................246minute...............................................................................................................................247month................................................................................................................................248now...................................................................................................................................248second..............................................................................................................................249today.................................................................................................................................249weekofyear.......................................................................................................................250year...................................................................................................................................251
Capítulo 20: Funciones para trabajar con cadenas.............................................253concat...............................................................................................................................254endswith...........................................................................................................................254find....................................................................................................................................255left.....................................................................................................................................256mid....................................................................................................................................257right...................................................................................................................................258soundex............................................................................................................................259startswith..........................................................................................................................260strlen.................................................................................................................................261strmember........................................................................................................................261substitute.........................................................................................................................262substr................................................................................................................................263tolower..............................................................................................................................264
Portrait Miner 7.18
toupper.............................................................................................................................265trim....................................................................................................................................265
Capítulo 21: Expresiones regulares y sus funciones asociadas.......................267Expresiones regulares....................................................................................................268Componentes básicos de una expresión regular........................................................268
Referencias inversas...................................................................................................270Operadores de las expresiones regulares....................................................................270
Operadores de repetición............................................................................................270El operador de concatenación.....................................................................................271El operador de alternancia...........................................................................................271
match................................................................................................................................272replaceall..........................................................................................................................273replacefirst.......................................................................................................................274
Capítulo 22: Funciones matemáticas y estadísticas...........................................277abs....................................................................................................................................278ceil.....................................................................................................................................278cos....................................................................................................................................279exp....................................................................................................................................279floor...................................................................................................................................280log.....................................................................................................................................280log10.................................................................................................................................281logbase.............................................................................................................................281max (dos o más argumentos), maxnonnull..................................................................282mean (dos o más argumentos), meannonnull..............................................................283min (dos o más argumentos), minnonnull....................................................................283normalize..........................................................................................................................284pow...................................................................................................................................285product, productnonnull.................................................................................................285round................................................................................................................................286sgn....................................................................................................................................287sin.....................................................................................................................................287sqrt....................................................................................................................................288sum (dos o más argumentos), sumnonnull..................................................................288tan.....................................................................................................................................289
9Guía de referencia del comando de creación de datos y TML
Capítulo 23: Funciones de muestreo de datos....................................................291numericTestTrainSplit.....................................................................................................292numericTestTrainValidateSplit.......................................................................................292sampleEqualSize.............................................................................................................293sampleExactNumber.......................................................................................................294sampleExactPercentage.................................................................................................295sampleStratified...............................................................................................................296testTrainSplit....................................................................................................................297testTrainValidateSplit......................................................................................................297
Capítulo 24: Funciones de números aleatorios...................................................299Sobre las funciones de números aleatorios en FDL....................................................300rndBinomial......................................................................................................................300rndBool.............................................................................................................................301rndExp..............................................................................................................................301rndGamma........................................................................................................................302rndNormal........................................................................................................................302rndPoisson.......................................................................................................................303rndUniform.......................................................................................................................304
Capítulo 25: Funciones de rentabilidad de la inversión......................................305ActionROI.........................................................................................................................306ActionROIAnnualized......................................................................................................307OfferROI............................................................................................................................308OfferROIAnnualized........................................................................................................309RetentionActionROI........................................................................................................310RetentionActionROIAnnualized.....................................................................................311RetentionOfferROI...........................................................................................................313RetentionOfferROIAnnualized........................................................................................314
Capítulo 26: Funciones diversas...........................................................................317dblookup..........................................................................................................................318member.............................................................................................................................319rankOrder, rankOrderApprox.........................................................................................321rankOrderMean, rankOrderApproxMean.......................................................................322rownum.............................................................................................................................323
Portrait Miner 7.110
Capítulo 27: Rangos...............................................................................................325bin.....................................................................................................................................326Boolean............................................................................................................................327DayFrom, WeekFrom, MonthFrom, YearFrom..............................................................328DayMultipleFrom, WeekMultipleFrom, MonthMultipleFrom, YearMultipleFrom........328DayMultipleNumBins,WeekMultipleNumBins,MonthMultipleNumBins,YearMultipleNumBins.329DayMultiplePrePost, WeekMultiplePrePost, MonthMultiplePrePost,YearMultiplePrePost.330DayMultipleTo, WeekMultipleTo, MonthMultipleTo, YearMultipleTo...........................331DayMultipleWidth, WeekMultipleWidth, MonthMultipleWidth, YearMultipleWidth....332DayPrePost, WeekPrePost, MonthPrePost, YearPrePost............................................333DayRange, WeekRange, MonthRange, YearRange......................................................334DayTo, WeekTo, MonthTo, YearTo..................................................................................335EqualRange......................................................................................................................336EqualRangeWidth............................................................................................................337NegativeNonNegative......................................................................................................337PreDuringPost.................................................................................................................338PrePost.............................................................................................................................339Sign...................................................................................................................................340
Capítulo 28: XML en Portrait Miner.......................................................................341XML en Portrait Miner.....................................................................................................342Especificación de metadatos para qsimportmetadata................................................342
metadata......................................................................................................................342focus.............................................................................................................................343field en metadatos........................................................................................................343fdl.................................................................................................................................344comment......................................................................................................................345history...........................................................................................................................346recordselection.............................................................................................................346numeric........................................................................................................................347date..............................................................................................................................347categorical....................................................................................................................348range............................................................................................................................349select............................................................................................................................349
Especificación de agregación para qsmeasure...........................................................349aggregations................................................................................................................349field en agregados........................................................................................................350
11Guía de referencia del comando de creación de datos y TML
Especificación de derivación para qsderive.................................................................351derivations....................................................................................................................351field en derivaciones....................................................................................................351
Especificación de selección para qsselect...................................................................352selections.....................................................................................................................352field en selecciones......................................................................................................352
Especificación de tabulación cruzada para qsxt.........................................................353crosstabset...................................................................................................................353crosstab........................................................................................................................354specification en la tabulación cruzada.........................................................................354function.........................................................................................................................355field en la tabulación cruzada......................................................................................355
Especificación de mapeo del nombre de campo para qsrenamefields.....................356mappingset...................................................................................................................356map..............................................................................................................................356
Especificación del árbol de decisión para qsdecisiontree.........................................357decisiontree..................................................................................................................357specification en el árbol de decisión............................................................................357splitconstraints.............................................................................................................358testtrain........................................................................................................................359
Especificación de creación de un cuadro de mando para qsscorecard....................359scorecard.....................................................................................................................359specification en cuadro de mando...............................................................................360
Especificaciones de creación de rangos......................................................................361binning..........................................................................................................................361numeric........................................................................................................................362date..............................................................................................................................363categorical....................................................................................................................364categories.....................................................................................................................365category.......................................................................................................................365selectn..........................................................................................................................366geographic...................................................................................................................366minendparam...............................................................................................................366maxendparam..............................................................................................................367boundaries...................................................................................................................367boundary......................................................................................................................367
valores de atributo..........................................................................................................368
Portrait Miner 7.112
Capítulo 1Introducción
En esta sección:
• Descripción general de Portrait Miner . . . . . . . . . . . . . . .14• Quién debe leer este manual . . . . . . . . . . . . . . . . . . . . . . .14
Descripción general de Portrait MinerPortrait Miner es una poderosa solución de análisis predictivo que permite que tanto los profesionalesdedicados a la percepción del cliente como los usuarios comerciales puedan formar una imagen clarade sus clientes para comprenderlos mejor, descubrir áreas de oportunidades, alcanzar una mayorsegmentación y predecir comportamientos futuros.
Portrait Customer Analytics es una solución incomparable de próxima generación, diseñada para facilitarel uso y obtener rápidas visiones ejecutables. Esta solución reduce la brecha entre las herramientasestándar de inteligencia empresarial que poseen un alcance limitado para explorar información y lassoluciones de procesamiento de datos numéricos para las cuales los programadores estadísticos debencrear consultas y modelos.
Esta solución utiliza una poderosa visualización de la información en 3D y una rápida automatizaciónde modelos para revelar importantes conexiones entre los datos y calcular tendencias con solo pulsarun botón, lo cual incrementa la precisión del modelo predictivo y aumenta la velocidad de los resultadosanalíticos.
Portrait Miner se puede utilizar para prever comportamientos y tendencias que puedan afectar lasganancias, como la fuga de clientes, las oportunidades de ventas cruzadas y ventas mejoradas, elplaneamiento y la segmentación de campañas, la satisfacción y lealtad del cliente y el valor del ciclo devida del cliente.
Quién debe leer este manualEl manual está dirigido a los usuarios de Portrait Miner que estén habituados a utilizar la línea decomandos y que deseen crear o modificar la creación de datos. Algunas secciones — en especial, elcapítulo que describe los comandos disponibles para administrar enfoques — también pueden ser deinterés para los administradores de Portrait Miner.
Este documento fue creado a modo de referencia y no es un tutorial.
Portrait Miner 7.114
Descripción general de Portrait Miner
Capítulo 2Comandos de creación dedatos de Portrait Miner
En esta sección:
• Acerca de los comandos de creación de datos de PortraitMiner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
• Opciones estándar de la línea de comandos . . . . . . . . . .21• La opción de línea de comandos -force . . . . . . . . . . . . . .24• La opción de línea de comandos -macro . . . . . . . . . . . . .25
Acerca de los comandos de creación de datos dePortrait Miner
Los comandos de creación de datos de Portrait Miner brindan funciones clave sobre la creación,administración e informes de datos de Portrait Miner, desde la línea de comandos. Si bien puedeingresar comandos individuales para realizar tareas one-off, la verdadera ventaja de utilizar los comandosde creación de datos consiste en que puede combinarlos de manera similar a las secuencias de comandosde shell en UNIX y a los archivos por lotes de Windows en el caso de creaciones de datos más complejas.
Para administrar la creación de datos que contienen varios pasos interdependientes, también puedeutilizar la herramienta Data Build Manager de Portrait Miner o su equivalente en línea de comandos,qsbuild. Con un plan de creación que exprese la secuencia necesaria de pasos, se ahorra tiempo y seminimizan los errores humanos. Si ejecuta un proceso normal de creación o implementación de datosy lo deja funcionando solo, durante la noche quizás, y algo falla (por ejemplo, se acaba el espacio enel disco), seguramente querrá solucionar el problema y continuar desde el punto en que se presentó lainterrupción y no comenzar todo el proceso nuevamente. Del mismo modo, si las operaciones necesariaspara las creaciones subsiguientes se superponen en cierta medida, convendría ahorrar tiempo deprocesamiento realizando dichas operaciones solamente una vez. Con el Data Build Manager oqsbuildserá más fácil rastrear las dependencias entre las operaciones y recordar cuáles son lasoperaciones que ya se han realizado.
Cada comando de creación de datos requiere ciertos argumentos en la línea de comandos y podríaaceptar argumentos opcionales, específicos según el comando, además de las opciones estándar[consultar Opciones estándar de la línea de comandos en la página 21]. En la sección que describecada comando hay una sinopsis del comando, que utiliza una anotación sintáctica especial:
• Los elementos que se encuentran entre paréntesis angulares no son literales. Por ejemplo, dondedice "<enfoque de origen>," debe ingresar el nombre del archivo de un enfoque preexistente.
• Los elementos que se encuentran entre corchetes son opcionales. Por ejemplo, donde dice"[-overwrite]," puede ingresar "-overwrite" o dejarlo en blanco.
• Los elementos separados por barras verticales son alternativas: debe seleccionar solamente una delas opciones. Por ejemplo, donde dice "XML | HTML | Full," puede escribir "XML," "HTML," o "Full."
• Un elemento seguido de una elipsis puede repetirse según sea necesario. Por ejemplo, donde dice<campo> [, <campo> ...], puede escribir Income (ignorando el elemento opcional),Income,Gender, Income,Gender,Age, etc.
• Las llaves {...} a veces se utilizan para delinear elementos no opcionales. (Lo que cuenta comoun elemento a los fines de alternación y repetición se extiende hasta la barra vertical, corchete o llavemás próxima.) Por ejemplo, donde dice -input <enfoque de origen> {,-input <enfoquede origen> ...}, puede escribir -input one.ftr -input two.ftr o -input one.ftr-input two.ftr -input three.ftr pero no simplemente -input one.ftr.
Hay comandos de creación de datos para importarlos y exportarlos, para procesar, unir y administrardatos en enfoques y para informar sobre enfoques y modelos.
Comandos para importar y exportar datos
Portrait Miner 7.116
Acerca de los comandos de creación de datos de Portrait Miner
ObjetivoComando
Crear, probar o eliminar una conexión de base dedatos del usuario, para acceder a una base dedatos.
qsdbaccess
Importar datos de una tabla de una base de datoso del resultado de una búsqueda en la base dedatos.
qsimportdb
Crear una tabla vacía en una base de datos segúnlos campos de un enfoque.
qsdbcreatetable
Insertar registros de un enfoque en la tabla de unabase de datos.
qsdbinsert
Actualizar los registros preexistentes en la tablade una base de datos, con datos de un enfoque.
qsdbupdate
Crear un archivo de descripción de texto planopara los datos en un archivo de texto.
qsgenfdd
Importar datos de un archivo plano.qsimportflat
Exportar datos a un archivo plano.qsexportflat
Importar datos de un archivo SAS u otro conjuntode datos de terceros.
qsimportstat
Exportar datos a un archivo SAS u otro conjuntode datos de terceros.
qsexportstat
Importar datos (sin metadatos) de un enfoqueexistente.
qsimportfocus
Comandos para procesar enfoques
ObjetivoComando
Clasificar los registros en un enfoque.qssort
Derivar los campos en un enfoque.qsderive
Agregar registros en un enfoque para producir unnuevo enfoque.
qsmeasure
Derivar los campos en un enfoque con derivacionesde rastreo de estado.
qstrack
Agregar una selección de registro a un enfoque.qsselect
Cambiar el nombre de los campos de un enfoque.qsrenamefields
Exportar metadatos desde un enfoque.qsexportmetadata
Importar metadata desde un archivo a un enfoque.qsimportmetadata
Copiar metadatos de un enfoque a otro.qsupdate
17Guía de referencia del comando de creación de datos y TML
Capítulo 2: Comandos de creación de datos de Portrait Miner
Comandos para combinar enfoques
ObjetivoComando
Unir campos de uno o más enfoques secundariosen un enfoque primario, haciendo coincidir losregistros con campos clave.
qsjoin
Combinar los registros de enfoques similares paracrear un nuevo enfoque y mantener los registrosclasificados por campo clave.
qsmerge
Comandos para administrar enfoques
ObjetivoComando
Copiar un enfoque para crear uno nuevo eindependiente.
qscopy
Copiar un enfoque compartiendo los datossubyacentes.
qslink
Mover o cambiar el nombre de un enfoque.qsmove
Eliminar los enfoques.qsremove
Crear un archivo de archivo s a partir de enfoqueso carpetas.
qsarchive
Extraer de un archivo de archivos.qsunzip
Comandos para elaborar informes
ObjetivoComando
Establecer opciones comunes de formato paradistintos informes.
qssettings
Generar un Perfil y Auditoría de un enfoque.qsaudit
Mostrar información resumida sobre un enfoque.qsdescribe
Mostrar información resumida sobre un archivoSAS u otro conjunto de datos de terceros.
qsdescribestat
Descomprimir un archivo HTML o XML generadopor qsaudit, qsdtsnapshot, o qsscsnapshot.
qshtmlunpack
Generar una foto modelo de un árbol de decisión.qsdtsnapshot
Generar una foto modelo de un cuadro de mando.qsscsnapshot
Aplicar una especificación de tabulación cruzadaa un enfoque para producir una nueva tabulacióncruzada.
qsxt
Portrait Miner 7.118
Acerca de los comandos de creación de datos de Portrait Miner
ObjetivoComando
Mostrar información de los archivos queconstituyen un enfoque y su relación con otrosenfoques.
qsinfo
Mostrar información sobre una licencia de PortraitMiner.
qsdescribelicense
Comandos para construir modelos
ObjetivoComando
Aplicar una especificación de árbol de decisionesa un enfoque para producir un informe del nuevomodelo de árbol de decisión.
qsdecisiontree
Aplicar una especificación de un cuadro de mandoa un enfoque para producir un informe del nuevomodelo de cuadro de mando.
qsscorecard
Crear un cuadro de mando en un enfoqueespecífico utilizando un archivo de parámetros.
qsscorecardwizard
Comandos para trabajar con archivos QMML
ObjetivoComando
Mostrar el contenido de un archivo de reglasQMML.
qsqmmlview
Modificar un archivo de reglas QMML.qsqmmledit
Transformar un archivo FDL, QMML o XMLgenérico en un formato distinto.
qslt
Convertir un archivo QMML en un archivo SAS.qsqmml2sas
Convertir un archivo QMML en un archivo SQL.qsqmml2sql
Convertir las derivaciones de un archivo demetadatos en un archivo SAS.
qsqsfmtosas
Otros comandos
ObjetivoComando
Ejecutar un plan de creación.qsbuild
Crear un conjunto de mapas de Decision Studio apartir de la creación de rangos de uno o másarchivos divididos por categorías jerárquicas.
qsmapgen
19Guía de referencia del comando de creación de datos y TML
Capítulo 2: Comandos de creación de datos de Portrait Miner
Dado el potencial de interdependencia de los enfoques, no debe intentar copiar,mover, cambiar el nombre o eliminar los enfoques con utilidades estándares delsistema operativo. En cambio, siempre debe utilizar los comandos enumeradosanteriormente (o el Portrait Miner para administrar los enfoques.
Generalmente, los comandos de creación de datos que generan archivos sobrescribencualquier archivo preexistente con el mismo nombre. Tenga precaución de nosobrescribir enfoques que dependan de otros o que tengan enfoques a su cargo, yaque podría inutilizar esos otros enfoques.
Nota: • Para utilizar los comandos de creación de datos, debe tener acceso de línea de comandos aPortrait Miner. Consulte la Guía de administración de Portrait Miner para obtener informaciónacerca de la configuración de la ruta de comandos para utilizar comandos de creación de datos(o pídaselo al administrador de Portrait Miner).
• Los shells de comandos por lo general requieren que los argumentos de la línea de comandosque contienen ciertos caracteres estén entre comillas, en especial los espacios y la puntuaciónespecial (como comillas simples y dobles, "<," ">," "*," "=," y "#").
Algunas opciones llevan argumentos que son listas de valores separados por comas, porejemplo, la opción -fields en varios comandos. Ese tipo de listas es en realidad un únicoargumento de línea de comandos, así es que deberá escribirla entre comillas o bien deberáasegurarse de que no haya espacios luego de las comas (ni en ningún otro lugar de la lista).
• Cuando utiliza la opción -verbose o -logfile [consultar Opciones estándar de la líneade comandos en la página 21], el resultado del comando de creación de datos (en pantallao en el archivo de registro, según la opción que se utilice) incluye una línea similar a la siguiente:11:55:21:
{P1/4/4Hm4096Pd2047Pi63Pw27Jm64Um-1Fs991Fh1784Fc0Fp0}
La críptica cadena de caracteres codifica información sobre los recursos de la memoria y elprocesador que utiliza el comando; si tiene problemas de rendimiento con los comandos decreación de datos, esta información puede ayudar para que el soporte técnico de PortraitMiner resuelva su problema.
• Los comandos de creación de datos qssort, qsjoin y qsmerge muestran o registran los mensajescon datos específicos cuando utiliza la opción -verbose o -logfile . Así podrá comprendermás fácilmente de qué manera ha actuado el comando sobre sus datos.
• El estado de salida que devuelve cada comando es cero si lo hace correctamente, o un valordistinto de cero si falla. Cuando un comando falla, siempre genera un mensaje de error con elsiguiente formato:*** Error: <message>
Los mensajes de error aparecen en errores estándar y también en los archivos de registro sise utiliza la opción -logfile [consultar Opciones estándar de la línea de comandos en lapágina 21]. Los comandos además pueden generar mensajes de advertencia con el siguienteformato:*** Warning: <message>
Portrait Miner 7.120
Acerca de los comandos de creación de datos de Portrait Miner
Los mensajes de advertencia aparecen en los errores estándar o bien en los archivos deregistro (pero no en ambos).
• Si un comando falla porque el enfoque es de sólo lectura, con qslink o qscopy copie elenfoque de sólo lectura en una nueva ubicación y ejecute el comando nuevamente.
• Cuando se crean UDC se utiliza el comando qsdbaccess con el argumento -add. Dado quele solicita información, no corresponde utilizar esta forma del comando en una secuencia deshell o archivo por lote.
• De manera predeterminada, los comandos de creación de datos que leen enfoques utilizan elsubenfoque predeterminado, si existe, y de no ser así, utilizan el enfoque superior ("raíz").Puede anular este comportamiento para un comando determinado utilizando la opción común-subfocus.
• Muchos de los comandos de creación de datos utilizan las opciones -field , -xfield , -tagy -xtag para especificar listas de campos. Los campos se pueden especificar concombinaciones de -field y -xfield o -tag y -xtag pero las opciones de campo y lasopciones de etiqueta no pueden utilizarse combinadas.
Opciones estándar de la línea de comandosOpciones independientes: Utilice una de las siguientes opciones en lugar de los argumentos normalesde los comandos de creación de datos:
EfectoOpción
Muestra texto en uso, incluso un resumen de todaslas opciones válidas de la línea de comandos quesean distintas de las opciones estándar.
-help
Muestra el texto en uso incluso un resumen detodas las opciones válidas de la línea decomandos.
-helpall
Muestra la versión de Portrait Miner y lainformación de la licencia asociada.
-version
Otras opciones comunes a todos los comandos
EfectoOpción
Utilice el archivo de preferencias especificado(consultar Administración de Portrait Miner).
Las configuraciones de este archivo anulanaquellas presentes en los archivos de preferencias
-config <archivo de preferencias>
estándar del sistema y específicos según elusuario.
21Guía de referencia del comando de creación de datos y TML
Capítulo 2: Comandos de creación de datos de Portrait Miner
EfectoOpción
Una vez completado el comando, envíe un mensajede correo electrónico al destinatario especificado
en las preferencias de Correo electrónicoemailaddress (consulte la Guía deAdministración de Portrait Miner).
El mensaje de correo electrónico incluye unresumen de estado en formato HTML, como el quegenera la opción-statusfile .
En el archivo especificado, escriba informacióndetallada del avance con los tiempos de
-logfile <archivo de registro>
funcionamiento y demás información específicasegún el comando acerca de la ejecución, inclusivetodos los mensajes de error o advertencia ysobrescriba todo archivo preexistente con esenombre. Continúe mostrando los mensajes de erroren salida estándar. Esta opción implica la opción-verbose .
Usar como máximo la cantidad de memoriaespecificada. El comando intentará mantenerse
-memory <número de megabytes>
dentro del límite de ser posible, pero nunca loexcederá. En los casos en que un comandorequiere más memoria que la cantidad máxima, seproduce un error. Esta opción anula laconfiguración de la preferencia límite blandode la memoria del enfoque (consulte laGuíade Administración de Portrait Miner).
Utiliza la cantidad especificada de procesadores(si están disponibles) para las operaciones que
-parallel <número de procesadores>
pueden utilizar más de un procesador. Esta opciónanula la configuración de la preferenciaParalelismo (consulte laGuía de Administraciónde Portrait Miner).
Muestra información simple sobre el avance, comouna línea de caracteres . y + .
-progress
Utiliza la configuración del archivo especificadopara controlar el formato numérico y de fechas en
-settings <archivo de configuraciones>
un informe generado. Esta opción tiene efectosolamente en los comandos de generación deinformes, es decir qsaudit, qsdtsnapshot yqsscsnapshot.
En el directorio de configuración específica segúnel usuario de una PC con cliente Portrait Miner,
Portrait Miner 7.122
Opciones estándar de la línea de comandos
EfectoOpción
Decision Studio crea un archivo llamadosettings.xml cuando realiza cambios sobre lasconfiguraciones con Editar->Ver Preferencias.Puede copiar este archivo al servidor para utilizarlocon la opción -settings. O puede crear unarchivo de configuraciones en el servidor utilizandoel comando qssettings.
De manera predeterminada, el formato de la fechaes europeo, la cantidad de posiciones decimaleses 2, los ceros posteriores no se quitan, no seutilizan separadores locales de miles y el formatode la hora es de 24 horas.
Produce un resumen de comandos y de estadocon formato HTML en el archivo de estado.
Si utiliza la opción -email, el mensaje de correoelectrónico sobre el estado incluye un resumensimilar.
-statusfile <archivo de estado>
Muestra información detallada sobre el avancecompleto, con tiempos de funcionamiento y demás
-verbose
información específica según el comando acercade la ejecución.
Esta opción anula la opción -progress.
Nota: • Si especifica el uso de más de un procesador, con la opción -parallel o con la preferenciacorrespondiente, la memoria disponible, especificada usando la opción -memory o lapreferencia correspondiente, se comparte entre los procesadores.
• La información específica según el comando acerca de la ejecución puede incluir, por ejemplo:la cantidad de registros de entrada, salida o coincidencia; información sobre conversiones debase de datos y tipo de datos; o códigos de diagnóstico interesantes para el Soporte técnicode Portrait Miner .
Ejemplos
Mostrar el texto de ayuda de qsremove:qsremove -help
Dado el archivo de preferencias audit.ini que contiene lo siguiente:[Audits and Snapshots]imageheight = 200barcolor = #FF0000
Utilice estas preferencias para crear un perfil y auditoría con imágenes de 200 píxeles de altura y barrasrojas:qsaudit -config audit.ini -input RetailCustApril.ftr
23Guía de referencia del comando de creación de datos y TML
Capítulo 2: Comandos de creación de datos de Portrait Miner
Utilice 512 megabytes de memoria para crear un nuevo enfoque RetailTransAprilSorted.ftrclasificando el enfoque RetailTransApril.ftr:qssort -memory 512 -output RetailTransAprilSorted.ftr-input RetailTransApril.ftr -keys CustomerID
Utilice cuatro procesadores (y la configuración predeterminada de memoria) para crear un nuevo enfoqueRetailTransMaySorted.ftr clasificando el enfoque RetailTransMay.ftr:qssort -parallel 4 -output RetailTransMaySorted.ftr-input RetailTransMay.ftr -keys CustomerID
La opción de línea de comandos -forceEsta opción se aplica a los comandos que crean enfoques, a saber:
qscopy, qsderive, qsimportdb, qsimportflat, qsimportfocus, qsimportmetadata,qsimportstat, qsjoin, qslink, qsmeasure, qsmerge, qsrenamefields, qsselect,qssort, qstrack, qsupdate, qsscorecard y qsdecisiontree.
EfectoOpción
Permitir un nuevo enfoque especificado utilizandola opción -output o -to para sobrescribir unenfoque existente.
Sin la opción -force, si el enfoque especificadopor -output o -to ya existe, el comando no hacenada (excepto emitir una advertencia).
-force
Nota: • La opción -force solo se debe utilizar cuando sea absolutamente necesario, y se debeasegurar de que ya no requiere ni el enfoque que está sobrescribiendo ni ningún otro enfoqueque esté enlazado a este [consulte qsinfo en la página 113]. En la mayoría de los casos, seríamejor apartar el enfoque original utilizando qsmove antes de utilizar un comando de creaciónde datos para crear un enfoque nuevo.
• La opción -force solo tiene un efecto en enfoques de salida especificados de modo explícito.Si está utilizando un comando de creación de datos para modificar un enfoque existente demodo implícito, no es necesario utilizar -force.
Ejemplos Crear un nuevo enfoque RetailTransAprilSorted.ftr y sobrescribir cualquier enfoqueexistente con el mismo nombre, que contenga todos los registros del enfoque RetailTransApril.ftrordenados según el campo CustomerID:qssort -force -output RetailTransAprilSorted.ftr-input RetailTransApril.ftr -keys CustomerID
Portrait Miner 7.124
La opción de línea de comandos -force
La opción de línea de comandos -macroEsta opción se aplica a los comandos:
qsderive, qsmeasure, qstrack y qsselect
ObjetivoComando
Antes de analizar un archivo de entrada TML oXML correspondiente, reemplazar todas lasinstancias de $<nombre> con el valor dado.
Puede utilizar esta opción repetidamente sobre lamisma línea de comandos para especificarexpansiones para macros múltiples.
-macro <nombre>=<valor>
Realizar sustitución de macro en archivos deentrada TML y XML correspondientes mediante la
-macro @<archivo de macros>
lectura de los pares <nombre>=<valor> de líneassucesivas del archivo de macros.
El archivo de macros también puede estar enformato XML.
Nota: • Los nombres para macros deben comenzar con una letra e incluir solo letras, dígitos y guiónbajo ("_").
• Data Build Manager proporciona soporte similar, pero independiente, para macros.
Ejemplos
Dado el archivo de selecciones, selections-macro.tml, que contiene lo siguiente:create ${monthName}Trans${year} :=month(PurchaseDate) = ${month} and year(PurchaseDate) = ${year};
Utilizar sustituciones de macros para seleccionar registros para abril de 1999 del enfoqueRetailTransApril.ftr:qsselect -macro monthName=April -macro year=1999 -macro month=4-selections selections-macro.tml-input RetailTransApril.ftr -outputRetailTransAprilSelection1.ftr
O, como alternativa, dado el archivo de macros, macros.tml, que contiene lo siguiente:monthName=Aprilyear=1999month=4
Aplicar estos macros para lograr el mismo resultado:qsselect -macro @macros.tml -selections selections-macro.tml-input RetailTransApril.ftr -outputRetailTransAprilSelection2.ftr
25Guía de referencia del comando de creación de datos y TML
Capítulo 2: Comandos de creación de datos de Portrait Miner
También consulteXML en Portrait Miner en la página 342
Portrait Miner 7.126
La opción de línea de comandos -macro
Capítulo 3Administrar el comando decreación de datos PortraitMiner
En esta sección:
• qsbuild . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28
qsbuildSinopsis qsbuild
[-input <plan de creación de datos>]
[-targets <objetivo> [, <objetivo> ...]
[-skip <objetivo> [, <objetivo> ...]
[-D<nombre>=<valor>]
[-propertyfile <archivo de propiedades>] [-describe] [-dryrun]
[-validate full | -validate warn | -validate none]
[-schema <nombre de esquema>]
[-lib <ruta de clase>]
[-preprocess] [-warn]
Descripción: ejecutar el plan de creación de datos qsbuild.qsb en el directorio actual (a menos quese especifique un plan distinto de creación de datos con la opción -input).
Argumentos opcionales
EfectoOpción
Asignar el valor determinado u otra propiedad alparámetro mencionado. (Observe que no hayespacio luego de la -D.)
-D<nombre>=<valor>
En lugar de ejecutar el plan de creación de datos,descríbalo, enumerando los objetivos principalesy sus descripciones.
-describe
Ejecutar el plan de creación de datos como lo hacenormalmente, pero muestre los comandos de
-dryrun
creación de datos en lugar de ejecutarlos. (Todatarea que no sea un comando de creación de datosse ejecuta normalmente).
Utilice el plan de creación de datos especificado,en lugar del archivo qsbuild.qsb en el directorioactual.
-input <plan de creación de datos>
Utilice la ruta de clase especificada como ruta debúsqueda adicional para las clases de Java.
-lib <ruta de clase>
Valide el plan de creación de datos y genere unarchivo intermedio de creación.
-preprocess
Asignar valores a los parámetros o a otraspropiedades mediante la lectura de los pares
-propertyfile <archivo de propiedades>
Portrait Miner 7.128
qsbuild
EfectoOpción
<nombre>=<valor> de líneas sucesivas delarchivo de propiedades.
Valide el plan de creación de datos de acuerdo conel esquema especificado (con sintaxis RELAX NG)
-schema <archivo de esquema>
en lugar del esquema al que se hace referenciaen el plan de creación de datos. Puede utilizar unURI para especificar la ubicación de un archivo deesquema que no es local.
No cree los objetivos especificados, aunque otrosobjetivos dependan de ellos.
-skip <objetivo> [, <objetivo> ...]
Cree los objetivos especificados en lugar delobjetivo predeterminado.
-targets <objetivo> [, <objetivo> ...]
Valide el plan de creación de datos según suesquema y ejecute el plan sólo si es válido
-validate fail
(predeterminado si no especifica una opción-validate).
No valide el plan de creación de datos según suesquema.
-validate none
Valide el plan de creación de datos según suesquema; si hay errores emita advertencias, perointente ejecutar el plan sin importar su validez.
-validate warn
En lugar de abortar un plan de creación de datoscuando no se puede crear el objetivo, emita una
-warn
advertencia e intente crear otros objetivos que nodependan del objetivo que presenta errores.
Además de estas opciones de la línea de comandos, qsbuild acepta las opciones comunes a todoslos comandos de creación de datos [consultar Opciones estándar de la línea de comandos en lapágina 21].
Nota: • El plan de creación de datos describe de qué manera crear un conjunto de datos para analizaro implementar un modelo. Contiene una cantidad de "objetivos" dependientes entre sí y lassecuencias de las operaciones necesarias para crear los objetivos. El archivo utiliza un formatocon base XML. Para obtener más información sobre Data Build Manager y los formatos delos planes de preparación de datos, consulte Uso de Data Build Manager.
• Además puede acceder a la mayoría de las funciones de qsbuild a través de Data BuildManager , disponible a través de Portrait Miner.
Ejemplos Ejecute una creación de datos con el plan de creación de datos qsbuild-starter.qsb:qsbuild -input qsbuild-starter.qsb
Utilice la tarea Limpiar solamente dentro del plan de creación de datos qsbuild.qsb:qsbuild -targets Clean -input qsbuild.qsb
29Guía de referencia del comando de creación de datos y TML
Capítulo 3: Administrar el comando de creación de datos Portrait Miner
Ejecute el plan de creación de datos qsbuild.qsb con el parámetro Month establecido en June:qsbuild -DMonth=June -input qsbuild.qsb
También consulteXML en Portrait Miner en la página 342
Portrait Miner 7.130
qsbuild
Capítulo 4Comandos para importar yexportar datos
En esta sección:
• qsdbaccess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32• qsimportdb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33• qsdbcreatetable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35• qsdbinsert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37• qsdbupdate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38• qsgenfdd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40• qsimportflat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42• qsexportflat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44• qsimportstat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .48• qsexportstat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .50• qsimportfocus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52• Cómo Portrait Miner importa los tipos de base de datos .54• Formatos de fecha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55
qsdbaccessSinopsis qsdbaccess {,-add
| -list
| -test <UDC>
| -delete <UDC>,}[-system]
Descripción: Crear interactivamente una UDC (conexión de base de datos del usuario), hacer una lista,probar o eliminar una UDC.
Cuando utiliza -add, qsdbaccess le solicita que ingrese un DSN, nombre de usuario, y una contraseña.
Los UDC se utilizan en comandos de creación de datos relacionados con bases de datos y en otraspartes de Portrait Miner para conectarse con bases de datos. Consultar la Guía de Administración dePortrait Miner para obtener más información.
Argumentos opcionales
EfectoOpción
Aplicar la operación (agregar, enumerar, probar oeliminar) a las UDC del sistema en lugar de hacerlocon sus UDC personales.
Cuando utiliza -add con -system, qsdbaccessademás le solicita una URL, una clase y un DRL.
-system
Por lo general deberá aceptar las opcionespredeterminadas de estas características.
La opción -system sólo debe ser utilizada por losadministradores del sistema.
Además de esta opción de la línea de comandos, qsdbaccess acepta las opciones comunes a todoslos comandos de creación de datos [consultar Opciones estándar de la línea de comandos en lapágina 21].
Nota: • Un UDC está cifrado: si contiene detalles para la identificación del usuario, sólo usted puedeutilizarlos para acceder a la base de datos en cuestión.
• Cuando crea un UDC, qsdbaccess sobrescribe cualquier UDC preexistente con el mismonombre (y por lo tanto sobrescribe los detalles asociados para la identificación del usuario).
• El nombre del UDS es sensible al uso de mayúsculas (fred y Fred son distintos), inclusivesi el DSN no es sensible al uso de mayúsculas del controlador ODBC.
• Con Portrait Miner, podrá acceder a las funciones de qsdbaccess a través del cuadro dediálogo Editar la conexión de la base de datos. .
Ejemplos: crear un UDC para el usuario user para acceder al DSN de la base de datos retail:qsdbaccess Please enter required text at the ">" prompt:DSN> retail
Portrait Miner 7.132
qsdbaccess
User> userPassword>Updating connection user@retailUpdate OKTesting connection user@retailODBC OKJDBC OKConnection OK
Crear un UDC de sistema (como usuario administrador) para que cualquier usuario pueda acceder a labase de datos DSN retaila:qsdbaccess -system Please enter required text at the ">" prompt:DSN> retailUser>[Just pressing ENTER will use the system default]URL>Class>DRL>Updating connection dbuser@dbserver:dbUpdate OK
También consulte
qsdbcreatetable en la página 35
qsdbinsert en la página 37
qsdbupdate en la página 38
qsimportdb en la página 33
qsimportdbSinopsis qsimportdb -udc <UDC>
-table <tabla de base de datos o vista>
-fields <columna>> [, <columna> ...] | -fields @<archivo de campos>]
-xfields <columna> [, <columna> ...] | -xfields @<archivo de campos>] [-catalog<nombre de catálogo>] [-schema <nombre de esquema>]-output <enfoque de destino>[-force] qsimportdb -udc <UDC>
-sql <archivo SQL>
-output <enfoque de destino> [-force]
Descripción: Crear el enfoque de destino de la tabla de base de datos o vista especificada, que estáen la base de datos con la UDC proporcionada [consulte qsdbaccess en la página 32].
Alternativamente, crear el enfoque del resultado de una instrucción SQL SELECT (proporcionada en unarchivo SQL).
Argumentos opcionales
33Guía de referencia del comando de creación de datos y TML
Capítulo 4: Comandos para importar y exportar datos
EfectoOpción
Ubicar la tabla en este catálogo de base de datos.-catalog <nombre de catálogo>
Crear campos en el enfoque de destino quecorrespondan únicamente a las columnasespecificadas en la tabla.
-fields <columna> [, <columna> ...]
Crear campos en el enfoque de destino quecorrespondan únicamente a las columnas en la
-fields @<archivo de campos>
tabla que se enumeran (una por línea) en el archivode campos.
Consulte la La opción de línea de comandos-force en la página 24.
-force
Ubicar la tabla en este esquema de base de datos.-schema <nombre de esquema>
Crear campos en el enfoque de destino quecorrespondan a todas las columnas en la tablaexcepto las columnas especificadas.
-xfields <columna> [, <columna> ...]
Crear campos en el enfoque de destino quecorrespondan a todas las columnas en la tabla
-xfields @<archivo de campos>
excepto las columnas que se enumeran (una porlínea) en el archivo de campos.
Además de estas opciones de línea de comandos, qsimportdb acepta las opciones comunes a todoslos comandos de creación de datos [consulte Opciones estándar de la línea de comandos en lapágina 21].
Nota: • Si se especifica un identificador (por ejemplo, un nombre de tabla o campo) como un argumentode línea de comandos, qsimportdb lo pasa al controlador ODBC entre comillas, y su basede datos su base de datos puede tratar al identificador con diferenciación entre minúsculas ymayúsculas.
• El SQL especificado con la opción -sql se pasa tal cual a la base de datos como unainstrucción única; no se requiere un punto y coma de terminación (y puede ser una sintaxisinválida para algunos sistemas de base de datos).
• Al utilizar qsimportdb, es posible crear un enfoque que no tenga nombres de campocompatibles con Portrait Miner. Para convertir el enfoque a una forma que se pueda utilizaren Decision Studio o con otros comandos de creación de datos, se le puede cambiar el nombrea los campos mediante qsrenamefields.
• Al utilizar Portrait Miner, puede acceder a la mayor parte de la funcionalidad de consulta debase de datos de qsimportdb mediante el cuadro de diálogo Importar desde la consulta.
Ejemplos Crear un enfoque RetailCustApril.ftr que contenga todos los registros de la tablaRetailCustApril, en el DSN al que se refiere la UDC user@retail:qsimportdb -table RetailCustApril-udc user@retail -output RetailCustApril.ftr
Portrait Miner 7.134
qsimportdb
Crear un enfoque RetailTransAprilCA.ftr, que contenga solo registros de la tablaRetailCustApril para la que el valor de la columna PaymentMethod equivale a CA:
Dado el archivo de consulta SQL,select-statement.sql, que contiene lo siguiente:select *from RetailTransAprilwhere (PaymentMethod = 'CA')
Aplicar esta consulta para crear un nuevo enfoque, RetailTransAprilCA.ftr:qsimportdb -sql select-statement.sql-udc user@retail -output RetailTransAprilCA.ftr
También consulte
qsdbcreatetable en la página 35
qsdbinsert en la página 37
qsdbupdate en la página 38
qsdbcreatetableSinopsis qsdbcreatetable -udc < UDC >
-focus <enfoque de plantilla> [-subfocus <subenfoque>]
-table <tabla de destino>
-fields <campo> [, <campo> ...] | -fields @<archivo de campos> | -tags<etiqueta> [, <etiqueta> ...]]
-xfields <campo> [, <campo> ...] | -xfields @<archivo de campos> | -xtags<etiqueta> [, <etiqueta> ...]]
[-catalog <nombre de catálogo>]
[-schema <nombre de esquema>]
[-output <archivo de salida SQL>]
qsdbcreatetable -udc <UDC>
-sql <archivo SQL>
Descripción: con el enfoque de plantilla actual defina los nombres y tipos de campo para crear unanueva tabla de base de datos vacía con el nombre de tabla dado, en la base de datos con el UDCdeterminado [consultar qsdbaccess en la página 32].
Alternativamente, crear una nueva tabla con una instrucción SQL CREATE TABLE (proporcionada enun archivo SQL).
Argumentos opcionales
35Guía de referencia del comando de creación de datos y TML
Capítulo 4: Comandos para importar y exportar datos
EfectoOpción
Crear la tabla en este catálogo de base de datos.-catalog <nombre de catálogo>
Crear columnas de la tabla que correspondanúnicamente a los campos especificados en elenfoque.
-fields <campo> [, <campo> ...]
Crear columnas de la tabla que correspondanúnicamente a los campos en el enfoque que seenumeran (uno por línea) en el archivo de campos.
-fields @<archivo de campos>
En lugar de crear una tabla en la base de datos,crear un archivo de salida SQL que contenga lainstrucción CREATE TABLE adecuada.
Luego puede utilizar el archivo SQL como entradaen qsdbcreatetable (con la opción -sql).
[-output <archivo de salida SQL>]
Crear la tabla en este esquema de base de datos.-schema <nombre de esquema>
Utilizar el subenfoque especificado del enfoque deplantilla.
-subfocus <subenfoque>
Crear columnas de la tabla que correspondanúnicamente a los campos en el enfoque que tienenlas etiquetas especificadas.
-tags <etiqueta> [, <etiqueta> ...]
Crear columnas de la tabla que correspondan atodos los campos en el enfoque excepto loscampos especificados.
-xfields <campo> [, <campo> ...]
Crear columnas de la tabla que correspondan atodos los campos en el enfoque excepto los
-xfields @<archivo de campos>
campos que se enumeran (uno por línea) en elarchivo de campos.
Crear columnas de la tabla que correspondan atodos los campos en el enfoque excepto loscampos que tienen las etiquetas especificadas.
-xtags <etiqueta> [, <etiqueta> ...]
Además de estas opciones de línea de comandos, qsdbcreatetable acepta las opciones comunesa todos los comandos de creación de datos [consulte Opciones estándar de la línea de comandosen la página 21].
Nota: • Si se especifica un identificador (por ejemplo, un nombre de tabla o campo) como un argumentode línea de comandos, qsdbcreatetable lo pasa al controlador ODBC entre comillas, y subase de datos puede tratar al identificador con diferenciación entre minúsculas y mayúsculas.
• El SQL especificado con la opción -sql se pasa tal cual a la base de datos como unainstrucción única; no se requiere un punto y coma de terminación (y puede ser una sintaxisinválida para algunos sistemas de base de datos).
Ejemplo
Portrait Miner 7.136
qsdbcreatetable
Crear una tabla de base de datos vacía, RETAILAGGREGATIONS, desde el enfoqueRetailAggregationsApril.ftr, con conexión a través de la UDC retail:qsdbcreatetable -focus RetailAggregationsApril.ftr-table RETAILAGGREGATIONS -udc user@retail
También consulte
qsdbinsert en la página 37
qsdbupdate en la página 38
qsimportdb en la página 33
qsdbinsertSinopsis qsdbinsert-udc <UDC>
-input <enfoque de origen> [-subfocus <subenfoque>]
-table <tabla de destino>
-fields <campo> [, <campo> ...] | -fields @<archivo de campos> | -tags<etiqueta> [, <etiqueta> ...]]
-xfields <campo> [, <campo> ...] | -xfields @<archivo de campos> | -xtags<etiqueta> [, <etiqueta> ...]]
[-catalog <nombre de catálogo>]
[-schema <nombre de esquema>]
Descripción: insertar los registros del enfoque de origen en la tabla de base de datos (con una instrucciónSQL INSERT). Ubicar la tabla en la base de datos con la UDC proporcionada [consulte qsdbaccessen la página 32].
Argumentos opcionales
EfectoOpción
Ubicar la tabla en este catálogo de base de datos.-catalog <nombre de catálogo>
Insertar datos únicamente de los camposespecificados en el enfoque.
-fields <campo> [, <campo> ...]
Insertar datos únicamente de los campos en elenfoque que están enumerados (uno por línea) enel archivo de campos.
-fields @<archivo de campos>
Ubicar la tabla en este esquema de base de datos.-schema <nombre de esquema>
Usar el subenfoque especificado del enfoque deorigen.
-subfocus <subenfoque>
37Guía de referencia del comando de creación de datos y TML
Capítulo 4: Comandos para importar y exportar datos
EfectoOpción
Insertar datos únicamente de los campos en elenfoque que tienen las etiquetas especificadas.
-tags <etiqueta> [, <etiqueta> ...]
Insertar datos de todos los campos en el enfoqueexcepto los campos especificados.
-xfields <campo> [, <campo> ...]
Insertar datos de todos los campos en el enfoqueexcepto los campos que se enumeran (uno porlínea) en el archivo de campos.
-xfields @<archivo de campos>
Insertar datos de todos los campos en el enfoqueexcepto los campos que tienen las etiquetasespecificadas.
-xtags <etiqueta> [, <etiqueta> ...]
Además de estas opciones de línea de comandos, qsdbinsert acepta las opciones comunes a todoslos comandos de creación de datos [consulte Opciones estándar de la línea de comandos en lapágina 21].
Nota: • Para crear una tabla vacía en la que se puedan insertar registros, utilice qsdbcreatetable.• El comando qsdbinsert inserta registros adicionales en una tabla de base de datos en lugar
de actualizar registros existentes. No verifica registros duplicados (o registros con teclasduplicadas), aunque su base de datos se puede configurar para cumplir con esa verificación.
• Los campos en el enfoque (o aquellos especificados mediante las opciones -fields o-xfields) deben coincidir con el nombre y ser de tipo compatible con las columnas en latabla de base de datos.
• Si se especifica un identificador (por ejemplo, un nombre de tabla o campo) como un argumentode línea de comandos, qsdbinsert lo pasa al controlador ODBC entre comillas, y su basede datos puede tratar al identificador con diferenciación entre minúsculas y mayúsculas.
Ejemplo
Insertar datos del enfoque RetailAggregationsApril.ftr en la tabla de base de datosRETAILAGGREGATIONS:qsdbinsert -input RetailAggregationsApril.ftr-table RETAILAGGREGATIONS -udc user@retail
También consulteqsdbupdate en la página 38
qsdbupdateSinopsis qsdbupdate -udc <UDC>
-input <enfoque de origen> [-subfocus <subenfoque>]
-table <tabla de destino>
Portrait Miner 7.138
qsdbupdate
{-keys <campo clave> [, <campo clave>] [, <campo clave>] | -key @<archivoclave>}
-fields <campo> [, <campo> ...] | -fields @<archivo de campos> | -tags<etiqueta> [, <etiqueta> ...]]
-xfields <campo> [, <campo> ...] | -xfields @<archivo de campos> | -xtags<etiqueta> [, <etiqueta> ...]]
[-catalog <nombre de catálogo>]
[-schema <nombre de esquema>]
Descripción: actualizar los registros en la tabla de base de datos con datos de los campos especificadosen el enfoque de origen (con una instrucción SQL UPDATE). Cada registro en el enfoque actualiza todoslos registros con los mismos valores de campo clave en la tabla de base de datos. Ubicar la tabla en labase de datos con la UDC proporcionada [consulte qsdbaccess en la página 32].
Argumentos opcionales
EfectoOpción
Ubicar la tabla en este catálogo de base de datos.-catalog <nombre de catálogo>
Actualizar la tabla únicamente con datos de loscampos especificados en el enfoque.
-fields <campo> [, <campo> ...]
Actualizar la tabla únicamente con datos de loscampos en el enfoque que están enumerados (unopor línea) en el archivo de campos.
-fields @<archivo de campos>
Ubicar la tabla en este esquema de base de datos.-schema <nombre de esquema>
Usar el subenfoque especificado del enfoque deorigen.
-subfocus <subenfoque>
Actualizar la tabla únicamente con los datos de loscampos en el enfoque que tienen las etiquetasespecificadas.
-tags <etiqueta> [, <etiqueta> ...]
Actualizar la tabla con los datos de todos loscampos en el enfoque excepto los camposespecificados.
-xfields <campo> [, <campo> ...]
Actualizar la tabla con los datos de todos loscampos en el enfoque excepto los campos que seenumeran (uno por línea) en el archivo de campos.
-xfields @<archivo de campos>
Actualizar la tabla con los datos de todos loscampos en el enfoque excepto los campos quetienen las etiquetas especificadas.
-xtags <etiqueta> [, <etiqueta> ...]
Además de estas opciones de línea de comandos, qsdbupdate acepta las opciones comunes a todoslos comandos de creación de datos [consulte Opciones estándar de la línea de comandos en lapágina 21].
39Guía de referencia del comando de creación de datos y TML
Capítulo 4: Comandos para importar y exportar datos
Nota: • El comando qsdbupdate no inserta ningún registro adicional en una tabla de base de datos.• Los campos en el enfoque (o aquellos especificados mediante las opciones -fields o-xfields) deben coincidir con el nombre y ser de tipo compatible con las columnas en latabla de base de datos. Sin embargo, no se tienen que actualizar los valores en todas lascolumnas de la tabla.
• Si se especifica un identificador (por ejemplo, un nombre de tabla o campo) como un argumentode línea de comandos, qsdbupdate lo pasa al controlador ODBC entre comillas, y su basede datos puede tratar al identificador con diferenciación entre minúsculas y mayúsculas.
Ejemplo
Actualizar únicamente los campos numberPurchases, averagePurchase y totalPointsRedeemeden la tabla RETAILAGGREGATIONS con el enfoque RetailAggregationsMay.ftr:qsdbupdate -udc user@retail -keys CustomerID-input RetailAggregationsMay.ftr -table RETAILAGGREGATIONS-fields "numberPurchases, averagePurchase,totalPointsRedeemed"
También consulte
qsdbcreatetable en la página 35
qsdbinsert en la página 37
qsgenfddSinopsis qsgenfdd -input <archivo plano>
[-template <archivo FDD de plantilla>]
[-headers]
[-separator <separador de campo>]
[-null <marcador nulo>]
[-stringmarker <marcador de secuencia>]
[-datemarker <marcador de fecha>]
[-dateformat <formato de fecha>] [-defaultday <número de día>] [-defaultmonth<número de mes>] [-comment <comentario de tabla>]
Descripción: crear un archivo de descripción de datos planos (archivo .fdd) para el archivo plano alexaminar una muestra de los registros para definir el formato del archivo. Nombrar el archivo dedescripción de datos planos mediante el nombre de base del archivo plano y crearlo en el mismodirectorio en el que se encuentra el archivo plano.
Argumentos opcionales
Portrait Miner 7.140
qsgenfdd
EfectoOpción
Incluir este comentario de tabla en el archivo dedescripción de datos planos.
-comment <comentario de tabla>
Anular el formato de fecha seleccionadoautomáticamente [consulte Formatos de fecha enla página 55].
-dateformat <formato de fecha>
Anular el carácter del marcador de fechaseleccionado automáticamente.
-datemarker <marcador de fecha>
Incluir este número de día en fechas que no tenganun componente de día.
-defaultday <número de día>
Incluir este número de mes en fechas que notengan un componente de mes.
-defaultmonth <número de mes>
Incluir una descripción de los datos teniendo encuenta que tienen una línea de encabezado inicialque contiene los nombres de los campos.
-headers
Anular la secuencia de marcador nulo seleccionadoautomáticamente.
-null <marcador nulo>
Anular el carácter de separador de camposeleccionado automáticamente.
-separator <separador de campo>
Anular el carácter del marcador de secuenciaseleccionado automáticamente.
-stringmarker <marcador de secuencia>
Basar el archivo de descripción de los datos planosen este archivo existente de descripción de datosplanos de plantilla.
-template <archivo FDD de plantilla>
Consulte Ayuda de Portrait Miner para obtener más información sobre opciones de archivos planos.
Además de estas opciones de línea de comandos, qsgenfdd acepta las opciones comunes a todoslos comandos de creación de datos [consulte Opciones estándar de la línea de comandos en lapágina 21].
Nota: • Si ya existe un archivo de descripción de datos planos válido, qsgenfdd no realizará ningunaacción.
• En la mayoría de los casos, qsgenfdd selecciona automáticamente los valores adecuadospara la metadata que describe un archivo plano. No obstante, debido a que solamente analizauna muestra de los datos en el archivo plano (y debido a que pueden existir ambigüedadesen el formato del archivo plano), puede realizar inferencias incorrectas. Incluso si esto ocurre,habitualmente solo se debe anular uno o dos parámetros para lograr una interpretación correctadel archivo de datos.
• Se puede controlar el tamaño de las muestras utilizadas en la detección automática de formatomediante las preferencias de la Base de datos del archivo plano tamaño de muestradel formato de datos y tamaño de muestra de los datos (consulte Ayuda dePortrait Miner).
41Guía de referencia del comando de creación de datos y TML
Capítulo 4: Comandos para importar y exportar datos
• Para que la detección automática de formato funcione, los campos del archivo plano debenestar delimitados por un carácter de separación en lugar de diferenciarse por su posición (esdecir, el archivo no puede tener un formato de ancho fijo).
• Si se utiliza un archivo FDD de plantilla, debe contener una descripción de todos los camposen un componente table.
• Las opciones de formato especificadas en la línea de comandos anulan las opciones de formatoglobales en un archivo FDD de plantilla, lo que, a su vez, anula las opciones de formato globalesdetectadas automáticamente. Las opciones de línea de comandos no anulan las opcionesespecíficas de los campos.
• También es posible acceder a la función de qsgenfdd mediante el asistente Nuevo enfoquedisponible en Decision Studio o Portrait Miner.
Ejemplos
Crear un archivo de descripción de datos planos para el archivo de texto RetailCustMay.txt:qsgenfdd -input RetailCustMay.txt
Utilizar el archivo FDD resultante para crear un nuevo enfoque, RetailCustMay.ftr:
qsimportflat -input RetailCustMay.fdd -output RetailCustMay.ftr
Utilizar una secuencia de formato de datos personalizada para crear un archivo FDD para el archivo detexto RetailCustMay.txt:
qsgenfdd -dateformat "%d-%b-%Y %H:%M:%S" -input RetailCustMay.txt
También consulteqsexportflat en la página 44 qsimportflat en la página 42
qsimportflatSinopsis qsimportflat
-input <archivo plano>
-output <enfoque de destino> [-force]
-encoding <codificación>
-fields <campo> [, <campo> ...] | -fields @<archivo de campos>]
-fields <campo> [, <campo> ...] | -fields @<archivo de campos>]
[-maxwarnings <número de advertencias>] | [-nowarnings]
[-maxerrors <cantidad de errores>]
Descripción Crear el enfoque de destino a partir de los datos en el archivo plano (que puede ser unarchivo de texto o un archivo de descripción de datos planos).
Argumentos opcionales
Portrait Miner 7.142
qsimportflat
EfectoOpción
Ingresar codificación de archivo (UTF-8, Shift-JIS,LATIN1, EUC_JP, UTF16-LE, UTF_BE, etc.). .
-encoding <codificación>
Crear campos en el enfoque de destino quecorrespondan solamente a los camposespecificados en el archivo plano.
-fields <campo> [, <campo> ...]
Crear campos en el enfoque de destino quecorrespondan solamente a los campos en el
-fields @<archivo de campos>
archivo plano enumerados en el archivo de campos(uno por línea).
Consulte la La opción de línea de comandos-force en la página 24.
-force
Cancelar la importación del archivo plano si elproceso genera una cantidad mayor de errores
-maxerrors <cantidad de errores>
que la especificada, en relación con el formato delarchivo plano.
Cancelar la importación del archivo plano si elproceso genera una cantidad mayor de
-maxwarnings <número de advertencias>
advertencias que la especificada, en relación conel formato del archivo plano.
No generar ninguna advertencia en relación conel formato del archivo plano.
-nowarnings
Crear campos en el enfoque de destino quecorrespondan a todos los campos en el archivoplano, a excepción de los campos especificados.
-xfields <campo> [, <campo> ...]
Crear campos en el enfoque de destino quecorrespondan a todos los campos en el archivo
-xfields @<archivo de campos>
plano, a excepción de los campos enumerados enel archivo de campos (uno por línea).
Además de estas opciones de línea de comandos, qsimportflat acepta las opciones comunes a todoslos comandos de creación de datos [consulte Opciones estándar de la línea de comandos en lapágina 21].
Nota: • Preferentemente, se debe especificar un archivo de descripción de datos planos (FDD) antesque un archivo de texto como la entrada para qsimportflat. Se puede crear un archivo FDD apartir de un archivo de texto mediante qsgenfdd.
• Por defecto, la Base de datos del archivo plano tiene la preferencia permitir erroresde formato de datos activada (consulte la Ayuda de Portrait Miner). Esto implica quetodos los errores de formato del archivo plano se interpretan como advertencias y la opción-maxerrors no surte efecto.
• Las opciones -maxerrors, -maxwarnings y -nowarnings anulan la configuración de laBase de datos del archivo plano en cuanto a las preferencias errores máximos de
43Guía de referencia del comando de creación de datos y TML
Capítulo 4: Comandos para importar y exportar datos
extracción, advertencias máximas de extracción e ignorar advertenciasde extracción respectivamente.
• También es posible acceder a la función de qsimportflat mediante el asistente Nuevoenfoque disponible en Decision Studio o Portrait Miner.
Ejemplos
Crear un nuevo enfoque RetailTransApril.ftr, que contenga todos los campos del archivo planoRetailTransApril.txt:qsimportflat -input RetailTransApril.txt -output RetailTransApril.ftr
Crear un nuevo enfoque,RetailCustAprilSomeFields.ftr, que contenga los campos CustomerID,StartDate, Age, Postcode y Gender del archivo plano RetailCustApril.txt, al tiempo que se crea unarchivo FDD:qsgenfdd -input RetailCustApril.txtqsimportflat -fields "CustomerID, StartDate, Age, Postcode, Gender"-input RetailCustApril.fdd-output RetailCustAprilSomeFields.ftr
luego, crear otro enfoque RetailCustAprilOtherFields.ftr que contenga todos los camposexcepto CustomerID y Postcode, a partir del archivo plano RetailCustApril.txt, con el mismoarchivo FDD:qsimportflat -xfields "CustomerID, Postcode"-input RetailCustApril.fdd-output RetailCustAprilOtherFields.ftr
También consulteqsexportflat en la página 44
qsexportflatSinopsis qsexportflat
-input <enfoque de origen> [-subfocus <subenfoque>]
-output <archivo plano>
[-alwaysquotestrings]
-fields <campo> [, <campo> ...] | -fields @<archivo de campos> | -tags<etiqueta> [, <etiqueta> ...]]
-xfields <campo> [, <campo> ...] | -xfields @<archivo de campos> | -xtags<etiqueta> [, <etiqueta> ...]]
[-records <expresión FDL> | -records @<archivo FDL>]
[-template <archivo FDD de plantilla>]
[-fdd]
[-headers]
Portrait Miner 7.144
qsexportflat
[-separator <separador de campo>]
[-null <marcador nulo>]
[-stringmarker <marcador de secuencia>]
[-datemarker <marcador de fecha>]
[-dateformat <formato de fecha>]
[-defaultday <número de día>]
[-defaultmonth <número de mes>]
[-fixedformat]
Descripción Crear el archivo plano a partir de los datos en el enfoque de origen.
Argumentos opcionales
EfectoOpción
Colocar todos los valores de la secuencia entrecomillas en el archivo plano, en lugar de colocar
-alwaysquotestrings
solo aquellos que contienen caracteres especiales(como el separador).
Utilizar este formato [consulte Formatos de fechaen la página 55] para las fechas del archivo plano.
-dateformat <formato de fecha>
Utilizar este carácter de marcador para introducirfechas en el archivo plano.
-datemarker <marcador de fecha>
Incluir este número de día en cualquier archivo dedescripción de datos planos generado (para
-defaultday <número de día>
describir fechas cuyo formato no contenga uncomponente de día).
Incluir este número de mes en cualquier archivode descripción de datos planos generado (para
-defaultmonth <número de mes>
describir fechas cuyo formato no contenga uncomponente de mes).
Así como se crea el archivo plano, se debe crearun archivo de descripción de datos planos (archivo.fdd) para describir el formato de la fecha.
-fdd
Crear campos en el archivo plano quecorrespondan únicamente a los camposespecificados en el enfoque de origen.
-fields <campo> [, <campo> ...]
Crear campos en el archivo plano quecorrespondan únicamente a los campos en el
-fields @<archivo de campos>
enfoque de origen enumerados en el archivo decampos (uno por línea).
45Guía de referencia del comando de creación de datos y TML
Capítulo 4: Comandos para importar y exportar datos
EfectoOpción
Utilizar una cantidad de caracteres fija para cadacampo (seleccionada para adaptarse a todos losvalores posibles de ese tipo de datos).
Se puede utilizar esta opción junto a un separadorde campo vacío para crear un archivo plano cuyos
-fixedformat
campos se diferencien por su posición y no por eluso de un carácter de separación.
Incluir una línea inicial para el encabezado en elarchivo plano que contenga los nombres de loscampos.
-headers
Utilizar esta secuencia de marcador nulo en lugarde un espacio vacío para indicar las ocurrenciasdel valor nulo en el archivo plano.
-null <marcador nulo>
Crear registros en el archivo plano quecorrespondan solamente a los registros en el
-records <expresión FDL>
enfoque de origen para los que la expresión FDLnumérica no es cero ("true").
Crear registros en el archivo plano quecorrespondan solamente a los registros en el
-records @<archivo FDL>
enfoque de origen para los que la expresión FDLno es cero ("true") en el archivo especificado.
Utilizar este carácter de separador de campo enlugar de una coma.
-separator <separador de campo>
Utilizar este carácter de marcador de campo enlugar de comillas dobles.
-stringmarker <marcador de secuencia>
Usar el subenfoque especificado del enfoque deorigen.
-subfocus <subenfoque>
Crear campos en el archivo plano quecorrespondan solamente a los campos en elenfoque que tiene las etiquetas especificadas.
-tags <etiqueta> [, <etiqueta> ...]
Basar el formato del archivo plano en este archivoexistente de descripción de datos planos deplantilla.
-template <archivo FDD de plantilla>
Crear campos en el archivo plano quecorrespondan a todos los campos en el enfoque
-xfields <campo> [, <campo> ...]
de origen, a excepción de los camposespecificados.
Crear campos en el archivo plano quecorrespondan a todos los campos en el enfoque
-xfields @<archivo de campos>
Portrait Miner 7.146
qsexportflat
EfectoOpción
de origen, a excepción de los campos enumeradosen el archivo de campos (uno por línea).
Crear campos en el archivo plano quecorrespondan a todos los campos en el enfoque
-xtags <etiqueta> [, <etiqueta> ...]
de origen, a excepción de los campos que tienenetiquetas específicas.
Consulte Ayuda de Portrait Miner para obtener más información sobre opciones de archivos planos.
Además de estas opciones de línea de comandos, qsexportflat acepta las opciones comunes a todoslos comandos de creación de datos [consulte Opciones estándar de la línea de comandos en lapágina 21].
Nota:
• Si se utiliza una expresión de selección FDL (para exportar solamente un subconjunto de los registrosdel foco), se deben exportar todos los campos utilizados en esa expresión.
• Si se especifica un archivo plano con la extensión .fdd, qsexportflat lo trata como un archivo dedescripción de datos planos (independientemente de que se especifique la opción -fdd) y crea unarchivo plano correspondiente con la extensión .txt.
• Si se utiliza un archivo FDD de plantilla, debe contener una descripción de todos los campos en uncomponente table.
• Las opciones de formato especificadas en la línea de comandos anulan las opciones de formatoglobales en el archivo FDD de plantilla. Las opciones de línea de comandos no anulan las opcionesespecíficas de los campos.
• Si ya existe un archivo plano con el mismo nombre del archivo de salida, qsexportflat hace una copiade seguridad del archivo existente (con "~" anexado al nombre del archivo) en lugar de solamentesobrescribirlo.
• Es posible acceder a la mayoría de las funciones de qsexportflat mediante el cuadro de diálogoExportar enfoque en Decision Studio o el asistente Exportar texto disponible en Portrait Miner .
Ejemplos
Crear un nuevo archivo plano (RetailTransApril.csv) que contenga todos los registros del enfoqueRetailTransApril.ftr:qsexportflat -input RetailTransApril.ftr -output RetailTransApril.csv
Crear un nuevo archivo plano RetailTransAprilDates.csv que contenga solamente los camposCustomerID y PurchaseDate del enfoque RetailTransApril.ftr utilizando un formato de fechaespecífico:qsexportflat -fields "CustomerID, PurchaseDate"-dateformat "%e %h %Y"-input RetailTransApril.ftr -output RetailTransAprilDates.csv
Dado el archivo de descripción de datos planos de plantilla template.fdd, que contiene lo siguiente:separator |null (###)dateformat ((%e %h %Y))skip header
47Guía de referencia del comando de creación de datos y TML
Capítulo 4: Comandos para importar y exportar datos
table \CustomerID string(18) \PurchaseDate date \Store integer \Amount real \PaymentMethod string(2) \PointsRedeemed integer
Implementar esta plantilla para crear un archivo plano RetailTransAprilDates.txt:qsexportflat -template template.fdd-input RetailTransApril.ftr -output RetailTransAprilDates.txt
También consulteqsgenfdd en la página 40 qsimportflat en la página 42
qsimportstatSinopsis qsimportstat
-input <conjunto de datos de origen>
-output <enfoque de destino> [-force]
[-type <tipo de conjunto de datos>]
-fields <campo> [, <campo> ...] | -fields @<archivo de campos>]
-fields <campo> [, <campo> ...] | -fields @<archivo de campos>][-metadata<archivo de metadata>]
Descripción: Crear el enfoque de destino a partir de datos en el conjunto de datos de origen creadopor terceros. Los conjuntos de datos SAS, SPSS y de Excel son algunos de los conjuntos admitidos(consulte http://support.quadstone.com/info/requirements/ para obtener una lista detallada).
Argumentos opcionales
EfectoOpción
Crear campos en el enfoque de destino quecorrespondan solamente a los camposespecificados en el conjunto de datos de origen.
-fields <campo> [, <campo> ...]
Crear campos en el enfoque de destino quecorrespondan solamente a los campos en el
-fields @<archivo de campos>
conjunto de datos de origen enumerados en elarchivo de campos (uno por línea).
Consulte la La opción de línea de comandos-force en la página 24.
-force
Crear un archivo de metadata a partir de un archivode catálogo SAS format.sas7bcat que debe
-metadata <archivo de metadata>
Portrait Miner 7.148
qsimportstat
EfectoOpción
estar incluido en la misma carpeta que el conjuntode datos SAS de origen.
Interpretar el conjunto de datos de origen como eltipo de conjunto de datos especificado, y anular la
-type <tipo de conjunto de datos>
interpretación por defecto (que depende de laextensión del archivo). Los tipos de conjuntos dedatos válidos incluyen sas, spss y excel; paraconsultar una lista completa, utilice la opción -help.
Crear campos en el enfoque de destino quecorrespondan a todos los campos en conjunto de
-xfields <campo> [, <campo> ...]
datos de origen, a excepción de los camposespecificados.
Crear campos en el enfoque de destino quecorrespondan a todos los campos en el conjunto
-xfields @<archivo de campos>
de datos de origen, a excepción de los camposenumerados en el archivo de campos (uno porlínea).
Además de estas opciones de línea de comandos, qsimportstat acepta las opciones comunes a todoslos comandos de creación de datos [consulte Opciones estándar de la línea de comandos en lapágina 21].
Nota: • Si intenta importar desde un conjunto de datos SAS y ya existe el archivo de metadata, seproduce un error en la operación. Para evitarlo, utilice el argumento -force.
• Mediante Portrait Miner, se puede acceder a la mayoría de las funciones de qsimportstatmediante el cuadro de diálogo Importar enfoque .
Ejemplos
Crear un nuevo enfoque RetailTransApril.ftr, que contenga todos los campos del archivo SASRetailTransApril.sas7bdat:qsimportstat -input RetailTransApril.sas7bdat-output RetailTransApril.ftr
Crear un nuevo enfoque RetailCustAprilSomeFields.ftr que contenga los campos CustomerID,StartDate, Age, Postcode y Gender a partir del archivo SAS RetailCustApril.bin:qsimportstat -fields "CustomerID, StartDate, Age, Postcode, Gender"-input RetailCustApril.bin -type sas-output RetailCustAprilSomeFields.ftr
También consulte
qsdescribestat en la página 107
qsexportstat en la página 50
49Guía de referencia del comando de creación de datos y TML
Capítulo 4: Comandos para importar y exportar datos
qsexportstatSinopsis qsexportstat
-input <enfoque de origen> [-subfocus <subenfoque>]
-output <conjunto de datos de destino> [-overwrite]
[-type <tipo de conjunto de datos>]
-fields <campo> [, <campo> ...] | -fields @<archivo de campos> | -tags<etiqueta> [, <etiqueta> ...]]
-xfields <campo> [, <campo> ...] | -xfields @<archivo de campos> | -xtags<etiqueta> [, <etiqueta> ...]] [-records <expresión FDL> | -records @<archivoFDL>]
Descripción: Crear el conjunto de datos de destino de terceros a partir de los datos en el enfoque deorigen. Los conjuntos de datos SAS, SPSS y de Excel son algunos de los conjuntos admitidos (consultehttp://support.quadstone.com/info/requirements/ para obtener una lista detallada).
Argumentos opcionales
EfectoOpción
Crear campos en el conjunto de datos de destinoque correspondan solamente a los camposespecificados en el enfoque de origen.
-fields <campo> [, <campo> ...]
Crear campos en el conjunto de datos de destinoque correspondan solamente a los campos en el
-fields @<archivo de campos>
enfoque de origen enumerados en el archivo decampos (uno por línea).
Permitir que un nuevo conjunto de datosespecificado mediante la opción -outputsobrescriba un archivo existente.
Sin la opción -overwrite, si ya existe el conjuntode datos especificado mediante -output, el
-overwrite
comando no realizará ninguna acción (exceptoemitir una advertencia).
Crear registros en el conjunto de datos de destinoque correspondan solamente a los registros en el
-records <expresión FDL>
enfoque de origen para los que la expresión FDLnumérica no es cero ("true").
Crear registros en el conjunto de datos de destinoque correspondan solamente a los registros en el
-records @<archivo FDL>
enfoque de origen para los que la expresión FDLno es cero ("true") en el archivo especificado.
Portrait Miner 7.150
qsexportstat
EfectoOpción
Usar el subenfoque especificado del enfoque deorigen.
-subfocus <subenfoque>
Crear campos en el conjunto de datos de destinoque correspondan solamente a los campos en el
-tags <etiqueta> [, <etiqueta> ...]
enfoque de origen que tiene las etiquetasespecificadas.
Crear un conjunto de datos del tipo especificadoen lugar de usar la extensión del archivo para
-type <tipo de conjunto de datos>
determinar el tipo. Los tipos de conjuntos de datosválidos incluyen sas, spss, excel (.xls) y excelx(.xlsx). Para consultar una lista completa, utilice laopción -help.
Crear campos en el enfoque de destino quecorrespondan a todos los campos en conjunto de
-xfields <campo> [, <campo> ...]
datos de origen, a excepción de los camposespecificados.
Crear campos en el enfoque de destino quecorrespondan a todos los campos en el conjunto
-xfields @<archivo de campos>
de datos de origen, a excepción de los camposenumerados en el archivo de campos (uno porlínea).
Crear campos en el enfoque de destino quecorrespondan a todos los campos en el conjunto
-xtags <etiqueta> [, <etiqueta> ...]
de datos de origen, a excepción de los camposque tienen las etiquetas especificadas.
Además de estas opciones de línea de comandos, qsexportstat acepta las opciones comunes a todoslos comandos de creación de datos [consulte Opciones estándar de la línea de comandos en lapágina 21].
Mediante Portrait Miner, se puede acceder a la mayoría de las funciones de qsexportstatmediante el cuadro de diálogo Exportar para otro programa .
Nota:
Ejemplos Crear un archivo SAS nuevo RetailTransAprilStore800.sas7bdat que contenga unsubconjunto de registros (solo compras de la tienda 800) y solo campos de gasto a partir del enfoqueRetailTransApril.ftr :qsexportstat -input RetailTransApril.ftr-output RetailTransAprilStore800.sas7bdat-fields "CustomerID, PurchaseDate, Store, Amount"-records "Store = \"800\""
También consulteqsdescribestat en la página 107 qsimportstat en la página 48
51Guía de referencia del comando de creación de datos y TML
Capítulo 4: Comandos para importar y exportar datos
qsimportfocusSinopsis qsimportfocus
-input <enfoque de origen> [-subfocus <subenfoque>]
-output <enfoque de destino> [-force]
-fields <campo> [, <campo> ...] | -fields @<archivo de campos> | -tags<etiqueta> [, <etiqueta> ...]]
-xfields <campo> [, <campo>> ...] | -xfields @<archivo de campos> | -xtags<etiqueta> [, <etiqueta> ...]]
[-records <expresión FDL> | -records @<archivo FDL>] [-preservetypes]
Descripción: Crear el enfoque de destino a partir de los datos en el enfoque de origen. No copiarmetadata .
Argumentos opcionales
EfectoOpción
Crear campos en el enfoque de destino quecorrespondan únicamente a los camposespecificados en el enfoque de origen.
-fields <campo> [, <campo> ...]
Crear campos en el enfoque de destino quecorrespondan únicamente a los campos en el
-fields @<archivo de campos>
enfoque de origen que se enumeran (uno por línea)en el archivo de campos.
Consulte la La opción de línea de comandos-force en la página 24.
-force
Preservar los tipos de datos heredados de unenfoque creado con una versión anterior dePortrait Miner.
-preservetypes
Crear registros en el enfoque de destino quecorrespondan únicamente a los registros en el
-records <expresión FDL>
enfoque de origen para los que la expresiónnumérica FDL no es cero ("true").
Crear registros en el enfoque de destino quecorrespondan únicamente a los registros en el
-records @<archivo FDL>
enfoque de origen para los que la expresión FDLen el archivo especificado no es cero ("true").
Usar el subenfoque especificado del enfoque deorigen.
-subfocus <subenfoque>
Portrait Miner 7.152
qsimportfocus
EfectoOpción
Crear campos en el enfoque de destino quecorrespondan únicamente a los campos en el
-tags <etiqueta> [, <etiqueta> ...]
enfoque de origen que tienen las etiquetasespecificadas.
Crear campos en el enfoque de destino quecorrespondan a todos los campos en el enfoquede origen excepto los campos especificados.
-xfields <campo> [, <campo> ...]
Crear campos en el enfoque de destino quecorrespondan a todos los campos en el enfoque
-xfields @<archivo de campos>
de origen excepto los campos que se enumeran(uno por línea) en el archivo de campos.
Crear campos en el enfoque de destino quecorrespondan a todos los campos en el enfoque
-xtags <etiqueta> [, <etiqueta> ...]
de origen excepto los campos que tienen lasetiquetas especificadas.
Además de estas opciones de línea de comandos, qsimportfocus acepta las opciones comunes a todoslos comandos de creación de datos [consulte Opciones estándar de la línea de comandos en lapágina 21].
Nota: • Para crear una copia de un enfoque que incluya metadata, debe utilizar qscopy.• El enfoque de destino es independiente del enfoque de origen, es decir, no comparte datos
subyacentes.• Si el enfoque de origen se creó con una versión anterior de Portrait Miner, puede contener
campos con tipos de datos heredados. Por defecto, qsimportfocus convierte dichos camposen campos con los datatypes de entero, real, fecha y secuencia estándares. Puede forzar aqsimportfocus a retener los tipos de datos originales en el enfoque de destino, al utilizarla opción -preservetypes.
• Al utilizar Portrait Miner, se puede acceder a la mayoría de las funcionalidades deqsimportfocus a través del cuadro de diálogo Exportar como enfoque .
Ejemplos Crear un nuevo enfoque RetailTransAprilStandardTypes.ftr que contenga todoslos registros del enfoque RetailTransApril.ftr, pero convierta los campos con tipos de datosheredados a tipos de datos estándares:qsimportfocus -input RetailTransApril.ftr-output RetailTransAprilStandardTypes.ftr
Crear un nuevo enfoque RetailTransAprilStore800.ftr, que contenga un subconjunto de registros(solo compras de la tienda 800) y solo campos de gastos, del enfoque RetailTransApril.ftr:qsimportfocus -input RetailTransApril.ftr-output RetailTransAprilStore800.ftr-fields "CustomerID, PurchaseDate, Store, Amount"-records "Store = \"800\""
53Guía de referencia del comando de creación de datos y TML
Capítulo 4: Comandos para importar y exportar datos
Crear un nuevo enfoque, RetailTransApril2Customers.ftr, que contenga únicamente lastransacciones para los clientes 20450000000036004 y 20450000000043009:qsimportfocus -records "strmember(CustomerID, \"20450000000036004\",\"20450000000043009\")"-input RetailTransApril.ftr-output RetailTransApril2Customers.ftr
Cómo Portrait Miner importa los tipos de base dedatos
Importación a Portrait Miner desde una base de datosPortrait Miner asigna los siguientes tipos de base de datos a sus tipos de datos según el tamaño deltipo de base de datos y a la configuración de preferencias de las Bases de datos.
Tipo de campode PortraitMiner
preservar lostiposnuméricos alimportar
representarenteros largoscomo cadenas
Precision(Precisión)
Scale (Escala)Tipo de basede datos
cadenachar, char2,varchar,varchar2,nchar, nchar2,nvarchar,nvarchar2
fechadate, time,timestamp,datetime,smalldatetime
enteroint, integer,tinyint, smallint,byteint, bit
real
cadena
true
false
false
false
true
bigint
cadena
real
real
true
false
15
> 15
> 15
< 0decimal, dec,numeric,number
cadena
Portrait Miner 7.154
Cómo Portrait Miner importa los tipos de base de datos
Tipo de campode PortraitMiner
preservar lostiposnuméricos alimportar
representarenteros largoscomo cadenas
Precision(Precisión)
Scale (Escala)Tipo de basede datos
real
entero
true
false
false
0
10
> 10 15
> 15
0decimal, dec,numeric,number
real
realfalsefalse
true> 15
> 10
cadena
cadena
realfloat, double,real
real
realtrue
false
15
> 15
> 15
> 0decimal, dec,numeric,number
cadena
real
cadena
true
false
money
realsmallmoney
Nota: • En las filas marcadas con , puede haber pérdida de precisión.• En las filas marcadas con , los valores que sean demasiado largos para almacenar como
enteros se convertirán a Null.
Exportación de Portrait Miner a una base de datosLos tipos de base de datos que Portrait Miner exporta dependen de la base de datos de destino y elcontrolador ODBC. Portrait Miner sugiere un tipo adecuado para la base de datos que especifique, sibien el controlador ODBC interpreta esa sugerencia en uno de los tipos de esa base de datos.
Formatos de fechaCuando trabaja con archivos planos y expresiones FDL, puede especificar la forma en la que PortraitMiner debe interpretar o exportar las fechas y las horas, usando un formato de fecha estándar [consultela sección Formatos de fecha estándar en la página 56] o un formato de fecha personalizado [consultela sección Formatos de fechas personalizados en la página 56].
55Guía de referencia del comando de creación de datos y TML
Capítulo 4: Comandos para importar y exportar datos
Formatos de fecha estándar
Formato de fechaNombre
MM/DD/AAAA:hh:mm:ss, por ejemplo,12/31/2000:13:36:59
Americano
DD/MM/AAAA:hh:mm:ss, por ejemplo,31/12/2000:13:36:59
Europeo
AAAA/MM/DD:hh:mm:ss, por ejemplo,2000/12/31:13:36:59
AMD
Nota: • Los tres formatos de fecha estándar también se pueden utilizar para fechas sin componentede hora y para horas puras ("fechas" con solo un componente de hora). Para fechas con solohoras o solo fechas, las partes de hora y fecha, respectivamente, son omitidas.
• Los formatos Americano, Europeo, y AMD también incluyen datos en las formas MMDDAAAA,DDMMAAAA y AAAAMMDD respectivamente (solo para entradas).
Formatos de fechas personalizadosPuede especificar un formato de fecha personalizado mediante la utilización de códigos de caracteresespeciales, cada uno comenzando con un signo de porcentaje %:
Componente de fecha con formatoCódigo
El mismo signo de porcentaje: %%%
Coincide con cualquier carácter%?
Coincide con cualquier cantidad de caracteres; porejemplo, para ignorar los caracteres finales, use%A/%m/%d%*
%*
El nombre del día en forma abreviada ("lu.","ma.", ..., "do.")
%a
El nombre del día completo (lunes", "martes",..., "domingo")
%A
El nombre del mes en forma abreviada ("en.","febr.", ..., "dic.")
%b
El nombre del mes completo ("enero","febrero", ..., "diciembre")
%B
(Entrada) Equivalente a "%a %b %e %T %Y"
(Salida) La fecha y hora en la representaciónestándar para la ubicación actual
%c
Equivalente a "%a %b %e %T %Z %Y"%C
Portrait Miner 7.156
Formatos de fecha estándar
Componente de fecha con formatoCódigo
El día del mes, usando dos dígitos ("01", "02",..., "31")
%d
Equivalente a %m/%d/%y%D
El día del mes, en un solo dígito precedido por unespacio (" 1", " 2", ..., "31")
%e
Equivalente a "%b"%h
La hora del día, usando el reloj de 24 horas ("00","02", ..., "23")
%H
La hora del día, usando el reloj de 12 horas ("01","02", ..., "12")
%I
El día del año, usando tres dígitos (fechas julianas)("001", "002", ..., "366")
%j
El número del mes, usando dos dígitos ("01","02", ..., "12")
%m
Los minutos de una hora, usando dos dígitos("00", "01", ..., "59")
%M
"a.m." o "p.m." según corresponda%p
Equivalente a %I:%M:%S %p%r
Equivalente a %H:%M%R
El segundo del minuto, usando dos dígitos ("00","01", ..., "61")
%S
Equivalente a %H:%M:%S%T
La fecha con formato según la preferencia deordenación x
%x
Equivalente a "%x"%X
Los años de un siglo, usando dos dígitos ("00","01", ..., "99")
%y
El año, usando cuatro dígitos%Y
El nombre de la zona horaria de la ubicación actual%Z
Nota:
• Para usar %D o %y, debe especificar el año de quiebre o un año futuro máximo (pero no ambos).
Si configura un quiebre igual a un año válido Y, Portrait Miner interpretará los años de dos dígitoscomo años entre Y - 99 y Y. Por ejemplo, si configura las preferencias en 2077, Portrait Minerinterpreta los años de dos dígitos 76, 77, y 78 como 2076, 2077, and 1978 respectivamente.
57Guía de referencia del comando de creación de datos y TML
Capítulo 4: Comandos para importar y exportar datos
Si configura un año máximo futuro igual a un valor positivo n y el año actual es A, Portrait Minerinterpreta todos los años de dos dígitos como años entre Y + n - 99 y Y + n. Por ejemplo, siconfigura las preferencias en 50 y el año actual es 2002, Portrait Miner interpreta los años de dosdígitos 51, 52, y 53 como 2051, 2052, y 1953 respectivamente.
• Si establece la escritura en la preferencia de formato local específico, los códigos "%a," "%A,""%b," "%B," "%C," "%p," "%x," "%X," y "%Z" podrían producir resultados distintos al mostrarlas fechas (pero no al interpretarlas).
• Así como /, cualquier otro carácter (salvo el separador de campo o el marcador nulo) puede utilizarsecomo separador en la fecha.
• En los formatos de fecha que no tienen un componente de día o mes explícito, puede especificar unopor defecto utilizando el calificador de "día" o "mes".
• Los códigos de caracteres especiales son los de la función de biblioteca C estándar strftime.
Ejemplo R–1: Cadenas de formato de fecha
Cadena de formato de fechaEjemplo de fecha
Europeo02/04/2003
27/10/1940
Americano04/02/2003
10/27/1940
AMD2003/04/02
1940/10/27
%d-%b-%Y02-Apr-2003
27-Oct-1940
((%d %b %Y))02 Apr 2003
27 Oct 1940
((%Y-%m-%d %H:%M))2003-04-02 13:25
1940-10-27 08:23
%Y-%m-%d:%H:%M2003-04-02:13:25
1940-10-27:08:23
((%e %b %Y))2 Apr 2003
27 Oct 1940
((%B %e, %Y))April 2, 2003
((%d/%m/%Y %H:%M))02/04/2003 13:25
27/10/1940 08:23
Portrait Miner 7.158
Formatos de fechas personalizados
Cadena de formato de fechaEjemplo de fecha
((%Y-%m-%d %H:%M:%S%*))2003-04-02 13:25:15000000
((%B %d, %Y))April 02, 2003
%e-%b-%Y2-Apr-2003
27-Oct-1940
(quiebre europeo=2010)02/04/03
27/10/40
(quiebre americano=2010)04/02/03
10/27/40
(quiebre AMD=2010)03/04/02
40/10/27
(%d-%b-%y pivot=2010)02-Apr-03
27-Oct-40
((%B %d, %y) pivot=2010)April 02, 03
(%e-%b-%y pivot=2010)2-Apr-03
27-Oct-03
((%B %e, %y) pivot=2010)April 2, 03
((%I:%M %p))01:25 PM
08:23 AM
%H:%M13:25
08:23
59Guía de referencia del comando de creación de datos y TML
Capítulo 4: Comandos para importar y exportar datos
Capítulo 5Comandos para procesarenfoques
En esta sección:
• qssort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .62• qsderive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .63• qsmeasure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .66• qstrack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .70• qsselect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .73• qsrenamefields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .75• qsexportmetadata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .78• qsimportmetadata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .78• qsupdate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .82
qssortSinopsis qssort
-input <enfoque de origen>> [-subfocus <subenfoque>]
-output <enfoque de destino> [-force]
{-keys <campo clave> [, <campo clave>] [, <campo clave>]| -key @<archivoclave>}} qssort-input <enfoque de origen> [-subfocus <subenfoque>]
-check
{-keys <campo clave> [, <campo clave>] [, <campo clave>]| -key @<archivoclave>}}
Descripción: Clasifique los registros del enfoque de origen según los campos clave para producir elenfoque de destino.
Alternativamente, compruebe que el enfoque de origen ya está clasificado.
Argumentos opcionales
EfectoOpción
Consulte la La opción de línea de comandos-force en la página 24.
-force
Usar el subenfoque especificado del enfoque deorigen.
-subfocus <subenfoque>
Además de esta opción de línea de comandos, qssort acepta las opciones comunes a todos los comandosde creación de datos [consulte Opciones estándar de la línea de comandos en la página 21].
Nota: • Se pueden utilizar tres campos clave con qssort como máximo.• El uso que qssort hace del orden de comparación de Portrait Miner puede mostrar diferencias
en algunos detalles respecto del orden de comparación usado por las bases de datos o lasutilidades de clasificación de terceros. Aunque es importante que un enfoque esté clasificado,se debe comprobar el orden de la clasificación y, si es necesario, volver a clasificarlo utilizandoqssort.
• En general, es mucho más rápido comprobar el orden de la clasificación de un enfoque queclasificarlo.
• En general, es ligeramente más rápido clasificar un enfoque si ya está casi clasificado.• Incluso cuando el enfoque (o subenfoque) contiene solamente una selección de registros, el
enfoque de destino contiene todos los registros del enfoque de origen.• Si se utiliza la opción -verbose, qssort informa la cantidad de valores clave únicos y la cantidad
de registros que contienen el valor clave duplicado más frecuente.• El comando qssort requiere un espacio temporal en disco equivalente al tamaño del enfoque
de origen, y espacio para el enfoque de destino.
Portrait Miner 7.162
qssort
• El enfoque de destino es independiente del enfoque de origen, es decir, no comparte datossubyacentes.
• Utilizando Portrait Miner, se puede acceder a la mayoría de las funciones de qssort medianteel asistente Ordenar enfoque .
Ejemplos Comprobar que el enfoque RetailCustApril.ftr está clasificado según el campoCustomerID:qssort -check -input RetailCustApril.ftr -keys CustomerID
Cree un nuevo enfoque, RetailTransAprilSorted.ftr, que contenga todos los registros delenfoque RetailTransApril.ftr, clasificado según el campo CustomerID:qssort -output RetailTransAprilSorted.ftr-input RetailTransApril.ftr -keys CustomerID
qsderiveSinopsis qsderive -derivations <archivo de derivaciones>
-input <enfoque de origen> [-subfocus <subenfoque>]
[-macro <nombre>=<valor>[-macro <nombre>=<valor> ...] | -macro@<nombre>=<archivo de macro>]
[-output <enfoque de destino>] [-force]
-fields <campo> [, <campo> ...] | -fields @<archivo de campos>]
-fields <campo> [, <campo> ...] | -fields @<archivo de campos>]
[-random <semilla entera>]
[-warn] [-savexml]
Descripción: Copiar todos los campos (por defecto) del enfoque de origen al enfoque de destino; derivarlos campos en el enfoque de destino según las definiciones de campo en el archivo de derivaciones,que contiene instrucciones create o las representaciones XML correspondientes. Por defecto, anexarlos campos derivados al enfoque de origen.
Argumentos opcionales
ObjetivoComando
EfectoOpción
Derivar únicamente los campos especificados.-fields <campo> [, <campo>> ...]
Derivar únicamente los campos que se enumeran(uno por línea) en el archivo de campos.
-fields @<archivo de campos>>
Consulte la La opción de línea de comandos-force en la página 24.
-force
63Guía de referencia del comando de creación de datos y TML
Capítulo 5: Comandos para procesar enfoques
ObjetivoComando
Consulte la La opción de línea de comandos-macro en la página 25.
-macro <nombre>=<valor>
Consulte la La opción de línea de comandos-macro en la página 25.
-macro @<archivo de macros>
En lugar de anexar campos derivados al enfoquede origen, copiar el enfoque de origen al enfoque
-output <enfoque de destino>
de destino y anexar los campos derivados alenfoque de destino.
Utilizar la semilla entera (en lugar de 0) para todaslas funciones FDL de número aleatorio queaparezcan en expresiones de derivación.
-random <semilla entera>
Además de derivar uno o más campos, escribala(s) expresión(es) de la derivación en los formatos
-savexml
TML y XML en los archivos <salida>.tml y<salida>.xml, en el mismo directorio del enfoquede destino, donde <salida> es el nombre de basedel enfoque de salida.
Usar el subenfoque especificado del enfoque deorigen.
-subfocus <subenfoque>
Si falla una derivación de campo, mostrar unaadvertencia y continuar derivando otros campos(en lugar de detenerse).
-warn
Derivar todos los campos en el archivo dederivaciones excepto los campos especificados.
-xfields <campo>> [, <campo> ...]
Derivar todos los campos en el archivo dederivaciones excepto los campos que se enumeran(uno por línea) en el archivo de campos.
-xfields @<archivo de campos>
Además de estas opciones de línea de comandos, qsderive acepta las opciones comunes a todos loscomandos de creación de datos [consulte Opciones estándar de la línea de comandos en la página21].
Nota: • El orden en que aparecen los campos derivados en el enfoque de destino es el orden en elque aparecen en el archivo de derivaciones.
• Si se especifica un enfoque de destino, compartirá los datos subyacentes con el enfoque deorigen.
• XML para qsderive toma la forma de un elemento <derivations>, que contiene elementos<field>, cada uno de los cuales debe contener, a su vez, una expresión FDL en un elemento<fdl>. Cada elemento <fdl> puede incluir un atributo seed entero para especificar la semillade número aleatorio para esa expresión FDL.
• Puede utilizar el archivo XML que guardó qsderive mediante la opción -savexml como unarchivo de derivaciones.
Portrait Miner 7.164
qsderive
• Utilizando Portrait Miner, se puede acceder a la mayoría de las funciones de qsderivemediante el asistente Derivar campos .
Ejemplo
Dado el archivo de derivaciones, derivations-purchases.tml, que contiene lo siguiente:create TransMonth := month(PurchaseDate);create CashRecd := if PaymentMethod = "CA" then Amount else 0;
aplicar estas derivaciones al enfoque RetailTransApril.ftr, para crear un nuevo enfoque,RetailTransAprilDeriv.ftr, que contenga todos los campos del enfoqueRetailTransApril.ftr, más dos campos derivados:qsderive -derivations derivations-purchases.tml-input RetailTransApril.ftr -output RetailTransAprilDeriv.ftr
Aplicar todas estas derivaciones, menos la primera, al enfoque RetailTransApril.ftr, para crearun nuevo enfoque RetailTransAprilDerivAllButFirstOne.ftr, que contenga todos los camposdel enfoque RetailTransApril.ftr más todos los campos derivados, menos el primero:qsderive -xfields TransMonth -derivations derivations-purchases.tml-input RetailTransApril.ftr-output RetailTransAprilDerivAllButFirstOne.ftr
Crear un nuevo enfoque,RetailCustAprilScored.ftr, que contenga todos los campos del enfoqueRetailCustApril.ftr, más los campos de resultado que se crearon en Creador de scorecards deDecision Studio y se guardaron como un archivo QMML, derivations-score.qmml:qsderive -derivations derivations-score.qmml-input RetailCustApril.ftr-output RetailCustAprilScored.ftr
Dado el archivo de derivaciones XML derivations-purchases.xml que contiene lo siguiente:<?xml version="1.0" encoding="UTF-8"?><derivations xmlns="http://www.quadstone.com/xml"><field name="TransMonth"><fdl>month(PurchaseDate)</fdl></field><field name="CashRecd"><fdl>if PaymentMethod = "CA" then Amount else 0</fdl></field><field name="Random"><fdl seed="123">rndUniform()</fdl></field></derivations>
aplicar estas derivaciones al enfoque RetailTransApril.ftr, para crear un nuevo enfoque,RetailTransAprilDeriv.ftr, que contenga todos los campos del enfoqueRetailTransApril.ftr, más dos campos derivados:qsderive -derivations derivations-purchases.xml-input RetailTransApril.ftr -output RetailTransAprilDeriv.ftr
También consulte
Especificación de derivación para qsderive en la página 351
qstrack en la página 70
65Guía de referencia del comando de creación de datos y TML
Capítulo 5: Comandos para procesar enfoques
qsmeasureSinopsis qsmeasure
-aggregations <archivo de agregación> [, <archivo de agregación> ...]
-input <enfoque de origen>
-output <enfoque de destino> [-force]
{-keys <campo clave> [, <campo clave>] [, <campo clave>] | -key @<archivoclave>}
[-statistics <archivo de estadísticas> [, <archivo de estadísticas> ...]]
[-library <archivo de funciones FDL> [, <archivo de funciones FDL> ...]]
[-macro <nombre>=<valor> [-macro <nombre>=<valor> ...] | -macro@<nombre>=<archivo de macro>]
-fields <campo> [, <campo> ...] | -fields @<archivo de campos> | -tags<etiqueta> [, <etiqueta> ...]]
-xfields <campo> [, <campo> ...] | -xfields @<archivo de campos> | -xtags<etiqueta> [, <etiqueta> ...]]
Descripción: Agregue registros en el enfoque de origen para producir campos en el enfoque de destinosegún las definiciones de campos en los archivos de agregación. Los archivos de agregaciones contieneninstrucciones create o las representaciones XML correspondientes. Utilice los campos clave paraidentificar grupos de registros para agregación [consulte Uso de funciones de agregación y lascláusulas where y default en la página 154].
Argumentos opcionales
EfectoOpción
Considerar solo los campos especificados delenfoque de origen (para optimizar el rendimiento
-fields <campo> [, <campo> ...]
del comando evitando la consideración de loscampos que no se utilizan).
Considerar solo los campos del enfoque de origenque están enumerados (uno por línea) en el archivode campos.
-fields @<archivo de campos>
Consulte la La opción de línea de comandos-force en la página 24.
-force
Incluye definiciones de las funciones FDL [consulteFunciones definidas por el usuario en la página192].
Es posible que las expresiones en los archivos deagregaciones involucren estas funciones.
-library <archivo de funciones FDL>[, <archivo de funciones FDL> ...]
Portrait Miner 7.166
qsmeasure
EfectoOpción
Consulte la La opción de línea de comandos-macro en la página 25.
-macro <nombre>=<valor>
Consulte la La opción de línea de comandos-macro en la página 25.
-macro @<archivo de macros>
Calcular estadísticas para el enfoque de entradasegún las definiciones en los archivos de
-statistics <archivo de estadísticas>[, <archivo de estadísticas> ...]
estadísticas, que contienen instrucciones decálculo [consulte Evaluación del enfoque deestadísticas: la instrucción de calcular en lapágina 158] o las representaciones XMLcorrespondientes.
Las expresiones en los archivos de agregacionespueden hacer referencia a estas estadísticas.
Tener en cuenta solamente los campos del enfoquede origen que tienen las etiquetas especificadas
-tags <etiqueta> [, <etiqueta> ...]
(para optimizar el rendimiento del comando al evitartener en cuenta los campos no utilizados).
Considerar todos los campos del enfoque deorigen, excepto los campos especificados (para
-xfields <campo> [, <campo> ...]
optimizar el rendimiento del comando evitando laconsideración de campos que no se utilizan).
Considerar todos los campos del enfoque deorigen, excepto aquellos que estén enumerados(uno por línea) en el archivo de campos.
-xfields @<archivo de campos>
Tener en cuenta todos los campos del enfoque deorigen, excepto los campos que tienen la etiqueta
-xtags <>tag> [, <etiqueta>> ...]
especificada (para optimizar el rendimiento delcomando al evitar tener en cuenta los campos noutilizados).
Además de estas opciones de línea de comandos, qsmeasure acepta las opciones comunes a todoslos comandos de creación de datos [consulte Opciones estándar de la línea de comandos en lapágina 21].
Nota: • El enfoque de origen debe ordenarse según los campos clave [consulte qssort en la página62]. No obstante, qsmeasure no comprueba si esto es así, y no emite una advertencia o unerror si el enfoque no está ordenado correctamente.
• El enfoque de destino contiene campos clave que corresponden a los campos clave en elenfoque de origen, seguidos de los campos agregados (en el mismo orden en el que aparecenen el archivo de agregaciones), seguidos por todos los campos derivados (también en el mismoorden en el que aparecen en el archivo de agregaciones). Para forzar la aparición de un campoagregado después de un campo derivado en el enfoque de destino, puede utilizarse una
67Guía de referencia del comando de creación de datos y TML
Capítulo 5: Comandos para procesar enfoques
instrucción temporary para crear el campo de agregación, y luego derivar un campo desdeallí.
• El enfoque de destino es independiente del enfoque de origen, es decir, no comparte datossubyacentes.
• Para calcular agregaciones que involucren los estados entre las transacciones en lugar deinvolucrar solamente los valores en los registros de transacciones, derive campos intermediosadecuados mediante qstrack antes de utilizar qsmeasure.
• El XML para qsmeasure adopta la forma de un elemento de <aggregations>, que contieneelementos <field context="aggregation">, cada uno de los cuales, a su vez, debecontener una expresión TML en un elemento <fdl>. Se puede utilizar un elemento <by> paraespecificar los grupos, y un elemento <where> para filtrar los registros de entrada.
• Utilizando Portrait Miner, se puede acceder a la mayoría de las funciones de qsmeasuremediante el asistente Agregar registros .
Ejemplos Dado el archivo de agregaciones aggregations-purchases.tml, que contiene lo siguiente:create numberPurchases := count();create averagePurchase := mean(Amount);create totalPointsRedeemed := sum(PointsRedeemed);create averagePointsPerPurchase :=totalPointsRedeemed / numberPurchases;
Aplique estas agregaciones y la derivación al enfoque RetailTransAprilSorted.ftr para crearel enfoque RetailAggregationsApril.ftr que contenga los campos CustomerID,numberPurchases, averagePurchase, totalPointsRedeemed y averagePointsPerPurchase:qsmeasure -aggregations aggregations-purchases.tml-input RetailTransAprilSorted.ftr-output RetailAggregationsApril.ftr-keys CustomerID
Dado el archivo de funciones FDL fdl-functions-storeSplit.fdl, que contiene lo siguiente:function StoreSplitFunction( Store )[element_names = "0,800,600,700,300,400,100,500,900,Other"]{caseStore = "0000" : 1;Store = "0800" : 2;Store = "0600" : 3;Store = "0700" : 4;Store = "0300" : 5;Store = "0400" : 6;Store = "0100" : 7;Store = "0500" : 8;Store = "0900" : 9;default : 10;}
Dado el archivo de agregaciones, aggregations-mostCommon.tml, que contiene lo siguiente:create mostCommonStore := mode(Store);create averageSpendInStore_ := mean(Amount)by StoreSplitFunction(Store);
Portrait Miner 7.168
qsmeasure
Aplique estas agregaciones al enfoque RetailTransAprilSorted.ftr para crear el enfoqueRetailStoreSplitsApril.ftr que contenga los campos CustomerID, mostCommonStore,averageSpendInStore_0, averageSpendInStore_800, averageSpendInStore_600,averageSpendInStore_700, averageSpendInStore_300, averageSpendInStore_400,averageSpendInStore_100, averageSpendInStore_500, averageSpendInStore_900 yaverageSpendInStore_Other:qsmeasure -library fdl-functions-storeSplit.fdl-aggregations aggregations-mostCommon.tml-input RetailTransAprilSorted.ftr-output RetailStoreSplitsApril.ftr -keys CustomerID
Alternativamente, dado el archivo XML de agregaciones aggregations-mostCommon.xml, quecontiene lo siguiente:<?xml version="1.0" encoding="UTF-8"?><aggregations xmlns="http://www.quadstone.com/xml">
<field name="mostCommonStore" context="aggregation"><fdl>mode(Store)</fdl>
</field><field name="averageSpendInStore_" context="aggregation">
<fdl>mean(Amount)</fdl><by>StoreSplitFunction(Store)</by>
</field></aggregations>
aplique estas agregaciones al enfoque RetailTransAprilSorted.ftr para crear el enfoqueRetailStoreSplitsApril.ftr que contenga los mismos campos del ejemplo anterior:qsmeasure -library fdl-functions-storeSplit.fdl-aggregations aggregations-mostCommon.xml-input RetailTransAprilSorted.ftr-output RetailStoreSplitsApril.ftr -keys CustomerID
Dado el archivo de estadísticas statistics-amount.tml, que contiene lo siguiente:calculate averageAmount := mean(Amount);
y dado el archivo de agregaciones aggregations-statistic.tml, que contiene lo siguiente:create averageSpend := mean(Amount);create bigSpender := averageSpend > STATISTIC.averageAmount;
aplique esta agregación y derivación al enfoque RetailTransAprilSorted.ftr para crear el enfoqueRetailRankApril1.ftr que contenga los campos CustomerID, averageSpend y bigSpender:qsmeasure -statistics statistics-amount.tml-aggregations aggregations-statistic.tml-input RetailTransAprilSorted.ftr-output RetailRankApril1.ftr-keys CustomerID
Alternativamente, acelere la agregación al importar solamente los campos CustomerID y Amountdesde el enfoque RetailTransAprilSorted.ftr:qsmeasure -fields "CustomerID, Amount"-statistics statistics-amount.tml-aggregations aggregations-statistic.tml-input RetailTransAprilSorted.ftr-output RetailRankApril2.ftr-keys CustomerID
69Guía de referencia del comando de creación de datos y TML
Capítulo 5: Comandos para procesar enfoques
También consulteEspecificación de agregación para qsmeasure en la página 349
qstrackSinopsis qstrack
-trackers <archivo de rastreo> [, <archivo de rastreo> ...] -input <enfoquede origen> -output <enfoque de destino> [-force]-key <campo clave> | -key@<archivo clave>[-statistics <archivo de estadísticas> [, <archivo deestadísticas> ...]] [-library <archivo de función FDL> [, <archivo de funciónFDL> ...]]
[-macro <nombre>=<valor> [-macro <nombre>=<valor> ...] | -macro@<nombre>=<archivo de macro>]
-fields <campo> [, <campo> ...] | -fields @<archivo de campos> | -tags<etiqueta> [, <etiqueta> ...]]-xfields <campo> [, <campo> ...] | -xfields@<archivo de campos> | -xtags <etiqueta> [, <etiqueta> ...]]
Descripción: Copiar todos los campos (por defecto) del enfoque de origen al enfoque de destino; derivarlos campos en el enfoque de destino según las definiciones de campo en el archivo de rastreadores,que contiene instrucciones create o las representaciones XML correspondientes. Estas definicionesgeneralmente involucran variables de estado [consulte Variables en la página 190]. Utilizar el campoclave para identificar grupos de registros para rastrear el estado: qstrack restablece todas las variablesde estado al inicio de un nuevo grupo.
Argumentos opcionales
EfectoOpción
Considerar solo los campos especificados delenfoque de origen (para optimizar el rendimiento
-fields <campo> [, <campo> ...]
del comando evitando la consideración de loscampos que no se utilizan).
Considerar solo los campos del enfoque de origenque están enumerados (uno por línea) en el archivode campos.
-fields @<archivo de campos>
Consulte la La opción de línea de comandos-force en la página 24.
-force
Incluye definiciones de las funciones FDL [consulteFunciones definidas por el usuario en la página192].
Las expresiones de los archivos de seguimientopueden incluir estas funciones.
-library <archivo de funciones FDL>[, <archivo de funciones FDL> ...]
Portrait Miner 7.170
qstrack
EfectoOpción
Consulte la La opción de línea de comandos-macro en la página 25.
-macro <nombre>=<valor>
Consulte la La opción de línea de comandos-macro en la página 25.
-macro @<archivo de macros>
Calcular estadísticas para el enfoque de entradasegún las definiciones en los archivos de
-statistics <archivo de estadísticas>[, <archivo de estadísticas> ...]
estadísticas, que contienen instrucciones decálculo [consulte Evaluación del enfoque deestadísticas: la instrucción de calcular en lapágina 158] o las representaciones XMLcorrespondientes.
Las expresiones de los archivos de seguimientopueden hacer referencia a estas estadísticas.
Tener en cuenta solamente los campos del enfoquede origen que tienen las etiquetas especificadas
-tags <etiqueta> [, <etiqueta> ...]
(para optimizar el rendimiento del comando al evitartener en cuenta los campos no utilizados).
Considerar todos los campos del enfoque deorigen, excepto los campos especificados (para
-xfields <campo> [, <campo> ...]
optimizar el rendimiento del comando evitando laconsideración de campos que no se utilizan).
Considerar todos los campos del enfoque deorigen, excepto aquellos que estén enumerados(uno por línea) en el archivo de campos.
-xfields @<archivo de campos>
Considerar todos los campos del enfoque deorigen, excepto los campos que tienen las etiquetas
-xtags <etiqueta> [, <etiqueta> ...]
especificadas (para optimizar el rendimiento delcomando al evitar la consideración de campos sinutilizar).
Además de estas opciones de línea de comandos, qstrack acepta las opciones comunes a todos loscomandos de creación de datos [consulte Opciones estándar de la línea de comandos en la página21].
Nota: • El orden en el que aparecen los campos derivados en el enfoque de destino es el orden enel que aparecen en el archivo de rastreadores.
• El enfoque de origen se debe clasificar por medio del campo clave [consulte qssort en lapágina 62]. Sin embargo, qstrack no verifica que así sea, y no emite una advertencia ni unerror si el enfoque no se clasifica correctamente.
• El enfoque de destino es independiente del enfoque de origen, es decir, no comparte datossubyacentes.
71Guía de referencia del comando de creación de datos y TML
Capítulo 5: Comandos para procesar enfoques
• XML para qstrack toma la forma de un elemento <trackers>, que contiene elementos<field context="tracker">, cada uno de los cuales debe contener, a su vez, unaexpresión FDL en un elemento <fdl>.
Ejemplos
Dado el archivo de rastreadores, trackers-monthlySpend.tml, que contiene lo siguiente:create monthlySpend := (state currentMonth := null;state currentYear := null;state monthSpend := 0;if (currentMonth = month(PurchaseDate) andcurrentYear = year(PurchaseDate))then (monthSpend := monthSpend + Amount)else (monthSpend := Amount);currentMonth := month(PurchaseDate);currentYear := year(PurchaseDate);monthSpend;);
aplicar estas derivaciones al enfoque RetailTransAprilSorted.ftr para crear un nuevo enfoqueRetailTransAprilRunningSpend.ftr:qstrack -trackers trackers-monthlySpend.tml -key CustomerID-input RetailTransAprilSorted.ftr-output RetailTransAprilRunningSpend.ftr
Como alternativa, dado el archivo de rastreadores XML trackers-monthlySpend.xml, que contienelo siguiente:<?xml version="1.0" encoding="UTF-8"?><trackers xmlns="http://www.quadstone.com/xml">
<field name="monthlySpend" context="tracker"><fdl>
state currentMonth := null;state currentYear := null;state monthSpend := null;if (currentMonth = month(PurchaseDate) and currentYear =
year(PurchaseDate))then (monthSpend := monthSpend + Amount)else (monthSpend := Amount);currentMonth := month(PurchaseDate);currentYear := year(PurchaseDate);path>monthSpend;h
</fdl></field>
</trackers>
aplicar estas derivaciones al enfoque RetailTransAprilSorted.ftr para crear un nuevo enfoqueRetailTransAprilRunningSpend.ftr:qstrack -trackers trackers-monthlySpend.xml -key CustomerID-input RetailTransAprilSorted.ftr-output RetailTransAprilRunningSpend.ftr
También consulte
XML en Portrait Miner en la página 342
qsderive en la página 63
Portrait Miner 7.172
qstrack
qsselectSinopsis qsselect -selections <archivo de selecciones>
-input <enfoque de origen> [-subfocus <subenfoque>]
[-macro <nombre>=< valor>[-macro <nombre>=<valor> ...] | -macro@<nombre>=<archivo de macro>]
[-output <enfoque de destino>>] [-force][-random <semilla entera>] [-savexml][-selection <campo>]
Descripción: Copiar todos los campos (por defecto) del enfoque de origen en el enfoque de destino;derivar un campo numérico en el enfoque de destino según la definición del primer campo (por defecto)en el archivo de selecciones, que es un archivo que contiene instrucciones create o un archivo XMLcorrespondiente. Por defecto, anexar el campo derivado al enfoque de origen.
Aplicar una selección de registro al nuevo campo; seleccionar únicamente los registros con el valor 1.
Argumentos opcionales
EfectoOpción
Consulte la La opción de línea de comandos-force en la página 24.
-force
Consulte la La opción de línea de comandos-macro en la página 25.
-macro <nombre>=<valor>
Consulte la La opción de línea de comandos-macro en la página 25.
-macro @<archivo de macros>
En lugar de anexar campos derivados al enfoquede origen, copiar el enfoque de origen al enfoque
-output <enfoque de destino>
de destino y anexar los campos derivados alenfoque de destino.
Utilizar la semilla entera (en lugar de 0) para todaslas funciones FDL de número aleatorio queaparezcan en expresiones de derivación.
-random <semilla entera>
Además de derivar uno o más campos y aplicaruna selección, escriba la(s) expresión(es) de la
-savexml
derivación del archivo de selecciones en losformatos TML y XML en los archivos<salida>.tml y <salida>.xml, en el mismodirectorio del enfoque de destino, donde <salida>es el nombre de base del enfoque de salida.
En lugar de usar la definición del primer campo enel archivo de selecciones, usar la definición delcampo especificado.
-selection <campo>
73Guía de referencia del comando de creación de datos y TML
Capítulo 5: Comandos para procesar enfoques
EfectoOpción
Usar el subenfoque especificado del enfoque deorigen.
-subfocus <subenfoque>
Además de estas opciones de línea de comandos, qsselect acepta las opciones comunes a todos loscomandos de creación de datos [consulte Opciones estándar de la línea de comandos en la página21].
Nota: • Comúnmente, las expresiones de derivación en el archivo de selecciones son aplicacionesde operadores relacionales o lógicos, que producen los valores 1 para "true" y 0 para "false".En tales casos, qsselect selecciona aquellos registros para los que la expresión lógica esverdadera.
• Si se especifica un enfoque de destino, compartirá los datos subyacentes con el enfoque deorigen.
• El XML para qsselect adopta la forma de un elemento de <selections>, que contieneelementos <field context="selection">, cada uno de los cuales, a su vez, debecontener una expresión FDL en un elemento <fdl>.
• Puede usar el archivo XML que guardó qsselect como un archivo de selecciones mediante laopción -savexml.
Ejemplos:
Dado el archivo de selecciones selections-sixmonth.tml, que contiene lo siguiente:create lastSixMonths :=countwholemonths(PurchaseDate, #1999/07/01) < 6;
aplique esta selección al enfoque RetailTransApril.ftr:qsselect -selections selections-sixmonth.tml-input RetailTransApril.ftr-output RetailTransApril6Months.ftr
Dado el archivo de selecciones selections-random.tml, que contiene lo siguiente:create random := rndUniform() < 0.1;
aplique esta selección para seleccionar el 10 % de los registros en el enfoque RetailTransApril.ftr,con una semilla conocida (12345678), para permitir que se seleccione la misma serie de registros enaplicaciones posteriores:qsselect -selections selections-random.tml -random 12345678-input RetailTransApril.ftr-output RetailTransAprilSampleSelect.ftr
Alternativamente, dado el archivo XML de selecciones selections-random.xml, que contiene losiguiente:<?xml version="1.0" encoding="UTF-8"?><selections xmlns="http://www.quadstone.com/xml"?>
<field name="random" context="selection"><fdl seed="12345678">rndUniform() < 0.1</fdl>
</field></selections>
Portrait Miner 7.174
qsselect
Aplique esta selección para seleccionar el mismo 10% de los registros en el enfoqueRetailTransApril.ftr utilizando la misma semilla:qsselect -selections selections-random.xml-input RetailTransApril.ftr-output RetailTransAprilSampleSelect.ftr
También consulteEspecificación de selección para qsselect en la página 352
qsrenamefieldsSinopsis qsrenamefields
-input <enfoque de origen>
{-map <nombre anterior>=<nombre nuevo> | -map @<archivo de mapeo de entrada>}[{-map <nombre anterior>=<nombre nuevo> | -map @<archivo de mapeo de entrada>}...]
[-output <enfoque de destino>] [-force]
[-invert]
[-mapping <archivo de mapeo de salida>]
qsrenamefields
-input <enfoque de origen>
[-map QSCompliant]
[-output <enfoque de destino>] [-force]
[-invert]
[-mapping <archivo de mapeo de salida>]
Descripción: renombrar los campos del enfoque de origen mediante la aplicación de mapeos de<nombre anterior>=<nombre nuevo> y mapeos en archivos de mapeo de entrada.
Alternativamente, renombrar los campos en el enfoque de origen a archivos únicos y equivalentes quesean compatibles con Portrait Miner, mediante un algoritmo incorporado .
Argumentos opcionales
ObjetivoComando
Consulte la La opción de línea de comandos-force en la página 24.
-force
Invertir el sentido de los mapeos de nombre decampo.
-invert
75Guía de referencia del comando de creación de datos y TML
Capítulo 5: Comandos para procesar enfoques
ObjetivoComando
Crear un archivo XML de mapeo, que describa elmapeo real utilizado desde los nombres de archivoanteriores a los nuevos.
Se puede utilizar este archivo como un archivo demapeo de entrada para qsrenamefields. Junto a
-mapping <archivo de mapeo de salida>
la opción -invert, se puede utilizar luego unmapeo inverso de nombre de campo inclusocuando el mapeo original campo-nombre sea unalgoritmo (y no necesariamente de uno a uno).
En lugar de renombrar directamente los camposen el enfoque de origen, copiar el enfoque de
-output <enfoque de destino>
origen al enfoque de destino y renombre loscampos en el enfoque de destino.
Además de estas opciones de línea de comandos, qsrenamefields acepta las opciones comunes atodos los comandos de creación de datos [consulte Opciones estándar de la línea de comandos enla página 21].
Nota: • Omitir el argumento -map completamente tiene el mismo efecto que especificar -mapQSCompliant.
• Un archivo de mapeo de entrada tiene formato XML o contiene pares <nombreantiguo>=<nombre nuevo> en líneas sucesivas del archivo.
• Si se utiliza más de un argumento -map, qsrenamefields implementa los mapeos de nombrede campo en el orden que aparecen en la línea de comandos.
• Si se intenta renombrar los campos y alguno se repite, qsrenamefields se lo advertirá y norealizará la acción.
• Si se especifica un enfoque de destino, compartirá los datos subyacentes con el enfoque deorigen.
• No se puede renombrar un campo más de una vez invocando una sola vez el comando.• Si el enfoque de origen incluye subenfoques, qsrenamefields renombra los campos en toda
la jerarquía de los subenfoques.• El XML para qsrenamefields adopta la forma de un elemento <mappingset> que contiene
elementos <map>, cada uno de los cuales debe contener un elemento <name> y <alias>.• Dado un enfoque producido por qsimportdb, que puede incluir nombres de campos que no
sean compatibles con Portrait Miner, se puede utilizar qsrenamefields (con -mapQSCompliant) para convertir el enfoque en uno que se pueda utilizar en Decision Studio ocon otros comandos de creación de datos.
• Es posible acceder a algunas de las funciones de qsrenamefields mediante Visor de Tablasen Decision Studio o mediante el cuadro de diálogo Cambiar nombres de campos disponibleen Portrait Miner .
Ejemplos
Portrait Miner 7.176
qsrenamefields
Crear un enfoque, RetailCustAprilRenamed1.ftr, con el campo StartDate renombrado comoInitialized, Age renombrado como CurrentAge, y Gender renombrado como Sex:qsrenamefields -map StartDate=Initialized-map Age=CurrentAge -map Gender=Sex-input RetailCustApril.ftr -output RetailCustAprilRenamed1.ftr
Alternativamente, dado el archivo de mapeo de entrada mapping-file.txt, con el siguiente contenido:StartDate=InitializedAge=CurrentAgeGender=Sex
implementar este archivo de mapeo para crear el enfoque RetailCustAprilRenamed2.ftr con elcampo StartDate renombrado como Initialized, Age renombrado como CurrentAge, y Genderrenombrado como Sex:qsrenamefields -map @mapping-file.txt-input RetailCustApril.ftr -output RetailCustAprilRenamed2.ftr
o, alternativamente, dado el archivo XML de mapeo de entrada mapping-file.xml, con el siguientecontenido:<?xml version="1.0" encoding="UTF-8"?><mappingset xmlns="http://www.quadstone.com/xml">
<map><name>StartDate</name><alias>Initialized</alias>
</map><map>
<name>Age</name><alias>CurrentAge</alias>
</map><map>
<name>Gender</name><alias>Sex</alias>
</map></mappingset>
implementar este archivo de mapeo para crear el enfoque RetailCustAprilRenamed2.ftr con elcampo StartDate renombrado como Initialized, Age renombrado como CurrentAge, y Genderrenombrado como Sex:qsrenamefields -map @mapping-file.xml-input RetailCustApril.ftr -output RetailCustAprilRenamed2.ftr
Crear un enfoque RetailCustAprilQSCompliant.ftr con nombres de campos que sean compatiblescon Portrait Miner:qsrenamefields-input RetailCustApril.ftr-output RetailCustAprilQSCompliant.ftr
También consulteEspecificación de mapeo del nombre de campo para qsrenamefields en la página 356
77Guía de referencia del comando de creación de datos y TML
Capítulo 5: Comandos para procesar enfoques
qsexportmetadataSinopsis qsexportmetadata -input <enfoque de origen> [-output <archivo demetadata>]
Descripción: Exportar metadata del enfoque de origen, que incluye el historial del enfoque, la creaciónde rangos, los comentarios, las derivaciones, las interpretaciones, las selecciones de registros, laestructura de subenfoque y el subenfoque por defecto. Por defecto, escribir la información en una salidaestándar.
Argumentos opcionales
EfectoOpción
Crear este archivo de metadata en lugar de escribirla salida estándar.
-output <archivo de metadata desalida>
Además de esta opción de línea de comandos, qsexportmetadata acepta las opciones comunes atodos los comandos de creación de datos [consulte Opciones estándar de la línea de comandos enla página 21].
Nota: • La salida de metadata de qsexportmetadata es un formato de archivo basado en XML [consulteEspecificación de metadatos para qsimportmetadata en la página 342].
• Mediante Portrait Miner, se puede acceder a las funciones de qsexportmetadata medianteel cuadro de diálogo Exportar metadata .
Ejemplos
Crear un nuevo archivo XML RetailTransApril.xml que contenga la metadata del enfoqueRetailTransApril.ftr:qsexportmetadata -input RetailTransApril.ftr-output RetailTransApril.xml
También consulteqsimportmetadata en la página 78
qsimportmetadataSinopsis qsimportmetadata
-input <enfoque de origen> -metadata <archivo de metadata>[-output <enfoquede destino>] [-force] [-details <tipo> [, <tipo> ...] -fields <campo> [,<campo> ...] | -fields @<archivo de campos>] -fields <campo> [, <campo> ...]| -fields @<archivo de campos>] [-dryrun] [-warn]
Portrait Miner 7.178
qsexportmetadata
Descripción: Importar metadata, que incluye creación de rangos, comentarios, derivaciones,interpretaciones, selecciones de registros, estructura de subenfoque y subenfoque por defecto delarchivo de metadata al enfoque de origen.
Argumentos opcionales
EfectoOpción
Importar los tipos especificados de metadata, quepueden incluir rangos, comentarios,
-details <tipo> [, <tipo> ...]
derivaciones, historial,interpretaciones, selecciones, iniciar(subenfoque por defecto) y subenfoques(estructura de subenfoques). Las interpretacionescategóricas se clasifican como creaciones derangos, no interpretaciones. Si esta opción no estádisponible, se importan todos los tipos de metadata(excepto historial).
No importar metadata, sino visualizar la informaciónsobre la metadata que se habría importado.
-dryrun
En lugar de importar metadata de campo de todoslos campos, importar metadata solamente de loscampos especificados.
-fields <campo> [, <campo> ...]
En lugar de importar metadata de campo de todoslos campos, importar metadata solamente de los
-fields @<archivo de campos>
campos enumerados en el archivo de campos (unopor línea).
Consulte la La opción de línea de comandos-force en la página 24.
-force
En lugar de implementar directamente la metadataal enfoque de origen, copiar el enfoque de origen
-output <enfoque de destino>
al enfoque de destino e implementar la metadataal enfoque de destino.
En lugar de cancelar la operación si no es posibleimportar toda la metadata, emitir una advertenciae intentar importar la metadata restante.
-warn
Importar metadata de campo de todos los campos,a excepción de los campos especificados.
-xfields <campo> [, <campo> ...]
Importar metadata de campo de todos los campos,a excepción de los que están enumerados en elarchivo de campos (uno por línea).
-xfields @<archivo de campos>
Además de estas opciones de línea de comandos, qsimportmetadata acepta las opciones comunes atodos los comandos de creación de datos [consulte Opciones estándar de la línea de comandos enla página 21].
79Guía de referencia del comando de creación de datos y TML
Capítulo 5: Comandos para procesar enfoques
Nota: • Si se importa el historial, y el archivo de metadata incluye metadata del historial que no estávacía, qsimportmetadata sustituye la metadata del historial en el enfoque; si la metadata delhistorial en el archivo de metadata no se encuentra o está vacía, qsimportmetadata no sustituyela metadata del historial en el enfoque.
• Si se especifica un enfoque de destino, compartirá los datos subyacentes con el enfoque deorigen.
• El archivo de metadata utiliza un formato de archivo basado en XML [consulte Especificaciónde metadatos para qsimportmetadata en la página 342]. El XML de metadata paraqsimportmetadata adopta la forma de un elemento de <metadata> que contiene elementosde <focus>, los cuales pueden contener elementos de <comment>, <history>, <focus>anidado y <field>. Los elementos de <field> pueden contener elementos de <comment>,<binning>, <recordselection> y <fdl>.
• Si se importa un rango categórico a un campo que no tiene una interpretación categórica,qsimportmetadata primero interpreta que el campo es categórico y crea categorías básicas apartir de los valores que contiene el campo (y un rango denominado "nodo sin nombre"). Silas categorías básicas en el rango importado hacen referencia a valores a los que las categoríasbásicas del campo no hacen referencia, qsimportmetadata agrega estos valores como categoríasbásicas. Finalmente, agrega las categorías (si existen) desde el rango importado directamentea continuación de las categorías básicas del campo (a menos que el rango importado tengael mismo conjunto de categorías básicas que el campo, en cuyo caso qsimportmetadata omiteel primer nivel del rango importado y agrega el resto de los niveles directamente a continuaciónde las categorías básicas del campo).
• Si se importa un rango categórico a un campo con interpretación categórica, y el rango importadocontiene un elemento <category> como mínimo, qsimportmetadata borra la interpretacióncategórica en el campo (y elimina todos los rangos categóricos existentes en el campo) antesde importar el rango. (Si el rango importado no contiene elementos <category>,qsimportmetadata no realiza acción alguna).
• Si importa una estructura de subenfoque, el subenfoque recién creado hereda automáticamenteatributos de campo (como creación de rangos y candidatos de análisis) del subenfoque principal.Esto ocurre incluso si no se especifican los atributos de manera explícita en la definición desubenfoque, porque estos se establecen en el proceso de aplicar la estructura del subenfoque.
• Un subenfoque definido en el archivo de metadata tiene prioridad sobre un subenfoque conel mismo nombre en el archivo de origen, por lo que se sobrescribe cualquier metadata existenteasociada con dicho enfoque.
• Utilizando Portrait Miner, se puede acceder a la mayoría de las funciones de qsimportmetadatamediante el cuadro de diálogo Importar metadata para enfoque .
Ejemplos
Dado el archivo de metadata de enfoque metadata-fieldfocus.xml, con el siguiente contenido:<?xml version="1.0" encoding="UTF-8"?><metadata xmlns="http://www.quadstone.com/xml">
<focus><comment>This focus was created for the Retail Analysis
project.</comment><field name="Age">
<comment>Imported from database field DOBin CUSTINFO.</comment>
</field>
Portrait Miner 7.180
qsimportmetadata
<field name="Gender"><comment>Imported from CUSTINFO:SEX,mapping 1="M" and 2="F".</comment></field>
</focus></metadata>
importar este archivo de metadata para crear un enfoque RetailCustAprilCommented2.ftr, quecontenga comentarios de campo y un comentario del enfoque:qsimportmetadata -metadata metadata-fieldfocus.xml-input RetailCustApril.ftr-output RetailCustAprilCommented2.ftr
Otra opción es importar el mismo archivo de metadata para crear un enfoqueRetailCustAprilCommented3.ftr, con un comentario de campo solo en el campo Age:qsimportmetadata -fields Age -metadata metadata-fieldfocus.xml-input RetailCustApril.ftr-output RetailCustAprilCommented3.ftr
Dado el archivo de metadata de enfoque metadata-focushtml.xml, con los siguientes contenidos:<?xml version="1.0" encoding="UTF-8"?><metadata xmlns="http://www.quadstone.com/xml">
<focus><comment xhtml="true">
<div>This focus was created for theRetail Analysis project.<br/>An audit is available on the<a href="http://intranet.company.com/audits">intranet</a>.
</div></comment>
</focus></metadata>
importe este archivo de metadata para crear un enfoque RetailCustAprilCommented4.ftr, quecontenga un comentario de enfoque con formato HTML:qsimportmetadata -metadata metadata-focushtml.xml-input RetailCustApril.ftr-output RetailCustAprilCommented4.ftr
Dado el archivo de metadata de enfoque metadata-catbinning1.xml, con los siguientes contenidos:<?xml version="1.0" encoding="UTF-8"?><metadata xmlns="http://www.quadstone.com/xml">
<field name="MaritalStatus"><binning>
<categorical><categories>
<category name="Single" levelname="Summarized"><category name="Single" value="1"
levelname="Detail"/></category>
<category name="Married"><category name="Married" value="2"/>
</category><category name="Other">
<category name="Divorced" value="3"/><category name="Widowed" value="4"/>
81Guía de referencia del comando de creación de datos y TML
Capítulo 5: Comandos para procesar enfoques
<category name="Separated" value="5"/></category>
</categories></categorical>
</binning></field>
</metadata>
importe este archivo de metadata para crear un enfoque Lion1.ftr, en el que MaritalStatus tieneun rango categórico con dos niveles (uno de ellos denomina las categorías de base y el otro fusionatres categorías):qsimportmetadata -metadata metadata-catbinning1.xml-input Lion.ftr -output Lion1.ftr
Dado el archivo de metadata de enfoque metadata-catbinning2.xml, con los siguientes contenidos:<?xml version="1.0" encoding="UTF-8"?><metadata xmlns="http://www.quadstone.com/xml">
<field name="SRVOverallSatisfaction"><binning>
<categorical><categories>
<category name="Very Dissatisfied" value="VD"/><category name="Dissatisfied" value="D"/><category name="Neutral" value="N"/><category name="Fairly Satisfied" value="FS"/><category name="Very Satisfied" value="VS"/>
</categories></categorical>
</binning></field>
</metadata>
importe este archivo de metadata para crear un enfoque Lion2.ftr, en el queSRVOverallSatisfaction tiene un rango categórico con un orden particular de las categorías, desde"Muy insatisfecho" hasta "Muy satisfecho":qsimportmetadata -metadata metadata-catbinning2.xml-input Lion1.ftr -output Lion2.ftr
También consulteqsexportmetadata en la página 78
qsupdateSinopsisqsupdate -from <enfoque de plantilla> -to <enfoque de destino> [-force]
Descripción: Aplica la metadata del enfoque que está en el enfoque de plantilla al enfoque de destinoe incluye las definiciones de subenfoques y campos derivados, además de cualquier interpretación decampo, rango y selecciones de registro.
Argumentos opcionales
Portrait Miner 7.182
qsupdate
EfectoOpción
Consulte la La opción de línea de comandos-force en la página 24.
-force
Además de esta opción de línea de comando, qsupdate acepta las opciones comunes de todos loscomandos de creación de datos [consulte Opciones estándar de la línea de comandos en la página21].
Nota: • El enfoque de destino no puede tener ninguna interpretación de campo, rango ni selecciónde registro existentes.
• Si el enfoque de plantilla y el enfoque de destino tienen diferentes nombres de campo o tiposde datos, es posible que qsupdate no pueda copiar algunos aspectos de la metadata delenfoque de plantilla.
• Este comando de creación de datos es obsoleto: en cambio, utilice qsexportmetadata yqsimportmetadata.
Ejemplo
Aplique derivaciones, interpretaciones, rangos y selecciones de registro del enfoqueRetailCustApril.ftr previamente procesado al enfoque RetailCustMay.ftr recién importado:qslink -from RetailCustMay.ftr -to RetailCustMayUpdated.ftrqsupdate -from RetailCustApril.ftr -to RetailCustMayUpdated.ftr
83Guía de referencia del comando de creación de datos y TML
Capítulo 5: Comandos para procesar enfoques
Capítulo 6Comandos para combinarenfoques
En esta sección:
• Acerca de la combinación de enfoques . . . . . . . . . . . . . .86• qsjoin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .86• qsmerge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .90
Acerca de la combinación de enfoquesPortrait Miner ofrece dos formas de combinar los campos de múltiples enfoques para crear uno nuevo,el primero ("focus join") es una variante de un left join. Se puede utilizar la unión de enfoques enPortrait Miner o a través del comando de creación de datos qsjoin de Portrait Miner.
El segundo método utiliza Decision Studio para importar campos desde un enfoque en una variante deun left join de dos tablas.
También se pueden combinar los registros de varios enfoques en Portrait Miner o a través delcomando de creación de datos qsmerge de Portrait Miner.
También consulte
dblookup en la página 318
qsjoinSinopsis qsjoin
-input <enfoque primario> [-subfocus <subenfoque>]
{-keys <campo clave> [, <campo clave>] [, <campo clave>] | -key @<archivoclave>}
[-output <enfoque de destino>] [-force]
[-equalnulls] [-importmeta] [-onetoone]
[-match <prefijo>] [-unmatched <prefijo>]
-join <enfoque secundario> [ -subfocus <subenfoque>] -fields <campo> [,<campo> ...] | -fields @<archivo de campos> | -tags <etiqueta> [, <etiqueta>...]] -xfields <campo> [, <campo> ...] | -xfields @<archivo de campos> |-xtags <etiqueta> [, <etiqueta> ...]] [-join <enfoque secundario> [ -subfocus<subenfoque>] -fields <campo> [, <campo> ...] | -fields @<archivo de campos>| -tags <etiqueta> [, <etiqueta> ...]] -xfields <campo> [, <campo> ...] |-xfields @<archivo de campos> | -xtags <etiqueta> [, <etiqueta> ...]] ...]
Descripción: Une campos de los enfoques secundarios con el enfoque primario, haciendo coincidir losregistros mediante el uso de los campos clave. Por defecto, una todos los campos que no sean camposclave de los enfoques secundarios.
A menos que se utilice la opción -onetoone, qsjoin realiza de forma eficaz una serie de unionesexternas de izquierda (en las que el enfoque primario es la tabla de la izquierda) al incorporar los camposde cada uno de los enfoques secundarios de a uno a la vez. Los valores clave de un registro del enfoqueprimario identifican de forma única un registro correspondiente de cada uno de los enfoques secundarios(en los que haya uno).
Portrait Miner 7.186
Acerca de la combinación de enfoques
Argumentos opcionales
EfectoOpción
Al hacer coincidir los registros, se debe tratar elvalor nulo de un campo clave como un valor
-equalnulls
ordinario (es decir, considerar a todos los casosdel valor nulo como iguales entre sí, pero diferentesde todos los otros valores).
En lugar de unir todos los campos del enfoquesecundario, une solo los campos especificados,
-fields <campo> [, <campo> ...]
En lugar de unir todos los campos del enfoquesecundario, se deben unir solamente los campos
-fields @<archivo de campos>
especificados (uno por línea) en el archivo decampos.
Consulte la La opción de línea de comandos-force en la página 24. Esto también afecta los
-force
enfoques creados mediante el uso de la opción-unmatched.
Importar metadata del campo de los enfoquessecundarios.
-importmeta
Para cada enfoque secundario, se debe crear uncampo de enteros adicional en el enfoque de
-match <prefijo>
salida, que contiene el valor 1 para los registrosque incluyen datos del enfoque secundario y elvalor 0 para todos los otros registros. Se debeutilizar el prefijo dado junto con el nombre delenfoque secundario para denominar al campo.
En lugar de realizar una unión externa de izquierda,intente realizar una coincidencia uno a uno de losgrupos de registros con las mismas claves.
-onetoone
En lugar de unir campos al enfoque primario, copieel enfoque primario en el enfoque de destino yluego una los campos con el enfoque de destino.
-output <enfoque de destino>
Utilice los subenfoques especificados del enfoqueprimario o secundario mencionado en último lugar
-subfocus <subenfoque>
en la línea de comando (mediante el uso de-input o -join).
En lugar de unir todos los campos del enfoquesecundario, una solamente los campos que tienenlas etiquetas especificadas.
-tags <etiqueta> [, <etiqueta> ...]
Para cada enfoque secundario, se debe crear unenfoque de salida alternativo preservando los
-unmatched <prefijo>
87Guía de referencia del comando de creación de datos y TML
Capítulo 6: Comandos para combinar enfoques
EfectoOpción
registros del enfoque secundario cuyos camposclave no coinciden con los registros del enfoqueprimario. Utilice el prefijo dado junto con el nombredel enfoque secundario para denominar el enfoquede salida alternativo.
Una todos los campos del enfoque, excepto loscampos especificados.
-xfields <campo> [, <campo> ...]
Una todos los campos del enfoque, excepto loscampos especificados (uno por línea) en el archivode campos.
-xfields @<archivo de campos>
Una todos los campos del enfoque, excepto loscampos que tienen las etiquetas especificadas.
-xtags <etiqueta> [, <etiqueta> ...]
Además de estas opciones de línea de comando, qsjoin acepta las opciones comunes a todos loscomandos de creación de datos [consulte Opciones estándar de la línea de comandos en la página21].
Nota:
• Para cada campo clave nombrado, todos los campos de ese nombre en los enfoques primarios ysecundarios deben ser de un tipo compatible, es decir, todos campos de secuencia, todos camposde fecha o todos campos numéricos.
• Los enfoques primarios y secundarios deben estar clasificados según los campos clave [consulteqssort en la página 62]. Si los enfoques no están clasificados de forma apropiada, se produce unfallo en qsjoin y se envía un mensaje de error a tal efecto.
• En el caso de una unión externa de izquierda (el tipo de unión predeterminado de qsjoin), dos registrosde un enfoque secundario no pueden compartir las mismas claves.
• En el caso de una unión externa de izquierda (el tipo de unión predeterminado de qsjoin), si un enfoquesecundario no contiene ningún registro que corresponda a un registro dado del enfoque primario,qsjoin utiliza un registro nulo en su lugar.
• En el caso de una unión externa de izquierda (el tipo de unión predeterminado para qsjoin), si másde un registro del enfoque primario tienen el mismo conjunto de claves, se unen copias de los registroscorrespondientes (si los hay) de los enfoques secundarios con cada uno de estos registros.
• Si se utiliza la opción -onetoone, para cada conjunto de registros del enfoque primario que compartenuna combinación determinada de valores de campos clave, qsjoin intenta unir campos de registrossucesivos de un enfoque secundario que comparten la misma combinación de valores de camposclave, de forma tal que los registros coincidan uno a uno
Si, para una clave determinada, hay menos registros en un enfoque secundario que en un enfoqueprimario, qsjoin utiliza registros nulos en lugar de perder registros del enfoque secundario.
Si, para una clave determinada, hay más registros en un enfoque secundario que en un enfoqueprimario, qsjoin utiliza los registros excedentes del enfoque secundario como no coincidentes. Si seutiliza la opción -unmatched, qsjoin preserva estos registros en un enfoque de salida alternativo.
• Si, de alguna otra manera, la operación de unión da por resultado nombres de campo duplicados,qsjoin cambiará el nombre de los campos según sea necesario al agregarles sufijos numéricos.
Portrait Miner 7.188
qsjoin
• Si se especifica un enfoque de destino, este comparte datos subyacentes con el enfoque primario(pero independientemente del enfoque secundario).
• Al hacer coincidir los registros, qsjoin generalmente trata a cada caso del valor nulo de un campoclave como un valor nuevo y diferente: un registro con el valor nulo de un campo clave nuncacorresponde a un registro de otro enfoque. Se puede anular este comportamiento mediante el usode la opción -equalnulls.
• En el caso de la compatibilidad con versiones anteriores, si se especifica solo un enfoque secundarioy se utiliza la opción -match o -unmatched, el nombre del enfoque secundario no se utiliza paranombrar el campo de coincidencia ni el enfoque de salida alternativo.
• Utilizando Portrait Miner, se puede acceder a la mayoría de las funciones de qsjoin mediante elasistente Unir campos con el enfoque. .
Ejemplos
Crear un enfoque RetailAprilAnalysis1.ftr combinando registros de los enfoquesRetailCustApril.ftr y RetailAggregationsApril.ftr:qsjoin -input RetailCustApril.ftr -join RetailAggregationsApril.ftr-keys CustomerID -output RetailAprilAnalysis1.ftr
Otra opción es agregar solo los campos numberPurchases y totalAmount del enfoqueRetailAggregationsApril.ftr:qsjoin -fields numberPurchases,totalAmount-input RetailCustApril.ftr -join RetailAggregationsApril.ftr-keys CustomerID -output RetailAprilAnalysis2.ftr
Crear el enfoque RetailAprilAnalysis3.ftr combinando registros de los enfoquesRetailCustApril.ftr, RetailAggregationsApril.ftr, y RetailAggregationsMay.ftr:qsjoin -input RetailCustApril.ftr -join RetailAggregationsApril.ftr-join RetailAggregationsMay.ftr-keys CustomerID -output RetailAprilAnalysis3.ftr
Repetir el paso anterior y escribir cualquier registro de transacción sin coincidencia en el enfoqueunmatchedRetailAggregationsApril.ftr o unmatchedRetailAggregationsMay.ftr:qsjoin -unmatched unmatched-input RetailCustApril.ftr -join RetailAggregationsApril.ftr-join RetailAggregationsMay.ftr-keys CustomerID -output RetailAprilAnalysis4.ftr
Repetir el paso anterior, uniendo solamente un subconjunto de los campos de los enfoques secundarios:qsjoin -unmatched unmatched-input RetailCustApril.ftr-join RetailAggregationsApril.ftr-fields numberPurchasesApr,totalAmountApr-join RetailAggregationsMay.ftr-fields numberPurchasesMay,totalAmountMay-keys CustomerID -output RetailAprilAnalysis5.ftr
También consulteqsmerge en la página 90
89Guía de referencia del comando de creación de datos y TML
Capítulo 6: Comandos para combinar enfoques
qsmergeSinopsis qsmerge
-input <enfoque primario> [-subfocus <subenfoque>]
{-keys <campo clave> [, <campo clave>] [, <campo clave>] | -key @<archivoclave>}
[-equalnulls]
-output <enfoque de destino> [-force]
[-nodups]
-merge <enfoque secundario> [ -subfocus <subenfoque>][-merge <enfoquesecundario> [ -subfocus <subenfoque>] ...]
Descripción Combina registros de los enfoques primarios y secundarios al intercalarlos para crear elenfoque de destino, de manera tal que se mantengan ordenados según los campos clave [consulteqssort en la página 62].
Argumentos opcionales
EfectoOpción
Al hacer una prueba para detectar clavesduplicadas, trate el valor null de un campo clave
-equalnulls
como un valor ordinario (es decir, considere a todoslos casos del valor nulo como iguales entre ellos,pero diferentes a todos los otros valores).
Consulte la La opción de línea de comandos-force en la página 24.
-force
Evite duplicar valores de campos clave: si dos omás registros comparten valores de campos clave,
-nodups
retenga el primero de esos registros del primerenfoque para contener dicho registro (tratando losenfoques en el siguiente orden: primario,secundario mencionado en primer lugar, etc.);descarte el resto de los registros que tienen losmismos valores de campos clave.
Utilice los subenfoques especificados del enfoqueprimario o secundario mencionado en último lugar
-subfocus <subenfoque>
en la línea de comando (mediante el uso de-input o -merge).
Además de estas opciones de línea de comando, qsmerge acepta las opciones comunes a todos loscomandos de creación de datos [consulte Opciones estándar de la línea de comandos en la página21].
Portrait Miner 7.190
qsmerge
Nota: • Los enfoques primarios y secundarios deben estar clasificados según los campos clave [consulteqssort en la página 62]. Si los enfoques no están clasificados de forma apropiada, se produceuna falla en qsmerge y se envía un mensaje de error a tal efecto.
• Los campos correspondientes en los enfoques primarios y secundarios (identificados pornombre) deben ser exactamente del mismo tipo, pero no necesariamente deben estar ordenadosde la misma manera.
• El enfoque de destino contiene el mismo conjunto de campos que el enfoque primario, ordenadode la misma manera. Si un enfoque secundario contiene campos que no están en el enfoqueprimario, qsmerge los ignora. Si el enfoque primario contiene campos que no están en unenfoque secundario, qsmerge utiliza el valor nulo en el lugar de los valores que faltan en elenfoque secundario.
• Si dos o más registros comparten los mismos valores de campos clave, aquellos del enfoqueprimario aparecen primero en el enfoque de destino, seguidos por aquellos de cada enfoquesecundario de a uno a la vez. A menos que se utilice la opción -nodups, la operación decombinación no elimina ningún registro que tenga claves duplicadas.
• Al utilizar el mismo enfoque dos veces en la línea de comando, como argumento tanto para-input como para -merge, y utilizar la opción -nodups, se puede utilizar qsmerge paraeliminar registros que tienen valores clave duplicados de un enfoque.
• El enfoque de destino es independiente de los enfoques primario y secundario, es decir queno comparten datos subyacentes.
• Al ordenar los registros o realizar pruebas para detectar claves duplicadas, qsmerge trata alvalor nulo de un campo clave como un valor nuevo y distinto: un registro con el valor nulo deun campo clave nunca corresponde a un registro de otro enfoque. Se puede anular estecomportamiento mediante el uso de la opción -equalnulls.
• Al utilizar Portrait Miner, se puede acceder a la mayoría de las funciones de qsmerge medianteel cuadro de diálogo Combinar registros. .
• Si los enfoques combinados contienen tipos de datos heredados, en el enfoque de salida lostipos heredados se convierten en el tipo de dato admitido más apropiado.
Si se produce un error en la conversión debido a que el tipo de dato no tiene almacenamientosuficiente, en lugar de que se trunque el contenido, el campo contendrá el valor null. En estecaso, aparece un mensaje de resumen que muestra el campo afectado y la cantidad de entradasal momento de la finalización.
• Para combinar dos enfoques, los campos que se combinarán deben incluir tipos de datoscompatibles.
Ejemplos
Crear un enfoque, RetailTransAprilMayJune.ftr, que contenga todos los registros de los enfoquesRetailTransAprilSorted.ftr, RetailTransMaySorted.ftr y RetailTransJuneSorted.ftr:qsmerge -input RetailTransAprilSorted.ftr-merge RetailTransMaySorted.ftr-merge RetailTransJuneSorted.ftr-keys CustomerID -output RetailTransAprilMayJune.ftr
Otra opción es incluir solo los registros del enfoque RetailTransAprilSorted.ftr, cuyos valoresclave también aparecen en el enfoque RetailTransMaySorted.ftr:qsmerge -nodups-input RetailTransAprilSorted.ftr
91Guía de referencia del comando de creación de datos y TML
Capítulo 6: Comandos para combinar enfoques
-merge RetailTransMaySorted.ftr-keys CustomerID -output RetailTransAprilMayNodups.ftr
También consulteqsjoin en la página 86
Portrait Miner 7.192
qsmerge
Capítulo 7Comandos para administrarenfoques
En esta sección:
• qscopy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .94• qslink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .95• qsmove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .95• qsremove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .96• qsarchive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97• qsunzip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .98
qscopySinopsis qscopy -from <enfoque de origen>
{-to <enfoque de destino> | -to <directorio>} [-force]
Descripción: Copiar el enfoque de origen al enfoque de destino o a un enfoque en el directorioespecificado (preservando el nombre del enfoque de origen). Copiar los datos subyacentes para queel nuevo enfoque sea independiente de demás enfoques.
Argumentos opcionales
EfectoOpción
Consulte la La opción de línea de comandos-force en la página 24.
-force
Además de esta opción de línea de comandos, qscopy acepta las opciones comunes a todos loscomandos de creación de datos [consulte Opciones estándar de la línea de comandos en la página21].
Debido a la independencia potencial de los enfoques, no debe intentar copiar unenfoque mediante utilidades estándares del sistema operativo. En cambio, siempredebe utilizar qscopy o qslink (o Portrait Miner).
Nota: • Si intenta copiar un enfoque sobre un enfoque existente, qscopy emite una advertencia y nohace nada más.
• Para crear un copia enlazada de un enfoque, en la que la copia comparta los datos subyacentescon el enfoque original, debe utilizar qslink.
• Para crear una copia de un enfoque, o de un subconjunto de un enfoque, sin incluir metadata, debe utilizar qsimportfocus.
• También puede acceder a las funcionalidades de qscopy mediante Portrait Miner .
Ejemplo
Crear un nuevo enfoque, RetailArchiveMay.ftr, y guardar los resultados de la sesión de análisisde mayo en el enfoque RetailAnalysisMay.ftr:qscopy -from RetailAnalysisMay.ftr -to RetailArchiveMay.ftr
También consulte
qsmove en la página 95
qsremove en la página 96
Portrait Miner 7.194
qscopy
qslinkSinopsis qslink -from <enfoque de origen>
{-to <enfoque de destino> | -to <directorio>} [-force]
Descripción: Copiar el enfoque de origen al enfoque de destino o a un enfoque en el directorioespecificado (preservando el nombre del enfoque de origen). Compartir los datos subyacentes con elenfoque original. (El nuevo enfoque es dependiente del enfoque original).
Argumentos opcionales
EfectoOpción
Consulte la La opción de línea de comandos-force en la página 24.
-force
Además de esta opción de línea de comandos, qslink acepta las opciones comunes a todos loscomandos de creación de datos [consulte Opciones estándar de la línea de comandos en la página21].
Nota: • Si intenta copiar un enfoque sobre un enfoque existente, qslink emite una advertencia y nohace nada más.
• Para crear una copia independiente de un enfoque, en la que la copia no comparta los datossubyacentes con el enfoque original, debe utilizar qscopy.
• También puede acceder a las funcionalidades de qslink mediante Portrait Miner .
Ejemplo
Crear un enfoque RetailLoyaltyProjectMay.ftr, que comparte datos subyacentes con el enfoqueRetailAnalysisMay.ftr:qslink -from RetailAnalysisMay.ftr-to RetailLoyaltyProjectMay.ftr
También consulte
qsimportfocus en la página 52
qsmove en la página 95
qsremove en la página 96
qsmoveSinopsis qsmove -from <enfoque de origen>
-to {,<enfoque de destino> | <directorio>,}
95Guía de referencia del comando de creación de datos y TML
Capítulo 7: Comandos para administrar enfoques
Descripción: Renombrar el enfoque de origen como enfoque de destino o mover el enfoque de origenal directorio especificado, teniendo en cuenta posibles dependencias de los datos.
Argumentos opcionales Además de los argumentos requeridos, qscopy acepta las opciones comunesa todos los comandos de creación de datos [consulte Opciones estándar de la línea de comandosen la página 21].
Nota: • Si se intenta renombrar o mover un enfoque por encima de un enfoque existente, qsmoveemitirá una advertencia y no realizará ninguna operación.
• También se puede acceder a la función de qsmove mediante Portrait Miner .
Debido a la posible interdependencia de los datos de los enfoques, no se debeintentar renombrar o mover un enfoque con utilidades estándares del sistemaoperativo. En su lugar, siempre se debe utilizar qsmove (o Portrait Miner).
Ejemplos
Renombrar el enfoque RetailTransAprilSorted.ftr como RetailTransAprilSort.ftr:qsmove -from RetailTransAprilSorted.ftr-to RetailTransAprilSort.ftr
Mover el enfoque RetailArchiveMay.ftr al directorio Retail:qsmove -from RetailArchiveMay.ftr -to Retail
También consulte
qscopy en la página 94
qslink en la página 95
qsremove en la página 96
qsremoveSinopsis qsremove -focus <archivo de enfoque>
[-focus <archivo de enfoque> ...]
[-force]
[-recursive]
Descripción: Eliminar uno o más archivos de enfoque, teniendo en cuenta las posibles dependenciasde datos.
Argumentos opcionales
EfectoOpción
Ignorar los errores provocados por la incapacidadde actualizar enlaces relacionados con losenfoques.
-force
Portrait Miner 7.196
qsremove
EfectoOpción
Eliminar el enfoque y todos los enfoquesdependientes.
-recursive
Además de estas opciones de línea de comandos, qsremove acepta las opciones comunes a todoslos comandos de creación de datos [consulte Opciones estándar de la línea de comandos en lapágina 21].
Debido a la posible interdependencia de los datos de los enfoques, no se debeintentar eliminar un enfoque con utilidades estándares del sistema operativo. Ensu lugar, siempre se debe utilizar qsremove (o Portrait Miner).
Nota: • Si existe una dependencia circular en la cadena o la cadena de enfoque principal no se puedeescribir, se mostrará un error. En tal caso, se debe utilizar -force y -recursive para eliminarel enfoque.
• Si se utiliza más de un argumento -focus y qsremove no puede eliminar uno de los enfoques,continuará eliminando los enfoques posteriores (pero emitirá un mensaje de error y devolveráun estado que no será cero al salir).
• Eliminar un enfoque con qsremove no será posible si no se tiene permiso de escritura parael archivo de enfoque .ftr.
• Tras eliminar un enfoque con qsremove, es posible que quede una copia de seguridad delarchivo .ftr. Se puede eliminar sin problemas como si lo hiciera con cualquier archivo.
• También se puede acceder a la función de qsremove mediante Portrait Miner .
Ejemplos
Eliminar el enfoque RetailTransApril6Months.ftr y todos los enfoques dependientes:qsremove -focus RetailTransApril6Months.ftr
Eliminar dos enfoques RetailTransAprilCA.ftr y RetailTransApril2Customers.ftr:qsremove -focus RetailTransAprilCA.ftr-focus RetailTransApril2Customers.ftr
También consulte
qscopy en la página 94
qslink en la página 95
qsmove en la página 95
qsarchiveSinopsis qsarchive -input <enfoque o carpeta>
[, -input <enfoque o carpeta> ...]-output <archivo de archivo>
97Guía de referencia del comando de creación de datos y TML
Capítulo 7: Comandos para administrar enfoques
Descripción: Crear un archivo de archivo de una lista de enfoques o carpetas.
Argumentos opcionales: además de los argumentos requeridos, qsarchive acepta las opcionescomunes de todos los comandos de creación de datos [consulte Opciones estándar de la línea decomandos en la página 21].
Nota: • Si crea un archivo de archivos a partir de una carpeta que contiene enfoques enlazados adatos fuera de la carpeta, los datos externos se copiarán en el archivo.
• Se puede acceder a la mayoría de las funciones del comando de creación de datos qsarchiveal utilizar el cuadro de diálogo Archivar de Portrait Miner.
Ejemplo
Crear un archivo de archivo FirstQuarter.zip que comparta datos subyacentes con los enfoquesJanuary.ftr, February.ftr y March.ftr:qsarchive -input January.ftr -input February.ftr -input March.ftr-output FirstQuarter.zip
También consulteqsunzip en la página 98
qsunzipSinopsis qsunzip -input <archivo de archivo > [-output <directorio de salida>]
[-overwrite]
Descripción: Extraer archivos y carpetas de un archivo de archivo .
Argumentos opcionales
EfectoOpción
Extraer en el directorio alternativo donde estáubicado el archivo de archivo . Si no se proporciona
-output <directorio de salida>
una opción -output, los archivos y las carpetasse extraerán al directorio actual.
Sobrescribe los archivos y las carpetas si se losextrae a una ubicación que contiene el mismocontenido que el archivo zip.
-overwrite
Además de estas opciones de línea de comando, qsunzip acepta las opciones comunes de todos loscomandos de creación de datos [consulte Opciones estándar de la línea de comandos en la página21].
Nota: • Si no se utiliza la opción -overwrite y se extraen los archivos y las carpetas a una ubicaciónque contiene los mismos archivos y carpetas de origen, se producirá un error en la extracción.
• Se puede acceder a la mayoría de las funciones del comando de creación de datos qsunzipmediante el cuadro de diálogo Extraer de Portrait Miner.
Portrait Miner 7.198
qsunzip
Ejemplo Extraer archivo s y carpetas del mismo archivo de archivo firstquarter.zip a la mismaubicación que firstquarter.zip:qsunzip -input firstquarter.zip
También consulteqsarchive en la página 97
99Guía de referencia del comando de creación de datos y TML
Capítulo 7: Comandos para administrar enfoques
Capítulo 8Comandos para elaborarinformes
En esta sección:
• qssettings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .102• qsaudit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .102• qsdescribe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .106• qsdescribestat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .107• qshtmlunpack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .108• qsdtsnapshot, qsscsnapshot . . . . . . . . . . . . . . . . . . . . .109• qsxt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .112• qsinfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .113• qsdescribelicense . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .114
qssettingsSinopsis qssettings [<property>=<valor> ...]
Descripción: establezca el valor de cada propiedad enumerada para controlar aspectos de la salidade los comandos que generan informes qsaudit, qsdtsnapshot y qsscsnapshot.
Puede establecer los valores de las siguientes propiedades:
• DateFormat, donde 0 corresponde a europeo, 1 corresponde a americano y 2 corresponde a AMD
• NumDecimalPlaces
• StripTrailingZeroes
• ThousandSeparators
• TwelveHour
Argumentos opcionales Además de los argumentos necesarios, qssettings acepta las opcionescomunes a todos los comandos de creación de datos [consultar Opciones estándar de la línea decomandos en la página 21].
El comando qssettings crea o modifica el archivo settings.xml en su directorio deconfiguración, específico según el usuario, de Portrait Miner. Utilice este archivo en conjunto
Nota:
con qsaudit, qsdtsnapshot, o qsscsnapshot especificando la opción Opciones estándarde la línea de comandos en la página 21-settings [consultar ].
Ejemplo Cree un archivo de configuraciones para que muestre las fechas en formato YMD, hora enformato de 12 horas y números con ceros posteriores, en cuatro posiciones decimales y un separadorde miles específico según el lugar:qssettings DateFormat=2 TwelveHour=true StripTrailingZeroes=falseNumDecimalPlaces=4 ThousandSeparators=true
También consulteFormatos de fecha en la página 55 qsaudit en la página 102 qsdtsnapshot, qsscsnapshot en lapágina 109
qsauditSinopsis qsaudit [-generate Full]
-input <enfoque> [-subfocus <subenfoque>]
[-reference <informe HTML archivado> | -reference <informe XML archivado>]
-output <informe HTML archivado>
-fields <campo> [, <campo> ...] | -fields @<archivo de campos> | -tags<etiqueta> [, <etiqueta> ...]]
Portrait Miner 7.1102
qssettings
-xfields <campo> [, <campo> ...] | -xfields @<archivo de campos> | -xtags<etiqueta> [, <etiqueta> ...]]
[-records <expresión FDL> | -records @<archivo FDL>]
[-targets <campo> [, <campo> ...] | -targets @<archivo de campos> | -notarget]
[-overwrite]
[-htmlimages largepng | -htmlimages smallpng | -htmlimages svg | -htmlimagesnone]
[-paginate]
[-nopartition]
-partitionfield <campo>
qsaudit -generate XML
-input <enfoque> [-subfocus <subenfoque>]
[-reference <informe HTML archivado> | -reference <informe XML archivado>]
-output <informe XML archivado>
-fields <campo> [, <campo> ...] | -fields @<archivo de campos> | -tags<etiqueta> [, <etiqueta> ...]]
-xfields <campo> [, <campo> ...] | -xfields @<archivo de campos> | -xtags<etiqueta> [, <etiqueta> ...]]
[-records <expresión FDL> | -records @<archivo FDL>]
[-targets <campo> [, <campo> ...] | -targets @<archivo de campos> | -notarget]
[-overwrite]
[-nopartition]
[-partitionfield <campo>] qsaudit -generate HTML
{-input <informe HTML archivado> | -input <informe XML archivado>}
-output <informe HTML archivado>
[-overwrite]
[-htmlimages largepng | -htmlimages smallpng | -htmlimages svg | -htmlimagesnone] [-paginate]
Descripción: crea un informe de Perfil y Auditoría en el enfoque especificado, o un informe decomparación que describa las diferencias entre el enfoque especificado y el enfoque descripto en uninforme de referencia (con la opción -reference). De manera predeterminada, realizar una auditoríade todos los campos del enfoque, en relación con el objetivo del enfoque, si es que lo hay. Este es unproceso de dos etapas: primero, el comando genera un archivo XML intermedio (empaquetado en unarchivo .qsxml), y luego, a partir de este archivo intermedio, crea el informe con formato HTML terminado(empaquetado en un archivo .qshtml).
103Guía de referencia del comando de creación de datos y TML
Capítulo 8: Comandos para elaborar informes
Opcionalmente puede crear solamente el archivo intermedio .qsxml o el archivo .qshtml a partir deun archivo .qshtml o .qsxml preexistente.
Para descomprimir archivos .qshtml y .qsxml, visualizarlos o reutilizarlos fuera de Portrait Miner,utilice qshtmlunpack.
Argumentos opcionales
EfectoOpción
Realice una auditoría sólo sobre los camposespecificados (excepto los campos excluidos con-xfields).
-fields <campo> [, <campo> ...]
Realice una auditoría sólo sobre los camposenumerados (uno por línea) en el archivo decampos.
-fields @<archivo de campos>
Crea un informe HTML a partir de un informe XMLo HTML.
-generate HTML
Crea un informe HTML directamente(predeterminado si usted no especifica una opción-generate).
-generate Full
Crea un informe XML .-generate XML
Incluye imágenes PNG de mapa de bits y SVGoptimizadas para imprimir y para ver en pantalla.
-htmlimages largepng
No incluye ninguna imagen.-htmlimages none
Incluye imágenes PNG de mapa de bits y SVGoptimizadas para pantalla (predeterminado si ustedno especifica una opción -htmlimages).
-htmlimages smallpng
Incluye solamente imágenes SVG.-htmlimages svg
Crea un perfil y auditoría no uplift, ignorando todainterpretación de partición en el enfoque.
-nopartition
No realiza auditorías sobre campos relacionadoscon campos objetivo, aunque el enfoque tenga unobjetivo.
-notarget
Sobrescribe cualquier informe preexistente.
De lo contrario, si ya hay un informe con el mismonombre, qsaudit emite una advertencia y no hacenada más.
-overwrite
Crea una página HTML individual para cada campoauditado.
-paginate
Usar el campo especificado como el campo departición.
-partitionfield <campo>
Portrait Miner 7.1104
qsaudit
EfectoOpción
Informa solamente los registros en los cuales laexpresión FDL numérica no es cero ("verdadero").
-records <expresión FDL>
Informa solamente los registros en los cuales laexpresión FDL en el campo especificado no escero ("verdadero").
-records @<archivo FDL>
Utiliza el informe HTML creado anteriormente yarchivado como informe de referencia y crea uninforme comparativo.
-reference <informe HTML archivado>
Usar el subenfoque especificado del enfoque.-subfocus <subenfoque>
Audita solamente los campos que tienen lasetiquetas especificadas (excepto cualquier campoexcluido con -xtags).
-tags <etiqueta> [, <etiqueta> ...]
Audita campos en el enfoque en relación con loscampos objetivo especificados, en lugar delenfoque objetivo.
-targets <campo> [, <campo> ...]
Audita campos en el enfoque en relación con loscampos objetivo enumerados (uno por línea) en elarchivo de campos.
-targets @<archivo de campos>
No audita los campos especificados.-xfields <campo> [, <campo> ...]
No audita los campos enumerados (uno por línea)en el archivo de campos.
-xfields @<archivo de campos>
No audita los campos que tienen las etiquetasespecificadas.
-xtags <etiqueta> [, <etiqueta> ...]
Además de estas opciones de líneas de comandos, qsaudit acepta la opción -settings, como tambiénopciones comunes para todos los comandos de creación de datos [consultar Opciones estándar dela línea de comandos en la página 21].
Nota: • De manera predeterminada, un informe de comparación incluye los mismos campos que elinforme de referencia. Si selecciona explícitamente los campos por incluir en el informe decomparación (con la opción -fields), se agregarán a los campos que ya tienen un perfil.
• Un informe de comparación utiliza los mismos campos objetivo que el informe de referencia.Los campos objetivos especificados explícitamente son ignorados.
• Las opciones adicionales de formato de informes están disponibles a través de las preferenciasde Auditorías y Fotos (consultar la Ayuda de Portrait Miner).
• Si no incluye una opción de objetivo y -target, qsaudit no podrá auditar el enfoque.• Con Portrait Miner, puede acceder a la mayoría de las funciones de qsaudit mediante el
cuadro de diálogo Crear perfil y auditar. .
Ejemplos
105Guía de referencia del comando de creación de datos y TML
Capítulo 8: Comandos para elaborar informes
Crear un nuevo Perfil y auditoría RetailCustApril.qshtml desde el enfoqueRetailCustApril.ftr:qsaudit -input RetailCustApril.ftr -output RetailCustApril.qshtml
Crear un nuevo Perfil y auditoría RetailCustMay.qshtml desde el enfoque RetailCustMay.ftr,auditando todos los campos por Age:qsaudit -targets Age -input RetailCustMay.ftr-output RetailCustMay.qshtml
Sobrescribir para crear un Perfil y auditoría en el cual cada auditoría de campo se encuentre en unapágina HTML independiente:qsaudit -paginate -targets Age -overwrite -input RetailCustMay.ftr-output RetailCustMay.qshtml
Crear un Perfil y auditoría RetailCustAprilnoimages.qshtml sin imágenes, desde el enfoqueRetailCustApril.ftr, solamente para los campos StartDate, Age, and Gender:qsaudit -fields "StartDate, Age, Gender" -htmlimages none-input RetailCustApril.ftr-output RetailCustAprilnoimages.qshtml
Crear nuevamente la salida HTML, con una página HTML distinta por cada campo auditado (y sin recrearlos datos subyacentes de auditoría):qsaudit -generate HTML -paginate-input RetailCustApril.qshtml-output RetailCustAprilpaginate.qshtml
Crear un informe de comparación RetailCustMayApril.qshtml a partir del enfoqueRetailCustMay.ftr comparado con el informe de referenciaRetailCustApril.qshtml:qsaudit -reference RetailCustApril.qshtml-input RetailCustMay.ftr -output RetailCustMayApril.qshtml
También consulteXML en Portrait Miner en la página 342 qsdescribe en la página 106 qsdtsnapshot, qsscsnapshot enla página 109 qssettings en la página 102
qsdescribeSinopsis qsdescribe
-input <enfoque de origen> [-subfocus <subenfoque>]
[-output <archivo de informe>]
[-fields [-detail]]
Descripción: Muestra información resumida sobre el enfoque, como texto sin formato, inclusive lacantidad de campos y registros y el historial del enfoque.
Argumentos opcionales
Portrait Miner 7.1106
qsdescribe
EfectoOpción
Brinda información más detallada de los camposdel enfoque, inclusive estadísticas de campos,
-detail
expresiones de derivación y semillas para camposderivados.
Brinda información sobre cada uno de los camposdel enfoque.
-fields
Escribe el informe en el archivo especificado, enlugar de la salida estándar.
-output <archivo de informe>
Usar el subenfoque especificado del enfoque deorigen.
-subfocus <subenfoque>
Además de estas opciones de la línea de comandos, qsdescribe acepta las opciones comunes a todoslos comandos de creación de datos [consultar Opciones estándar de la línea de comandos en lapágina 21].
Nota: • De manera predeterminada, qsdescribe informa sobre toda la jerarquía de subenfoques dentrode un enfoque. Si utiliza la opción -subfocus, qsdescribe informa solamente sobre elsubenfoque que usted especifique.
• Con Portrait Miner, podrá acceder a la mayoría de las funciones de qsdescribe a través delcuadro de diálogo Mostrar información de enfoque .
Ejemplos
Informar la cantidad de campos, registros y el historial del enfoque RetailCustApril.ftr:qsdescribe -input RetailCustApril.ftr
Además, podrá informar los nombres y tipos de campos:qsdescribe -fields -input RetailCustApril.ftr
Finalmente, podrá informar las estadísticas, selecciones, los comentarios y las derivaciones de loscampos:qsdescribe -detail -fields -input RetailCustApril.ftr
También consulte
qsaudit en la página 102
qssettings en la página 102
qsdescribestatSinopsis qsdescribestat -input <conjunto de datos de origen>
[-output <archivo de informe>]
[-type <tipo de conjunto de datos>]
107Guía de referencia del comando de creación de datos y TML
Capítulo 8: Comandos para elaborar informes
[-detail]
Descripción: Mostrar una lista de los nombres de campo en un conjunto de datos de origen de terceros,en formato de texto plano. Los conjuntos de datos SAS, SPSS y de Excel son algunos de los conjuntosadmitidos (consulte http://support.quadstone.com/info/requirements/ para obtener una lista detallada).
Argumentos opcionales
EfectoOpción
Enumerar los tipos de datos de campo junto consus nombres.
-detail
Escribe el informe en el archivo especificado, enlugar de la salida estándar.
-output <archivo de informe>
Interpretar el conjunto de datos de origen como eltipo de conjunto de datos especificado, y anular la
-type <tipo de conjunto de datos>
interpretación por defecto (que depende de laextensión del archivo). Los tipos de conjuntos dedatos válidos incluyen sas, spss y excel; paraconsultar una lista completa, utilice la opción -help.
Además de estas opciones de línea de comandos, qsdescribestat acepta las opciones comunes atodos los comandos de creación de datos [consulte Opciones estándar de la línea de comandos enla página 21].
Ejemplos
Informar los nombres de campos de los conjuntos de datos SAS RetailCustApril.sas7bdat:qsdescribestat -input RetailCustApril.sas7bdat
Además, informar los tipos de campos:qsdescribestat -detail -input RetailCustApril.sas7bdat
También consulte
qsexportstat en la página 50
qsimportstat en la página 48
qshtmlunpackSinopsis qshtmlunpack <informe archivado> <directorio de salida> [<nombre dearchivo HTML>]
Descripción: descomprimir un informe generado por Portrait Miner como archivo .qshtml o .qsxmlycrear el directorio de salida especificado que contenga los componentes del informe. En el caso de uninforme HTML archivado, el archivo HTML (dentro del directorio de salida) recibe de manerapredeterminada el nombre qsreport.html.
Argumentos opcionales
Portrait Miner 7.1108
qshtmlunpack
EfectoOpción
Utilizar este nombre de archivo para el archivoHTML en un informe HTML sin descomprimir, enlugar de qsreport.html.
Al descomprimir un informe XML archivado,qshtmlunpack ignora este argumento.
<nombre de archivo HTML>
Con Portrait Miner puede acceder a la mayoría de las funciones de qshtmlunpack a travésde la opción del botón secundario del mouse Descomprimir a carpeta.
Nota:
Ejemplo
Descomprimir el archivo RetailCustApril.qshtml como Perfil y Auditoría HTMLRetailCustApril.html en el subdirectorio www:qshtmlunpack RetailCustApril.qshtml www RetailCustApril.html
También consulte
qsaudit en la página 102
qsdtsnapshot, qsscsnapshot en la página 109
qsdtsnapshot, qsscsnapshotSinopsis{qsdtsnapshot -input <árbol de decisión> | qsscsnapshot -input <cuadro demando>} [-generate Full]
-output <informe HTML archivado>
[-focus <enfoque> [-subfocus<subenfoque>]]
[-audit modeled | -audit all | -audit none]
[-description <archivo de texto>]
[-overwrite]
[-htmlimages largepng | -htmlimages smallpng | -htmlimages svg | -htmlimagesnone]
{qsdtsnapshot -input <árbol de decisión> | qsscsnapshot -input <cuadro demando>}
-generate XML
-output <informe XML archivado>
[-focus <enfoque> [-subfocus<subenfoque>]]
[-audit modeled | -audit all | -audit none]
109Guía de referencia del comando de creación de datos y TML
Capítulo 8: Comandos para elaborar informes
[-overwrite]
[-htmlimages largepng | -htmlimages smallpng | -htmlimages svg | -htmlimagesnone]
{qsdtsnapshot | qsscsnapshot}
-generate HTML
{-input <informe HTML archivado> | -input <informe XML archivado>}
-output <informe HTML archivado>
[-description <archivo de texto>
[-overwrite]
[-htmlimages largepng | -htmlimages smallpng | -htmlimages svg | -htmlimagesnone]
Descripción: crear una foto de modelo del árbol de decisión especificado (archivo .qsdt) o cuadro demando (archivo .qssc). De manera predeterminada, auditar todos los campos utilizados en el modelo.Este es un proceso de dos etapas: primero, el comando genera un archivo XML intermedio (empaquetadoen un archivo .qsxml), y luego, a partir de este archivo intermedio, crea el informe con formato HTMLterminado (empaquetado en un archivo .qshtml).
Opcionalmente puede crear solamente el archivo intermedio .qsxml o el archivo .qshtml a partir deun archivo .qshtml o .qsxml preexistente.
Para descomprimir archivos .qshtml y .qsxml, visualizarlos o reutilizarlos fuera de Portrait Miner,utilice qshtmlunpack.
Argumentos opcionales
EfectoOpción
Audita todos los campos del enfoque.-audit all
Audita los campos utilizados en el modelo (lospredeterminados si no especifica una opción de-audit).
-audit modeled
No audita ningún campo.-audit none
Incluye el contenido de este archivo de texto comodescripción del modelo en la sección "Metadatosprovistos por el usuario" del informe.
-description <archivo de texto>
Informe del modelo según se lo aplica en elenfoque especificado, en lugar de en el enfoqueutilizado para crear el modelo.
-focus <enfoque>
Crea un informe HTML a partir de un informe XMLo HTML.
-generate HTML
Portrait Miner 7.1110
qsdtsnapshot, qsscsnapshot
EfectoOpción
Crea un informe HTML directamente(predeterminado si usted no especifica una opción-generate).
-generate Full
Crea un informe XML .-generate XML
Incluye imágenes PNG de mapa de bits y SVGoptimizadas para imprimir y para ver en pantalla.
-htmlimages largepng
No incluye ninguna imagen.-htmlimages none
Incluye imágenes PNG de mapa de bits y SVGoptimizadas para pantalla (predeterminado si ustedno especifica una opción -htmlimages).
-htmlimages smallpng
Incluye solamente imágenes SVG.-htmlimages svg
Sobrescribe cualquier informe preexistente.
De lo contrario, si ya hay un informe con el mismonombre, qsdtsnapshot/qsscsnapshot emiteuna advertencia y no hace nada más.
-overwrite
Usar el subenfoque especificado del enfoque.-subfocus <subenfoque>
Además de estas opciones de líneas de comandos, qsdtsnapshot y qsscsnapshot aceptan laopción -settings como también opciones comunes para todos los comandos de creación de datos[consultar Opciones estándar de la línea de comandos en la página 21].
Nota: • Si no utiliza la opción -focus de todos modos debe existir el enfoque utilizado para crear elmodelo.
• Las opciones adicionales de formato de informes están disponibles a través de las preferenciasde auditorías y fotos (consultar la Ayuda de Portrait Miner).
• Con Portrait Miner, puede acceder a la mayoría de las funciones de qsdtsnapshot yqsscsnapshot a través de la caja de diálogo Foto de árbol de decisión o ScorecardSnapshot. .
Ejemplos
Crear una foto de modelo del archivo de árbol de decisión early-adopter-modelApril.qsdt,creado en el enfoque RetailCustApril.ftr, y aplicado al mismo enfoque:qsdtsnapshot -input early-adopter-modelApril.qsdt-output early-adopter-modelApril.qshtml
Aplicar este modelo al enfoque RetailCustMay.ftr, pero esta vez auditar todos los campos, en lugarde hacerlo sólo sobre aquellos que participaron en la definición del modelo:qsdtsnapshot -focus RetailCustMay.ftr -audit all-input early-adopter-modelApril.qsdt-output early-adopter-modelMay.qshtml
También consulte
111Guía de referencia del comando de creación de datos y TML
Capítulo 8: Comandos para elaborar informes
XML en Portrait Miner en la página 342
qsaudit en la página 102
qssettings en la página 102
qsxtSinopsis qsxt -focus <enfoque> [-subfocus <subenfoque>]
[-spec <archivo de tabulación cruzada>] [-comparable]
[-output <archivo de tabulación cruzada>]
[-description <archivo de texto>]
Descripción: Aplica una especificación de tabulación cruzada (proporcionada por defecto a una entradaestándar) al enfoque especificado para crear una nueva tabulación cruzada (por defecto a una salidaestándar).
Argumentos opcionales
EfectoOpción
Cuando sea pertinente, utilice rangos de la parteresultante de la tabulación cruzada proporcionadaen lugar de rangos de la parte de especificación.
-comparable
Incluir el contenido de este archivo de texto comouna descripción de la tabulación cruzada.
-description <archivo de texto>
Cree este archivo de tabulación cruzada en lugarde escribir la salida estándar.
-output <archivo de tabulacióncruzada>
Utilice este archivo de tabulación cruzada en lugarde leer desde la entrada estándar.
-spec <archivo de tabulación cruzada>
Usar el subenfoque especificado del enfoque.-subfocus <subenfoque>
Además de estas opciones de línea de comando, qsxt acepta las opciones comunes de todos loscomandos de creación de datos [consulte Opciones estándar de la línea de comandos en la página21].
Nota: • En la tabulación cruzada de salida, qsxt crea rangos de cada campo mediante el uso de unade las siguientes opciones (en orden de preferencia decreciente): un rango para el campo dela especificación de tabulación cruzada proporcionada (o la parte resultante si se utiliza laopción -comparable); un rango para el campo del enfoque proporcionado; los parámetrosde rango predeterminados, según lo configurado por las preferencias de rango (consulte laAyuda de Portrait Miner).
• Al utilizar Portrait Miner, puede acceder a la mayoría de las funciones de qsxt mediante elcuadro de diálogo Aplicar tabulación cruzada. .
Portrait Miner 7.1112
qsxt
Ejemplos
Crear una nueva tabulación cruzada, ageGenderMay.qstv, desde el enfoque RetailCustMay.ftr,mediante el uso del archivo de la especificación de tabulación cruzada ageGenderApril.qstv(generado desde Decision Studio):qsxt -focus RetailCustMay.ftr -spec ageGenderApril.qstv-output ageGenderMay.qstv
Además, se puede usar el rango contenido en el archivo de tabulación cruzada ageGenderApril.qstvpara crear el resultado ageGenderMay-binbyApril.qstv:qsxt -comparable -focus RetailCustMay.ftr -spec ageGenderApril.qstv-output ageGenderMay-binbyApril.qstv
También consulteEspecificación de tabulación cruzada para qsxt en la página 353
qsinfoSinopsis qsinfo -input <enfoque de origen>
[-generate HTML | -generate XML]
[-output <archivo de informe>]
Descripción: Mostrar información en las ubicaciones y los tamaños de archivos que conforman elenfoque de origen, incluidos todos los archivos de datos que se comparten con los demás enfoques.Mostrar las relaciones entre el enfoque de origen con los demás enfoques (enumerar los enfoques quedependen del de origen y aquellos de los que depende este último). Por defecto, debe escribir el informeen la salida estándar en un formato de archivo basado en XML.
Argumentos opcionales
EfectoOpción
Crear el informe en formato HTML.-generate HTML
Crear el informe en un formato de archivo basadoen XML (el predeterminado si no se especifica unaopción -generate).
-generate XML
Escribe el informe en el archivo especificado, enlugar de la salida estándar.
-output <archivo de informe>
Además de estas opciones de línea de comandos, qsinfo acepta las opciones comunes a todos loscomandos de creación de datos [consulte Opciones estándar de la línea de comandos en la página21].
Nota: • Un enfoque se almacena en el disco como un archivo .ftr (el "archivo de enfoque") juntocon una colección de archivos de datos y otros en dos carpetas; sus nombres finalizan con.rdx ("Raw Data eXtract") y .xtr ("eXTRa").
113Guía de referencia del comando de creación de datos y TML
Capítulo 8: Comandos para elaborar informes
Un nuevo enfoque que se crea al copiar un enfoque existente [consulte qscopy en la página94] o al importar datos de otro tipo de base de datos es independiente de otros enfoques. Porotro lado, un enfoque que se guarda desde Decision Studio con un nombre nuevo, o uno quese crea al hacer una copia enlazada [consultar qslink en la página 95] es dependiente de lascarpetas de datos que pertenecen a otros enfoques.
• Al utilizar Portrait Miner, se puede acceder a la mayoría de las funcionalidades de qsinfoa través del cuadro de diálogo Mostrar propiedades de enfoque .
Ejemplo
Crear un nuevo informe de propiedades de enfoque HTML RetailCustApril.html, del enfoqueRetailCustApril.ftr:qsinfo -input RetailAprilAnalysis.ftr -generate HTML-output RetailAprilAnalysis.html
También consulteXML en Portrait Miner en la página 342
qsdescribelicenseSinopsis qsdescribelicense
[-input <archivo de licencia>]
[-output <archivo de informe>]
Descripción: muestra un informe sobre la licencia instalada de Portrait Miner en formato de textoplano.
Argumentos opcionales
EfectoOpción
Realiza un informe sobre el archivo de licenciaespecificado en lugar de un archivo sobre lalicencia instalada.
-input <archivo de licencia>
Escribe el informe en el archivo especificado, enlugar de la salida estándar.
-output <archivo de informe>
Además de estas opciones de línea de comando, qsdescribelicense acepta las opciones comunesde todos los comandos de creación de datos [consulte Opciones estándar de la línea de comandosen la página 21].
El informe puede incluir los siguientes componentes:Nota:
• el nombre del titular de la licencia• la dirección IP o subred para la que la licencia es válida• el tamaño máximo de enfoque para el que la licencia es válida
Portrait Miner 7.1114
qsdescribelicense
• fecha de inicio y finalización de la licencia• una lista de componentes de Portrait Miner para los cuales existe una licencia, con posibles
anulaciones por componente para la dirección/subred IP, tamaño máximo del enfoque y fechasde validez
Ejemplo
Muestra las claves de licencia del archivo de licencia actual de Portrait Miner:qsdescribelicense
115Guía de referencia del comando de creación de datos y TML
Capítulo 8: Comandos para elaborar informes
Capítulo 9Comandos para construirmodelos
En esta sección:
• Acerca del Asistente de scorecard . . . . . . . . . . . . . . . . .118• qsscorecardwizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .119• qsdecisiontree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .125• qsscorecard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .126• Acerca del Asistente para reglas de asociación . . . . . .128• qsruleminer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .129
Acerca del Asistente de scorecardEl Asistente de scorecard automatiza el modelado de scorecards utilizando metodología de mejoresprácticas: crea rangos optimizados, luego reducción variable y finalmente crea una secuencia de modelosen datos de prueba y capacitación para establecer el mejor "tamaño de modelo". La metodología demodelado consta de las siguientes etapas.
Metodología de prueba/capacitación Metodología de prueba/capacitación Una parte de los datos deorigen se usa para capacitación y otra parte para pruebas: esta división puede generarse aleatoriamenteo utilizando un campo indicador binario designado.
Rango optimizado Creación de rangos optimizados Los datos de capacitación se usan para seleccionarrangos para cada candidato de análisis que maximiza su poder predictivo univariante comparado conel objetivo.
En el caso de los campos no categóricos, se utiliza el asistente de rangos optimizados de forma iterativapara elegir el mejor rango. El número de rangos se aumenta hasta que el número de "puntos de ajuste"en el gráfico del valor objetivo promedio por rango excede a un umbral configurable (un "punto de ajuste"es un cambio de signo en la curva de un gráfico). Intuitivamente, esto asegura que el perfil del valorobjetivo promedio como función de cada candidato de análisis sea relativamente "parejo", sin demasiadosaltos y bajos.
Para campos categóricos, se combinan las categorías donde el valor objetivo promedio no essignificativamente diferente de la media general. Se usa una prueba de diferencia de medias estándar[consulte significance en la página 177], con una corrección de Bonferroni aplicada en función delnúmero total de categorías, c, que aparecen para el campo. Así, todas las categorías que tienen el nivelde confianza están combinadas (con un importante umbral configurable).
Durante esta fase, los campos con una correlación sospechosamente alta al objetivo se excluyen defuturos análisis (con un mensaje de advertencia). También se emite una advertencia para los camposen los que cualquiera de los rangos individuales contiene un número pequeño de registros. Ambosumbrales son configurables.
Reducción variable: La fase de reducción variable reduce el grupo de candidatos a análisis (predictoresindependientes) de aquellos inicialmente marcados como un grupo más pequeño de n, a fin de disminuirel tiempo de ejecución de la última fase de "encontrar el tamaño correcto".
El proceso divide los candidatos para análisis en grupos de hasta dos campos 2n y crea un cuadro demando (mediante el uso de datos de capacitación) en cada grupo, lo que elimina los peores camposmediante una exclusión gradual hasta que queden los mejores campos n del grupo. Repitiendo esteprocedimiento eventualmente se identifican los n mejores campos en general.
Ajuste al tamaño correcto: la fase de encontrar el tamaño correcto elige la scorecard que equilibramejor la complejidad (número de predictores) con la generalización (medida por el rendimiento delconjunto de prueba). Los datos de capacitación se usan para crear una secuencia de n scorecards. Elprimero contiene los n candidatos de análisis y cada modelo subsiguiente excluye al peor predictor.Luego se evalúa el rendimiento de cada modelo con los datos de prueba y se elige el mejor modelo conun criterio configurable. En el paso final, se reajustan los coeficientes de ponderación del modeloseleccionado, basándose en todos los datos (es decir, tanto los datos de prueba como los de capacitación)
Portrait Miner 7.1118
Acerca del Asistente de scorecard
a fin de mejorar la precisión. Si se desea pueden guardarse todos los modelos interinos junto con elmodelo final.
Resultados: Se generan (en forma opcional) diversos resultados, entre otros:
• Un informe HTML que resume cómo se aplicó la metodología, incluidos los parámetros de entrada ylos enlaces al registro de ejecución detallado. Esto incluye una tabla de datos de rendimiento quepuede graficarse fácilmente en Excel.
• El modelo final recomendado (en formatos .qssc y QMML ).• Un informe de Foto de modelo para el modelo recomendado.• El conjunto de datos final, incluidos los candidatos de análisis seleccionados, los rangos optimizados
y las predicciones de modelos. También pueden guardarse si se desea los conjuntos de datosintermedios que contienen la metadata generada por la metodología hasta ese momento. Estos amenudo resultan útiles para tener un informe detallado y explorar las decisiones que se tomarondurante el proceso.
También consulte
qsscorecardwizard en la página 119
qsscorecardwizardSinopsis qsscorecardwizard <archivo de parámetros>
Descripción: Crear un cuadro de mando en un enfoque específico utilizando un archivo de parámetros.
También se puede acceder a la funcionalidad del comando de creación de datosqsscorecardwizard mediante el cuadro de diálogo Asistente de Scorecard de PortraitMiner.
Nota:
Parámetros de modelado: el proceso de modelado realizado por qsscorecardwizard está controladopor el archivo de parámetros que se especifica como argumento de línea de comando. Por ejemplo, enel caso de un archivo denominado parameters.ini que contenga:[globals]inputFocus=D:/Data/DirectBank/DirectBank.ftrobjectiveField=CardVisaxmlReport=D:/Data/DirectBank/DirectBank.xml[variable reduction]maxVariables=5[model development]finalModel=D:/Data/DirectBank/DirectBank_auto.qsscfinalFocus=D:/Data/DirectBank/DirectBank_auto_3rightsized.ftr
el siguiente comandoqsscorecardwizard parameters.ini
crearía un modelo de cuadro de mando DirectBank_auto.qssc junto con un nuevo enfoqueDirectBank_auto_3rightsized.ftr, y un nuevo informe de modelo DirectBank.xml.
El archivo de parámetros tiene un formato similar a un archivo .ini de Windows:
119Guía de referencia del comando de creación de datos y TML
Capítulo 9: Comandos para construir modelos
• Cada sección se indica con un título de sección encerrado entre corchetes, p. ej., [globals]. Acontinuación se especifican los cuatro nombres de sección válidos.
• Los parámetros de cada sección se definen al escribir el nombre del parámetro, un signo igual y elvalor del parámetro, p. ej., maxBins = 20.
• En los nombres de los parámetros no se distingue entre mayúsculas y minúsculas, y se ignora elespacio en blanco al principio y al final de cada línea.
• Se ignoran las líneas en blanco y las líneas que comienzan con los caracteres de comentario # o ;(junto con un espacio en blanco opcional al comienzo de la línea).
Existen valores predeterminados para varios de los parámetros, que se pueden modificar en todo elsitio o por usuario, pero siempre son anulados por los parámetros especificados en el archivo .ini dela línea de comando. Si se especifica un valor de parámetro en cualquiera de las siguientes ubicaciones,esto anula cualquier configuración de una ubicación anterior (donde <principalPM> es el directoriode instalación de Portrait Miner):
• Las configuraciones estándar por defecto requeridas en<pmhome>/ext/scorecardwizard/defaults.ini.
• Configuraciones por defecto opcionales de todo el sitio en<pmhome>/ext/scorecardwizard/scorecardwizard.ini
• Configuraciones por defecto opcionales por usuario en<pmhome>/shared/users/<user>@<domain>/scorecardwizard.ini
• El archivo de parámetros requerido especificado en la línea de comando.
Parámetros de la sección [globals]
DescripciónDefault(Predeterminada)
Parámetro
La ubicación del enfoque de entrada.(obligatorio)inputFocus
El nombre del campo objetivo. Obligatorio a menos que elenfoque contenga una interpretación de objetivo. Si está
(ninguno)objectiveField
establecida, esta configuración anula cualquier interpretaciónde enfoque.
Una lista separada por comas de los campos de candidatospara análisis. Si está establecido, se ignora cualquierinterpretación de candidato para análisis del enfoque.
(ninguno)useFields
Una lista de campos separada por comas para excluir de lalista de candidatos para análisis.
(ninguno)ignoreFields
El campo para utilizar como el indicador de capacitación deprueba. El campo debe ser un campo numérico binario en el
(ninguno)testTrainingField
que 1 indica datos de capacitación y 0 indica prueba. Si noestá establecido, se generará automáticamente una división.
Portrait Miner 7.1120
qsscorecardwizard
DescripciónDefault(Predeterminada)
Parámetro
La proporción de registros (entre 0 y 1) para seleccionar parala capacitación, excepto que testTrainingField estéespecificado.
0.5trainingProportion
La semilla aleatoria que se utilizará. Si no está establecida,se generará automáticamente una semilla aleatoria. Se puede
(ninguno)randomSeed
replicar una ejecución anterior al utilizar la semilla informadapor esa ejecución (en la sección "parameters").
Establecer en verdadero (true) para obtener informaciónadicional de diagnóstico en el registro de consola. Este detalle
falseverbose
adicional siempre está registrado en el registro de archivos;consulte logFile.
La ubicación para registrar el progreso de la ejecución. Si nose especifica lo contrario, el registro se crea en
(automático)logFile
<params>-<YYYY-mm-dd-HH-MM-SS>.log al lado delarchivo de parámetros <params>.ini especificado en lalínea de comandos. (Cuando se ejecuta a través de PortraitMiner, el registro se crea en<pmhome>/shared/logs/qsscorecardwizard-<user>-<YYYY-mm-dd-HH-MM-SS>.log.)
La ubicación para crear el informe de resumen XML. De formapredeterminada, el informe se guarda en
(automático)xmlReport
<params>_report.xml al lado del archivo de parámetros<params>.ini especificado en la línea de comandos.
Parámetros de la sección [optimized binning]
DescripciónDefault (Predeterminada)Parámetro
Establecer en falso para saltearlos rangos optimizados.
truedoOptimizedBinning
La cantidad mínima de registrosque debe aparecer en un rango
0minBinSize
que no es nulo durante lacreación de rangos optimizadosde campos no categóricos.Cualquier rango (incluidos losrangos nulos y categóricos) quetenga menos registros activaráuna advertencia en el informefinal.
La cantidad máxima de rangosque se deben crear para los
20maxBins
campos no categóricos. La
121Guía de referencia del comando de creación de datos y TML
Capítulo 9: Comandos para construir modelos
DescripciónDefault (Predeterminada)Parámetro
cantidad seleccionada de rangospodría ser menor, según larestricción de "punto de ajuste"(consulte la siguiente sección).
La cantidad máxima de cambiosde signo en la diferencia de la
2maxTurningPoints
media del campo objetivo entrerangos consecutivos (se excluyenlos rangos nulos sin clasificar).Un valor de 0 hace que el rangofinal sea monótono en la mediadel campo objetivo. Un valor demaxBins (o mayor) elimina estarestricción. En general, un valorde 1 ó 2 es razonable.
El porcentaje Gini (o R^2)máximo "creíble". Los campos
95maxQuality
con poder predictivo por encimade este umbral serán excluidosde los análisis posteriores. Tengaen cuenta que este control serealiza siempre (incluso cuandola creación de rangosoptimizados está desactivada),excepto que se especifique unvalor de 100.
El nivel de importancia quedetermina si un rango categórico
0.001pValue
tiene un índice de respuestasignificativamente diferente a lapoblación general. El valor estáespecificado en una escala de 0a 1, en general cerca de 0. Tengaen cuenta que también se aplicala corrección de Bonferroni.
La ubicación donde se guarda elenfoque provisorio después de la
(ninguno)binnedFocus
creación de rangos optimizados,si se desea.
Parámetros de la sección [variable reduction]
Portrait Miner 7.1122
qsscorecardwizard
DescripciónDefault (Predeterminada)Parámetro
Establecer en falso para saltearla reducción de la variable (y usar
truedoVariableReduction
todos los candidatos para análisisen la etapa de ajuste del modeloal tamaño correcto).
La cantidad máxima decandidatos para análisis que se
100maxVariables
permitirán en el modelo final (engeneral entre 20 y 100).
La ubicación donde se guarda elenfoque provisorio después de la
(ninguno)reducedFocus
reducción de la variable, si sedesea.
Parámetros de la sección [model development]
DescripciónDefault (Predeterminada)Parámetro
Establecer en falso para saltearel ajuste del modelo al tamañocorrecto.
truedoModelDevelopment
Especifica el tipo de modelo paralos fines de etiquetado. Los
respuestamodelType
valores válidos son: response,risk, churn,satisfaction,dissatisfaction.
Especifica si los modelos decuadro de mando deben tener
logísticaregressionMethod
regresión logística o unaaproximación lineal (másrápida).
Especifica la estimación deparámetros del nivel campo o
camporegressionLevel
rango en el cuadro de mando.La ponderación del nivel rangopuede ser más exacta en losdatos de capacitación, pero esmás probable que tenga unsobreajuste en los datos deprueba.
Especifica el criterio de ajuste altamaño correcto utilizado para
minrightSizeCriteria
123Guía de referencia del comando de creación de datos y TML
Capítulo 9: Comandos para construir modelos
DescripciónDefault (Predeterminada)Parámetro
elegir la mejor cantidad decampos. Los valores válidos son:BIC, que significa criterio deinformación bayesiano, AIC, quesignifica criterio de informaciónde Akaike (en general es másdébil que el valor BIC ya quepermite más campos), delta,que significa la disminución dedevoluciones de la medición decalidad en lo que respecta a losresultados binarios (consulteminQualityIncreasePct acontinuación), min o max, quesignifica el mínimo (o máximo) detodos los criterios recomendados(excluido el valor delta en elcaso continuo).
Este es el parámetro utilizado porel formulario delta de
0.5minQualityIncreasePct
rightSizeCriteria: el modelorecomendado es el que tienemayor cantidad de campos, deforma tal que el peor campoagregue al menos la cantidadespecificada en el porcentaje deprueba-conjunto Gini (o R^2).
Establecer en verdadero paraguardar modelos intermedios
falsesaveIntermediateModels
como archivos .qssc y .qmml;de lo contrario, solo se guardarála recomendación final.
Especificar el nombre del campode predicción para el modelo
(automático)predictionField
final. Si no está establecido, seutiliza un nombre de campo únicoen base al tipo de modelo, p. ej.,scorecardwizard__response.
La ubicación donde se guardaráel enfoque que contiene los
(ninguno)finalFocus
candidatos para análisis finalesy el modelo recomendado, si selo desea.
Portrait Miner 7.1124
qsscorecardwizard
DescripciónDefault (Predeterminada)Parámetro
El directorio raíz para guardar elarchivo de modelo de cuadro de
(ninguno)finalModel
mando final (tanto en formato.qssc como .qmml), si se lodesea.
Si se especifica tantofinalModel comofinalFocus
truerunModelSnapshot
y la opción es verdadera, se creauna Foto de modelo (archivo.qshtml) junto con los archivosfinalModel.
También consulteAcerca del Asistente de scorecard en la página 118
qsdecisiontreeSinopsis qsdecisiontree -input <enfoque de origen> [-subfocus<subenfoque>]
-build <decision-tree build specification> -result <decision-tree buildreport> [-output <enfoque de destino>] [-force]
Descripción: Usar una especificación de creación de árbol de decisión para crear un árbol de decisiónen el enfoque especificado y un nuevo informe de creación de árbol de decisión (que contengaestadísticas de árbol de decisión, un resultado de predicción de árbol de decisión y una tabulacióncruzada de calibración) en un formato de archivo basado en XML.
Argumentos opcionales
EfectoOpción
Consulte la La opción de línea de comandos-force en la página 24.
-force
Crear este enfoque, que contenga un campoderivado adicional que aplique el nuevo resultado
-output <enfoque de destino>
de predicción de árbol de decisión en el enfoquede entrada.
Usar el subenfoque especificado del enfoque.-subfocus <subenfoque>
Además de estas opciones de línea de comando, qsdecisiontree acepta las opciones comunes de todoslos comandos de creación de datos [consulte Opciones estándar de la línea de comandos en lapágina 21].
125Guía de referencia del comando de creación de datos y TML
Capítulo 9: Comandos para construir modelos
Ejemplo: dada la especificación de creación del árbol de decisión,decisiontree-specification.xml, con los siguientes contenidos:<?xml version="1.0" encoding="UTF-8"?>
<decisiontree xmlns="http://www.quadstone.com/xml"><specification nlevels="3">
<objectivefield><field name="Age"/>
</objectivefield><analysiscandidates>
<field name="Gender"/><field name="MaritalStatus"/><field name="HomeOwner"/>
</analysiscandidates><resultfield>
<field name="PredictedAge"/></resultfield>
</specification></decisiontree>
utilice esta especificación para crear un informe de creación de árbol de decisióndecisiontree-report.xml, y cree un nuevo enfoque RetailCustAprilPredictedAge.ftrque contenga el campo de predicción del árbol de decisión derivado PredictedAge:qsdecisiontree -build decisiontree-specification.xml-input RetailCustApril.ftr -result decisiontree-report.xml-output RetailCustAprilPredictedAge.ftr
También consulte
Especificación del árbol de decisión para qsdecisiontree en la página 357
qsscorecard en la página 126
qsscorecardSinopsis qsscorecard -input <enfoque de origen> [-subfocus <subenfoque>]
-build <scorecard build specification> -result <scorecard build report>[-output <enfoque de destino>] [-force]
Descripción: Usar una especificación de creación de scorecard para crear una scorecard en el enfoqueespecificado y crear un nuevo informe de creación de scorecard (que contenga estadísticas de scorecard,un resultado de predicción de scorecard y una tabulación cruzada de calibración) en un formato dearchivos basado en XML.
Argumentos opcionales
EfectoOpción
Consulte la La opción de línea de comandos-force en la página 24.
-force
Crear este enfoque, que contenga un campoderivado adicional que aplique el nuevo resultado
-output <enfoque de destino>
Portrait Miner 7.1126
qsscorecard
EfectoOpción
de predicción de scorecard en el enfoque deentrada.
Usar el subenfoque especificado del enfoque.-subfocus <subenfoque>
Además de estas opciones de línea de comando, qsscorecard acepta las opciones comunes de todoslos comandos de creación de datos [consulte Opciones estándar de la línea de comandos en lapágina 21].
Nota: • Para un objetivo binario, qsscorecard usa la regresión logística; para un objetivo continuo,usa la regresión lineal.
Ejemplo
Dada la especificación de creación de cuadro de mando scorecard-specification.xml con lossiguientes contenidos:<?xml version="1.0" encoding="UTF-8"?>
<scorecard xmlns="http://www.quadstone.com/xml"><specification modeltype="value" nfields="2" iscontinuous="true">
<objectivefield><field name="Age"/>
</objectivefield><analysiscandidates>
<field name="Gender"/><field name="MaritalStatus"/><field name="HomeOwner"/>
</analysiscandidates><resultfield>
<field name="PredictedAge"/></resultfield>
</specification></scorecard>
utilice esta especificación para crear un informe de creación de cuadro de mandoscorecard-report.xml, y crear un nuevo enfoque RetailCustAprilPredictedAge.ftr, quecontenga el campo de predicción de cuadro de mando derivado PredictedAge:qsscorecard -build scorecard-specification.xml-input RetailCustApril.ftr -result scorecard-report.xml-output RetailCustAprilPredictedAge.ftr
También consulte
qsdecisiontree en la página 125
Especificación de creación de un cuadro de mando para qsscorecard en la página 359
127Guía de referencia del comando de creación de datos y TML
Capítulo 9: Comandos para construir modelos
Acerca del Asistente para reglas de asociaciónEl Asistente para reglas de asociación automatiza el descubrimiento de reglas de secuencia y asociación.Por lo general, esto se utiliza para explorar datos de eventos, cestas o transacciones de clientesdetalladas para aplicaciones como las siguientes:
Análisis de "cesta" de compra: identifica combinaciones de productos que, comúnmente, aparecen(o no aparecen) juntas dentro de una única transacción de compra (cesta de productos).
Mejor producto siguiente: determina la secuencia más común en la que se compran productos oservicios; por ejemplo, es más probable que los clientes de bancos abran una cuenta de inversión/decrédito después de abrir una caja de ahorro de intereses elevados.
Análisis de impacto de promoción comercial: identifica patrones de comunicaciones de promocióncomercial con mayores probabilidades de que se produzcan antes de una compra
Preparación de los datos: el Asistente para reglas de asociación se ejecuta directamente contratransacciones o datos de eventos almacenados en un conjunto de datos de enfoque, que se beneficiadel acceso a datos de alto rendimiento de Portrait Miner.
• Para el análisis de Cesta de mercado, debe usar un conjunto de datos del nivel de elementos quecontenga un registro por elemento. El conjunto de datos debe contener un identificador de cesta queagrupe a los elementos en la misma cesta, así como un campo identificador de producto (ordenadopor rangos y categórico) que indique el nombre de producto o el código de cada elemento. El conjuntode datos se debe ordenar según el campo clave identificador de cesta.
• Para el análisis de Producto siguiente, debe elegir un conjunto de datos con un registro por productoo servicio. El conjunto de datos debe contener un identificador de cesta, con frecuencia, el identificadorde cliente, que agrupe los productos, el identificador de producto (ordenado por rangos y categórico)y la marca de hora del producto (entero o fecha) que indique el orden en que se adquirieron losproductos. El conjunto de datos se debe ordenar según el campo clave identificador de cesta.
Parámetros de algoritmos: el Asistente para reglas de asociación está basado sobre el algoritmo apriori que es estándar en la industria y que incluye una amplia gama de funcionalidades para controlarel descubrimiento de reglas.
El descubrimiento de reglas se puede restringir a productos de interés particulares, y se pueden controlardiversos parámetros que definen lo que es una regla interesante (soporte, nivel de confianza, complejidadde la regla, medidas de selección de reglas ampliadas). Observe que estas configuraciones puedentener un impacto sobre el tiempo de ejecución: en especial, si se reduce el valor mínimo de admisión,el tiempo de ejecución aumentará, a menos que también se especifique una complejidad de reglamáxima (cantidad de antecedentes).
Términos el Asistente para reglas de asociación usa una variedad de términos que, tal vez, no le resultenfamiliares, entre otros:
Regla: en general, una regla afirma que si se cumple con un conjunto de condiciones (el lado izquierdoo el antecedente de la regla), entonces, se producirá otra condición (el lado derecho o el consecuentede la regla). En las reglas de asociación o secuencia, las condiciones de la regla corresponden a lapresencia de elementos específicos en la cesta. Por ejemplo, una regla simple podría ser la siguiente:si una cesta contiene pan, entonces, también contendrá mermelada.
Portrait Miner 7.1128
Acerca del Asistente para reglas de asociación
Antecedent: el lado izquierdo de una regla, es decir, el conjunto de elementos que deben aparecer enla cesta para que la regla sea relevante.
Consequent: el lado derecho de una regla, es decir, el conjunto de elementos que la regla predice queestarán presentes cuando se cumpla con el lado izquierdo (antecedente).
Soporte: el soporte (absoluto) de un conjunto de elementos es la cantidad de cestas que contienentodos los elementos del conjunto. El soporte relativo es la misma cantidad expresada como un porcentajede la cantidad total de cestas.
Soporte de regla: el soporte de una regla es el del antecedente de la regla, es decir, la proporción decestas a la que se aplica el lado izquierdo de la regla. Esto mide la frecuencia con la que la regla esrelevante.
Fiabilidad de la regla: el nivel de confianza de una regla es el soporte del conjunto de todos loselementos que aparecen en la regla (a la izquierda o a la derecha), dividido por el soporte del antecedentede la regla. Mide la probabilidad de que el consecuente de la regla (lado derecho) sea verdadero si secumple con el antecedente de la regla; es decir, la probabilidad de que la regla sea correcta.
Diferencia de fiabilidad absoluta con el anterior: la proporción de las medidas del nivel de confianzaposteriores y anteriores (con y sin los elementos del antecedente). Mide cuán mayor (o menor) es laprobabilidad del consecuente de una regla cuando el lado izquierdo de la regla es verdadero. Porejemplo, la regla "si pan, entonces mermelada" no es muy interesante si su nivel de confianza es similara la regla "si (cualquier elemento), entonces mermelada".
Valor de mejora: la proporción de las medidas del nivel de confianza posteriores y anteriores (con ysin los elementos del antecedente).
Resultados: se generan (en forma opcional) diversos resultados, entre otros:
• Un informe de modelo HTML interactivo que resume las reglas creadas, su métrica y la opción defiltrar reglas interesantes.
• Un nuevo conjunto de datos clasificado que crea un conjunto de datos total (un registro por identificadorde cesta) y que indica si cada regla seleccionada se cumple para ese grupo de registros.
• Las reglas como código instalable en formato Transaction Measurement Language.
qsruleminerSinopsisqsruleminer -ini <archivo de configuración> -output <archivo de reglas>[-force]
Descripción: Encuentra reglas de asociación o secuenciamiento.
Parámetros: El archivo de configuración controla cómo se ejecuta el proceso de extracción de reglas.Cada línea del archivo puede especificar una de las siguientes opciones. Las líneas que comienzancon # o que no tienen un signo igual (=) se ignoran. (Tenga en cuenta que no se permiten comentariosa la derecha de la línea). Una línea que comienza con eof hace que se ignore el resto del archivo.
Por ejemplo, el siguiente archivo ini buscará reglas que muestren un valor de mejora como la medidaadicional con al menos tres elementos y como máximo 10, con una fiabilidad mínima de 20%, un soportemínimo de 5% y una mejora mínima de 25%:
129Guía de referencia del comando de creación de datos y TML
Capítulo 9: Comandos para construir modelos
enfoque = C:/association/MarketBasket.ftr
task =market basket
key fields = TRANS_NO
product field = ProductName
options = -tr -el -d25 -s5.0 -c20.0 -n10 -m3
eof
DescripciónDefault (Predeterminada)Parámetro
La ubicación del enfoque deentrada.
(obligatorio)focus
Especifica la tarea dedescubrimiento. Los valores
(obligatorio)task
válidos son: segment, marketbasket, next product
Especifica un campo clave oclave compuesta (una lista de
(obligatorio)key fields
campos separados por comas)que define una cesta. El conjuntode datos de entrada debe estarordenado con respecto a la clave.
Especifica el identificador delcampo de producto. El campo
(obligatorio)product field
debe tener rangos y sercategórico. Cada rango define unproducto por separado (para quese pueda usar una jerarquía derangos categóricos para trabajaren diferentes niveles de detalleen los mismos datos de productosubyacentes). Las clavescompuestas no son compatibles.
Lista de elementos separada porcomas que restringe los
(ninguno)rhs
elementos que pueden apareceren la parte derecha (elconsecuente) de la regla. Tengaen cuenta que no se permiteningún espacio en blancoexcedente; las etiquetas itemA,itemB e itemC deben coincidirexactamente con las etiquetas derango correspondientes delcampo de producto.
Portrait Miner 7.1130
qsruleminer
DescripciónDefault (Predeterminada)Parámetro
(solo tarea del siguiente producto)Especifica el campo a utilizar
(ninguno)timestamp field
como marca de hora para cadaelemento. Debe ser de tipo fechao entero. No se admiten lasclaves compuestas de marca dehora.
(solo tarea de segmentos)Especifica una lista de campos
(ninguno)segment fields
separados por comas para utilizaren la tarea de descubrimiento desegmentos. Las etiquetas derango de los camposespecificados corresponderán alos elementos de la tarea dedescubrimiento.
Pasa todo lo posterior al signoigual directamente al algoritmoapriori.
(ninguno)options
Las opciones de soporte apriori incluyen (también consultehttp://www.borgelt.net/doc/apriori/apriori.html#options):
DescripciónOpción
Descubre reglas de asociación-tr
Valor de soporte mínimo (valor predeterminado:10%)
-s<#>
Valor de soporte máximo: positive: percentage;negative: absolute number (valor predeterminado:100%)
-S<#>
Valor de fiabilidad mínimo (valor predeterminado:80%)
-c<#>
Cantidad mínima de elementos por regla (valorpredeterminado: 1)
-m<#>
Cantidad máxima de elementos por regla (valorpredeterminado: sin límite)
-n<#>
No utiliza una medida de evaluación de reglaadicional
-ex
Valor mínimo para la medida de evaluación deregla adicional (valor predeterminado: 10%).
-d<#>
131Guía de referencia del comando de creación de datos y TML
Capítulo 9: Comandos para construir modelos
DescripciónOpción
Para especificar la medida de evaluación de regla adicional:
Fiabilidad de la regla-ec
Diferencia de fiabilidad absoluta con el anterior-ed
Valor de mejora-el
Diferencia del valor de mejora con 1-ea
Diferencia del cociente de mejora con 1-eq
Convicción-ev
Diferencia de convicción con 1-ee
Diferencia del cociente de convicción con 1-er
Factor de certeza-ef
Medida de Chi cuadrado normalizado-en
Medida de valor de P desde Chi cuadrado-ep
Diferencia de información con el anterior-ei
Valor de P desde el estadístico G-eg
Registro binario del cociente de soporte-eb
Portrait Miner 7.1132
qsruleminer
Capítulo 10Comandos para trabajar conarchivos QMML
En esta sección:
• qsqmmlview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .134• qsqmmledit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .134• qslt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .137• qsqmml2sas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .139• qsqmml2sql . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .139• qsqsfmtosas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .140
qsqmmlviewSinopsis qsqmmlview -input <archivo QMML de origen>
[-prettyprint | -rulesets | -ruleset <ruleset>]
Descripción: Visualiza información sobre el archivo QMML de origen: muestra los contenidos en unXML perfectamente formateado (la opción -prettyprint). Muestra información de resumen paratodos los conjuntos de reglas del archivo (la opción -rulesets) o muestra información detallada deun conjunto de reglas especificado (la opción -ruleset).
Por defecto, qsqmmlview muestra información detallada de todos los conjuntos de reglas del archivo.
Argumentos opcionales: además de los argumentos requeridos, qsqmmlview acepta las opcionescomunes a todos los comandos de creación de datos [consulte Opciones estándar de la línea decomandos en la página 21].
Nota: • Si se especifica la opción -rulesets o -ruleset y el archivo QMML no tiene la formaqmml:rules, se produce un error en qsqmmlview.
• Si se utiliza la opción -ruleset y el archivo QMML no contiene un conjunto de reglas con elnombre especificado, se produce un error en qsqmmlview.
• Para obtener información sobre las reglas y los conjuntos de reglas QMML, consulte Lenguajede marcado de metadata Quadstone.
Ejemplos
Verificar cuál de los conjuntos de reglas (si hay alguno) del documento de reglas QMML model.qmmlestán activados:qsqmmlview -input model.qmml -rulesets
Ver los nombres y tipos de los campos de entrada y salida del conjunto de reglas (compilado)OutcomeRules en el documento de reglas QMML model.qmml:qsqmmlview -input model.qmml -ruleset OutcomeRules
También consulte
XML en Portrait Miner en la página 342
qsqmmledit en la página 134
qsqmmleditSinopsis qsqmmledit -input <archivo QMML de origen> [-output <archivo QMML dedestino>]
-addrule <archivo de reglas>
Portrait Miner 7.1134
qsqmmlview
qsqmmledit -input <archivo QMML de origen> [-output <archivo QMML de destino>]-addruleset <conjuntos de reglas> <rule> [<reglae> ...]
qsqmmledit -input <archivo QMML de origen> [-output <archivo QMML de destino>]
-deleteruleset <conjuntos de reglas> qsqmmledit -input <archivo QMML deorigen>
[-output <archivo QMML de destino>]
-parse
[-s]
qsqmmledit -input <archivo QMML de origen> [-output <archivo QMML de destino>]
{-compile | -compile <conjuntos de reglas> [<conjuntos de reglas> ...] }
[-l] [-s]
qsqmmledit
-input <archivo QMML de origen> [-output <archivo QMML de destino>]
{-setlive | -setlive <conjuntos de reglas> | -setlive <conjuntos de reglas>true | -setlive <conjuntos de reglas> false}
Descripción: modifica el archivo QMML de origen (si no se utiliza la opción -output) al realizar unade las siguientes operaciones:
• Agregar una regla del archivo de reglas, que es un archivo XML estándar que contiene elementos<field> o un archivo de intercambio QMML FDL que contiene reglas en elementos<fdl-derivation> y <fdl-function>.
A una regla no denominada se le otorga el nombre Rule. Si el archivo QMML de origen no tiene laforma qmml:rules o ya contiene una regla con el mismo nombre que alguna de las reglas del archivode reglas, se produce un error en qsqmmledit.
• Agregar un conjunto de reglas que contenga una o más reglas (ya presentes como elementos <field>en el archivo QMML de origen).
Si el archivo QMML de origen no tiene la forma qmml:rules, ya contiene un conjunto de reglas conel nombre de conjunto de reglas especificado o no contiene reglas con todos los nombres especificados,se produce un error en qsqmmledit.
• Eliminar un conjunto de reglas (pero no las reglas que contiene).
Si el archivo QMML de origen no tiene la forma qmml:rules o no contiene un conjunto de reglascon el nombre especificado, se produce un error en qsqmmledit.
• Analizar el archivo.
Si utiliza Archivo->Exportar como QMML en Decision Studio para crear el archivo QMML de origen,Portrait Miner analiza el archivo QMML automáticamente. En este caso, no es necesario utilizar elcomando -parse. De lo contrario, el comando -parse es un requisito previo para la compilación.
Si el archivo QMML no tiene la forma qmml:rules, qsqmmledit no hace nada (excepto que seutilice la opción -s, en cuyo caso se produce un error). Si el archivo QMML de origen tiene la formaqmml:rules, qsqmmledit intenta analizar todas las reglas no analizadas. Si no se puede analizar
135Guía de referencia del comando de creación de datos y TML
Capítulo 10: Comandos para trabajar con archivos QMML
una regla, qsqmmledit envía un mensaje de advertencia y continúa con la siguiente regla (exceptoque se utilice la opción -s, en cuyo caso se produce un error).
• Compilar todos los conjuntos de reglas o los conjuntos de reglas especificados (un requisito previopara la implementación).
Si el archivo QMML no tiene la forma qmml:rules, qsqmmledit no hace nada (excepto que seutilice la opción -s, en cuyo caso se produce un error). Si no se analiza una regla, se produce unerror en qsqmmledit.
• Marcar todos los conjuntos de reglas como activos (listos para la implementación) o marcar un conjuntode reglas especificado como activo (true/por defecto) o no (false).
Si el archivo QMML de origen no tiene la forma qmml:rules, no contiene un conjunto de reglas conel nombre especificado o no se compila el conjunto de reglas especificado, se produce un error enqsqmmledit.
Argumentos opcionales
EfectoOpción
Marca cada conjunto de reglas como activo, amedida que se compilan.
-l
En lugar de modificar el archivo QMML de origen,crea el archivo QMML de destino especificado y leaplica los cambios solicitados.
-output <archivo QMML de destino>
Trata el archivo rigurosamente, deshabilitando losconjuntos de reglas vacíos. Cuando se lo utiliza
-s
con la opción -parse, se produce un error si elarchivo QMML de origen no tiene la formaqmml:rules o si no se puede analizar cualquierregla no analizada del archivo de origen. Cuandose lo utiliza con la opción -compile, se produceun error si el archivo QMML de origen no tiene laforma qmml:rules.
Además de estas opciones de línea de comando, qsqmmledit acepta las opciones comunes de todoslos comandos de creación de datos [consulte Opciones estándar de la línea de comandos en lapágina 21].
Nota: • Para obtener información sobre las reglas y los conjuntos de reglas QMML, consulte Lenguajede marcado de metadata Quadstone.
• Solo se puede analizar una regla si es compatible con la variante RealTime de FDL.
Ejemplos
Agregar reglas del archivo de intercambio QMML FDL model.xfdl al documento de reglas QMMLmodel.qmml:qsqmmledit -input model.qmml -addrule model.xfdl
Portrait Miner 7.1136
qsqmmledit
Asignar una regla Outcome del documento de reglas QMML model.qmml a un nuevo conjunto dereglas OutcomeRules:qsqmmledit -input model.qmml-addruleset OutcomeRules Outcome
Implementar el documento de reglas QMML model.qmml al analizar todos los FDL insertados, compilartodos los conjuntos de reglas y marcar el conjunto de reglas OutcomeRules como activo:qsqmmledit -input model.qmml -parseqsqmmledit -input model.qmml -compileqsqmmledit -input model.qmml -setlive OutcomeRules
También consulte
XML en Portrait Miner en la página 342
qslt en la página 137
qsqmmlview en la página 134
qsltSinopsis qslt {-input <archivo de origen> | -input -}
[-output <archivo de destino> | -output -]
[[-source <tipo de origen>] [-target <tipo de destino>] | -transform<transformación denominada>]
[-spec <archivo de especificación>]
Descripción: trasforma el archivo de origen especificado o la entrada estándar (con -input-) en unformato diferente al escribir el resultado en una salida estándar por defecto.
Por defecto, en el caso de un archivo de origen XML, qslt deduce los tipos de archivo de origen y dedestino de las extensiones del nombre de archivo (si las hay) y de los contenidos del archivo. Luegointenta buscar y aplicar una transformación que coincida con estos tipos. Si no existe ningunatransformación o existe más de una transformación posible, el comando no hace nada, excepto emitirun mensaje de error, y se produce el fallo.
Las transformaciones estándar que coinciden con los tipos de archivo origen y de destino son:
• Desde fdl (una expresión FDL o un conjunto de instrucciones createTML) haciaqmml:expressions (FDL totalmente analizado en QMML)
• Desde fdl (una expresión FDL o un conjunto de instrucciones create TML) hacia qmml:x-fdl(formato de intercambio QMML FDL) y viceversa
• Desde qmml:expressions (FDL totalmente analizado en QMML) hacia qmml:x-fdl (formato deintercambio QMML FDL)
• Desde qmml:rules (formato de reglas QMML) hacia fdd (formato de descripción de datos planos)
137Guía de referencia del comando de creación de datos y TML
Capítulo 10: Comandos para trabajar con archivos QMML
La transformación estándar restante es la transformación denominada prettyprint, que transformaXML arbitrario en XML perfectamente formateado (con saltos de línea y sangrías). Solo se lo puedeelegir al utilizar la opción -transform.
Argumentos opcionales
EfectoOpción
Escribe los datos transformados en este archivode destino (al sobrescribir cualquier archivoexistente con el mismo nombre).
-output <archivo de destino>
Escribe los datos transformados en la salidaestándar (la opción predeterminada si no seespecifica la opción -output).
-output -
Considera solo las transformaciones que coincidancon este tipo de origen (al anular un tipo de origen
-source <tipo de origen>
deducido, si lo hay). Se debe especificar estaopción si qslt está leyendo desde una entradaestándar.
Ubica la transformación solicitada en este archivo,ignorando las transformaciones estándar y
-spec <archivo de especificación>
cualquier personalización que se aplique a todo elsistema o esté especificada por el usuario.
Considera solo las transformaciones que coincidancon este tipo de destino (al anular un tipo de
-target <tipo de destino>
destino deducido, si lo hay). Se debe especificaresta opción si qslt está escribiendo en una salidaestándar.
Utiliza la transformación denominada en lugar deseleccionar una transformación según los tipos deorigen y de destino.
-transform <transformación denominada>
Además de estas opciones de línea de comando, qslt acepta las opciones comunes a todos loscomandos de creación de datos [consulte Opciones estándar de la línea de comandos en la página21].
Nota: • Al convertir entre el tipo fdl y el tipo QMML, las instrucciones create TML corresponden aderivaciones de campos denominados en QMML, mientras que las expresiones FDL simplescorresponden a derivaciones de archivos no denominados en QMML.
• La conversión desde qmml:rules hacia el tipo fdd omite los campos derivados.• Además de los tipos de transformación estándar, se pueden definir transformaciones
personalizadas que se apliquen a todo el sistema o a un usuario en particular. Lastransformaciones personalizadas pueden aceptar opciones de línea de comando adicionales.
• Para obtener información detallada sobre las formas QMML qmml:expressions,qmml:rules, y qmml:x-fdl, consulte Lenguaje de marcado de metadata Quadstone.
Ejemplos
Portrait Miner 7.1138
qslt
Transformar la metadata de campos representada por el archivo FDD model.fdd en un documentode reglas QMML "vacío" model.qmml (que describa un conjunto de campos, pero que no contenganinguna regla), al utilizar una transformación especificada por el usuario descrita en el archivoext/qmml/qslt.xml:qslt -source fdd -target qmml:rules -input model.fdd-output model.qmml -spec ext/qmml/qslt.xml
Transformar una expresión FDL del archivo model.fdl en formato de intercambio QMML FDL, alescribir el resultado en el archivo model.xfdl:qslt -source fdl -target qmml:x-fdl -input model.fdl-output model.xfdl
También consulteXML en Portrait Miner en la página 342 qsqmmledit en la página 134
qsqmml2sasSinopsis qsqmml2sas <archivo QMML>
Descripción: Convierte un archivo QMML en un archivo SAS que tiene una instrucción SASindependiente para cada derivación de campo.
Nota: • El comando es experimental.• Se puede acceder a la mayoría de las funciones del comando de creación de datos qsqmml2sas
mediante el cuadro de diálogo Convertir a SAS de Portrait Miner.
Ejemplo
Convertir model.qmml en model.sas:qsqmml2sas model.qmml
qsqmml2sqlSinopsis qsqmml2sql <archivo QMML>
{Oracle | Teradata V2Rx | MS SQL Server}
<tabla de origen>
[<campo> [, <campo> ... ]]}
Descripción: utiliza un tipo de base de datos compatible y una tabla de origen para convertir un archivoQMML en un archivo SQL que tenga una instrucción de SQL SELECT independiente para cada derivaciónde campo.
Argumentos opcionales
139Guía de referencia del comando de creación de datos y TML
Capítulo 10: Comandos para trabajar con archivos QMML
EfectoOpción
Convierte solo los campos derivados.<campo> [, <campo> ... ]
Nota: • El comando es experimental.• Se puede acceder a la mayoría de las funciones del comando de creación de datosqsqmml2sql mediante el cuadro de diálogo Convertir en SQL de Portrait Miner.
Ejemplo
Convertir model.qmml en model.sql, crear instrucciones SELECT para el Servidor SQL de Microsofty utilizar prod.customer como la tabla de origen para cualquier puntaje.qsqmml2sas model.qmml "MS SQL Server" prod.customer
qsqsfmtosasSinopsis qsqsfmtosas <archivo de metadata>
Descripción: Convierte derivaciones de un archivo de metadata en un archivo SAS que tiene unainstrucción SAS independiente para cada derivación de campo.
Nota: • El comando es experimental.• Se puede acceder a la mayoría de las funciones del comando de creación de datosqsqsfmtosas mediante el cuadro de diálogo Convertir a SAS de Portrait Miner.
Ejemplo
Convertir metadata.qsfm en metadata.sas:qsqsfmtosas metadata.qsfm
Portrait Miner 7.1140
qsqsfmtosas
Capítulo 11Otros comandos
En esta sección:
• qsmapgen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .142
qsmapgenSinopsis qsmapgen
-input <jerarquía categórica> [-input <jerarquía categórica> ...]
-name <nombre de mapa> -output <directorio> [-overwrite]
[-style radial_drill | -style radial_layers]
Descripción: A partir de uno o más archivos de jerarquía categórica (en general con la extensión denombre de archivo .hrc), crea una representación de las jerarquías categóricas apropiadas para suuso en Decision Studio Visor de Mapa, con una región que corresponda a cada categoría. Crea unmapa o mapas en el directorio especificado, al utilizar el nombre de mapa especificado como la basepara los nombres de archivos.
Argumentos opcionales
EfectoOpción
Habilita nuevos archivos de mapa mediante lasopciones -name y -output para sobrescribir losarchivos existentes.
Sin la opción -overwrite, si alguno de losarchivos de mapa por crear ya existe, el comandono hace nada (excepto emitir una advertencia).
-overwrite
Crea una jerarquía de mapas apropiada paradesglosar en el Visor de mapa de Decision Studio,
-style radial_drill
con el mapa del nivel superior (mostradoinicialmente) basado en el rango de granularidadmás gruesa de cada jerarquía de rangoscategóricos (esta es la opción predeterminada sino se especifica la opción -style).
Crea un mapa independiente para cada nivel delas jerarquías de rangos categóricos, para que un
-style radial_layers
usuario de Decision Studio pueda elegir el gradode borrosidad con el que se visualizarán loscampos en el Visor de mapa, aunque sin la opciónde desglosar.
Además de estas opciones de línea de comando, qsmapgen acepta las opciones comunes de todoslos comandos de creación de datos [consulte Opciones estándar de la línea de comandos en lapágina 21].
Nota:
• Si un archivo de jerarquía categórica no especifica una jerarquía correcta, se produce un error enqsmapgen.
Portrait Miner 7.1142
qsmapgen
• No se debe usar un valor de campo en más de un archivo de jerarquía categórica. Si se hace, elcomportamiento de qsmapgen es indefinido.
• Si se especifica un nombre de categoría en más de un archivo de jerarquía categórica o en más deun nivel del mismo archivo, qsmapgen agrega uno o más sufijos a los nombres de región para asegurarque cada nombre sea único.
• En el caso de un mapa elaborado mediante -style radial_drill (o sin la opción -styleespecificada), el mapa del nivel superior consta de los archivos .mif y .mid, denominados con elnombre del mapa especificado. Los mapas detallados en el siguiente nivel de detalle se encuentranen el siguiente subdirectorio. Los mapas del nivel subsiguiente de detalle (si los hay) se encuentranen el siguiente subdirectorio de ese directorio, y así sucesivamente.
• Los mapas producidos mediante -style radial_layers constan de pares de archivos .mif y.mid, cada uno denominado con el nombre del mapa dado junto con un sufijo numérico que correspondeal nivel de la jerarquía.
• Al utilizar Portrait Miner, se puede acceder a la mayoría de las funciones de qsmapgen mediantedel cuadro de diálogo Crear mapa de categorías. .
Ejemplos: dado el archivo de jerarquía categórica Referrer.hrc, que contiene los siguienteselementos:
B, Banner Ad (aviso publicitario), Comercialización
D, Direct (directo), Directo
E, E-mail Link (enlace de correo electrónico), Comercialización
G, Google, Motor de búsqueda
M, MSN, Motor de búsqueda
Y, Yahoo, Motor de búsqueda
L, Lycos, Motor de búsqueda
y el archivo de jerarquía categórica PurchasePage.hrc, que contiene los siguientes elementos:
01, Ropa de caballero
02, Mujeres
03, Niños
04, Hogar
crear un archivo de mapa clickthru.mif (y los archivos compatibles) apropiado para desglosar, enun nuevo directorio webmaps:qsmapgen -input Referrer.hrc -input PurchasePage.hrc-output webmaps -name clickthru
El mapa del nivel superior tiene las siguientes regiones (donde las "puntas" de la circunferencia indicanregiones en las que se puede desglosar hasta el siguiente nivel):
143Guía de referencia del comando de creación de datos y TML
Capítulo 11: Otros comandos
Al desglosar en la región "SearchEngine", se genera un mapa con las siguientes regiones:
Alternativamente puede crear archivos de mapa independientes clickthru_layer_1.mif yclickthru_layer_2.mif (y los archivos compatibles) en el directorio webmaps:qsmapgen -input Referrer.hrc -input PurchasePage.hrc-output webmaps -name clickthru_layer -style radial_layers
El mapa clickthru_layer_1.mif tiene las siguientes regiones:
Portrait Miner 7.1144
qsmapgen
y el mapa clickthru_layer_2.mif tiene las siguientes regiones:
145Guía de referencia del comando de creación de datos y TML
Capítulo 11: Otros comandos
Capítulo 12Lenguaje de medición detransacciones
En esta sección:
• Acerca de Transaction Measurement Language . . . . . .148• Sintaxis de TML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .148• Palabras reservadas en TML . . . . . . . . . . . . . . . . . . . . . .149
Acerca de Transaction Measurement LanguageTransaction Measurement Language (TML) es una recopilación de envolturas sintácticas livianasalrededor de expresiones FDL, que se utiliza para especificar derivaciones y agregaciones de campojunto con los asistentes Derivar campos y Agregar registros asistentes, y los comandos de creaciónde datos de Portrait Miner qsderive, qsmeasure, qstrack y qsselect.
También consulte
Acerca del lenguaje de derivación de campos (FDL) en la página 182
qsderive en la página 63
qsmeasure en la página 66
qsselect en la página 73
qstrack en la página 70
Sintaxis de TML en la página 148
Sintaxis de TMLUn archivo de derivaciones, rastreos, selecciones o agregaciones incluye una o más instruccionescreate de TML, mientras que un archivo de estadísticas incluye una o más instrucciones calculatede TML.
• TML es un lenguaje que distingue mayúsculas de minúsculas:
• Las palabras clave de TML (create, by, string etc.) se escriben en minúsculas, a excepción deSTATISTIC.
• Los nombres de todas las funciones de agregación [consulte Funciones de agregación paramediciones y derivaciones en la página 162] se escriben en minúsculas.
• Los nombres Average, average, y AVERAGE hacen referencia a distintos campos o estadísticas.
• Los nombres de campos y estadísticas deben comenzar con una letra ("A" — "Z" o "a" — "z"), incluirsolamente letras, dígitos y guión bajo ("_") y no tener más de 128 caracteres; como opción puedenestar entre comillas simples, por ejemplo, 'CustomerID'. Debe encerrar el nombre de un campo oestadística en comillas simples si coincide con una palabra reservada de TML o FDL, o si es diferentede una sólo en fuente.
• La sintaxis de TML se describe utilizando diagramas de ferrocarriles similares al siguiente:
Siempre y cuando siga las flechas y no marche hacia atrás, cualquier ruta a través del diagrama delferrocarril lleva a TML de sintaxis válida (aunque no necesariamente significativo):
Portrait Miner 7.1148
Acerca de Transaction Measurement Language
• Las palabras en cuadros con forma de óvalo/circulares (como create) son palabras clave de TML;debe escribirlas exactamente como aparecen.
• También debe escribir la puntuación en los cuadros con forma de óvalo (como ":" y ":=")exactamente como aparece (no puede agregar espacios entre ":" y "=" en ":=").
• No olvide el punto y coma que finaliza cada instrucción de TML.• Los términos en cuadros rectangulares (como expression) hacen referencia a otros diagramas de
ferrocarriles o a formas descritas en otro lugar en palabras; no debe escribirlos literalmente.
• TML es un lenguaje de formato libre: puede separar líneas o insertar espacios adicionales entreelementos sintácticos (en cuadros con forma de óvalo/circulares en diagramas de ferrocarriles) sinafectar la interpretación de un archivo de derivaciones, rastreos, selecciones, agregaciones oestadísticas.
• Además de introducir espacios entre elementos sintácticos, puede incluir comentarios, que comienzancon una barra doble ("//") y continúan hasta el final de la misma línea.
• Siempre que la sintaxis de TML requiera una expresión, puede utilizar cualquier expresión FDL[consulte Expressions (Expresiones) en la página 186], excepto que una expresión que implique unapalabra reservada de TML, un punto y coma o llaves {...} debe encerrarse entre paréntesis (...).
También consulte
Acerca de Transaction Measurement Language en la página 148
Evaluación del enfoque de estadísticas: la instrucción de calcular en la página 158
Definición de campos: la instrucción create en la página 152
Palabras reservadas en FDL en la página 206
Palabras reservadas en TML en la página 149
Palabras reservadas en TMLLos siguientes símbolos son palabras reservadas en TML:
aggregation, all, and, as, auto, automatic, bin, binning, bool, boolean, by,calculate, constant, create, crosstab, fecha, default, description, dimension,double, drl, enum, except, fields, file, float, format, from, full, function,group, include, inplace, input, int, integer, join, left, long, merge, meta,modifiable, normal, on, open outer, outfile, output, parameter, pragma, real,ref, reference, rename, right, separate_functions, short, show,show_empty_segments, show_summaries, sort, state, statistic, strbytes, string,suppress, table, temp, temporary, track, tracker, view, where
Para utilizar una palabra reservada o una palabra diferente únicamente en fuente de una palabrareservada, como un nombre de campo o estadística en TML o como un identificador [consulteExpressions (Expresiones) en la página 186] en FDL, debe encerrarla con comillas simples, por ejemplo,'Date'.
También consulte
149Guía de referencia del comando de creación de datos y TML
Capítulo 12: Lenguaje de medición de transacciones
Acerca de Transaction Measurement Language en la página 148
Palabras reservadas en FDL en la página 206
Portrait Miner 7.1150
Palabras reservadas en TML
Capítulo 13Instrucciones TML
En esta sección:
• Definición de campos: la instrucción create . . . . . . . . .152• Uso de funciones de agregación y las cláusulas where y
default . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .154• División de agregaciones: la cláusula by . . . . . . . . . . . .156• Evaluación del enfoque de estadísticas: la instrucción de
calcular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .158
Definición de campos: la instrucción createLa instrucción create define un campo por derivación o agregación, según el contexto en el queaparece.
Derivaciones: el archivo de derivaciones para qsderive, o la ventana Derivar campos equivalente,el archivo de rastreos para qstrack y el archivo de selecciones para qsselect deben incluirinstrucciones create de la siguiente forma:
El archivo de agregaciones para qsmeasure o la ventana Agregar registros equivalente puede comoopción incluir instrucciones create de la siguiente forma:
En ambos casos, la instrucción create define un campo llamado nombre en relación con una expresiónFDL [consulte la sección Expressions (Expresiones) en la página 186]. El tipo de datos del campo esel tipo de datos de la expresión, a menos que los sobrescriba especificando un tipo compatible [consultela sección Tipos de datos en la página 184].
• Para cada instrucción create sucesiva en el archivo de derivaciones, qsderive o la ventana Derivarcampos deriva un campo en el enfoque de salida utilizando la expresión dada, que puede hacerreferencia a campos en el enfoque de origen y a campos derivados más temprano en el archivo dederivaciones.
• Para cada instrucción create sucesiva en el archivo de rastreos, qstrack deriva un campo utilizandola expresión dada, que puede hacer referencia a campos en el enfoque de origen y a campos derivadosmás temprano en el archivo de rastreos, así como también a estadísticas de enfoque definidas encualquier archivo de estadísticas. La expresión comúnmente implica variables de estado [consulte lasección Variables en la página 190].
• Dado un archivo de selecciones, qsselect deriva un campo correspondiente de forma predeterminadacon la primera instrucción create e ignora cualquier otra instrucción en el archivo. La expresión dedefinición debe ser de tipo booleano (o compatible).
• Para cada instrucción create sucesiva de esta forma en el archivo de agregaciones, qsmeasure ola ventana Agregar registros deriva un campo en el enfoque de salida utilizando la expresión dada,que puede hacer referencia a campos derivados anteriormente en el archivo de agregaciones y aestadísticas de enfoque definidas en cualquier archivo de estadísticas.
• Una instrucción temporary tiene el mismo efecto que la instrucción create, excepto que el campono aparece en el enfoque de salida. No obstante, aún puede hacer referencia al campo temporaryen las expresiones siguientes del archivo de agregaciones.
Agregaciones El archivo de agregaciones para qsmeasure o la ventana Agregar registros equivalentepuede incluir instrucciones create de la siguiente forma:
Portrait Miner 7.1152
Definición de campos: la instrucción create
Para cada instrucción create de esta forma en el archivo de agregaciones, qsmeasure o la ventanaAgregar registros deriva eficazmente un campo virtual correspondiente a la expresión siguiendo lafunción de agregación. Esta expresión puede hacer referencia a campos en el enfoque de origen.
Después de derivar el campo virtual, qsmeasure o la ventana Agregar registros aplica la función deagregación [consulte la sección Uso de funciones de agregación y las cláusulas where y defaulten la página 154].
El tipo de datos por defecto de los campos resultantes depende de la función de agregación y los valores,operadores y funciones implicados en la expresión a la que se aplica, pero puede sobrescribirloespecificando un tipo compatible.
Una instrucción temporary tiene el mismo efecto que la instrucción create, excepto que el campono aparece en el enfoque de salida. No obstante, aún puede hacer referencia al campo temporary enlas expresiones siguientes del archivo de agregaciones.
Nota: • En qsderive los archivos de derivaciones Derivar campos, archivos de seleccionesqsselect y archivos de rastreos qstrack, la expresión puede implicar estadísticas decampos, variables globales y funciones definidas en función de estos. Estas funciones FDLno están disponibles en un archivo de agregaciones qsmeasure o Agregar registros.
• Debe colocar paréntesis adicionales en la expresión si incluye un punto y coma, corchetes ouna palabra reservada TML [consulte la sección Palabras reservadas en TML en la página149].
• Cada instrucción create debe comenzar en una nueva línea.
Ejemplos
Dado el archivo de derivaciones, derivations-customer.tml, que contiene lo siguiente:// Length of standing of customer in monthscreate CustMonths := countwholemonths(StartDate, today());// A key field of extended lengthcreate CustomerID_24 : string(24) := CustomerID;
Aplicar estas derivaciones al enfoque RetailCustApril.ftr para crear un nuevo enfoqueRetailCustAprilDeriv.ftr:qsderive -derivations derivations-customer.tml-input RetailCustApril.ftr -output RetailCustAprilDeriv.ftr
Dado el archivo de selecciones, selections-customer.tml, que contiene lo siguiente:// Select male customers aged between 18 and 65 inclusive.create Selection := Gender = 1 and Age >= 18 and Age <= 65;
153Guía de referencia del comando de creación de datos y TML
Capítulo 13: Instrucciones TML
Aplicar esta selección al enfoque RetailCustApril.ftr para crear un nuevo enfoqueRetailCustAprilSelection.ftr:qsselect -selections selections-customer.tml-input RetailCustApril.ftr%-output RetailCustAprilSelection.ftr
Dado el archivo de agregaciones, aggregations-mostRecent.tml, que contiene lo siguiente:temporary LastPurchase := max(PurchaseDate);create AvgTransVal := mean(Amount - 0.01 * PointsRedeemed);create NumTrans := count();create MonthsSinceLastPurchase :=countwholemonths(LastPurchase, today());
Aplique estas agregaciones al enfoque RetailTransApril.ftr para crear un enfoque orientado alcliente RetailAggRecentApril:qsmeasure -aggregations aggregations-mostRecent.tml-input RetailTransAprilSorted.ftr -output RetailAggRecentApril%-keys CustomerID
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
qsderive en la página 63
qsmeasure en la página 66
qsselect en la página 73
qstrack en la página 70
División de agregaciones: la cláusula by en la página 156
Uso de funciones de agregación y las cláusulaswhere y default
Puede agregar registros utilizando qsmeasure o la ventana Agregar registros equivalente.
Cuando utiliza una instrucción create en un archivo de agregaciones [consulte la sección Definiciónde campos: la instrucción create en la página 152], qsmeasure o la ventana Agregar registrosequivalente deriva eficazmente un campo virtual que corresponde a la expresión entre paréntesis quesigue a la función de agregación.
Conceptualmente, qsmeasure o la ventana Agregar registros divide los registros en el enfoque deorigen (aumentado por el campo virtual) en grupos de registros con el mismo valor de campo clave.Para cada grupo de registros (que corresponden a un único valor de campo clave), qsmeasure o laventana Agregar registros aplica la función de agregación a los valores del campo virtual dentro deestos registros para producir un único valor de resultado.
Portrait Miner 7.1154
Uso de funciones de agregación y las cláusulas where y default
Los valores de resultado de todos los grupos en conjunto constituyen un nuevo campo, con el nombredeterminado en la instrucción create, a menos que la instrucción create incluya una cláusula by[consulte la sección División de agregaciones: la cláusula by en la página 156].
Dentro de cada grupo de registros con un valor de campo clave común, determinadas funciones deagregación ignoran los registros para los que el campo virtual incluye null [consulte la sección El valornull en la página 184].
Si la instrucción create incluye una cláusula where, la función de agregación ignora registros paralos que la expresión asociada se evalúa en 0 ("false"). Esta expresión puede hacer referencia a camposen el enfoque de origen.
Dado que las funciones de agregación pueden ignorar algunos de los registros en un grupo con un valorde campo clave, es posible que se omitan todos los registros en el grupo. Muchas funciones deagregación regresan el valor null en este caso. Al incluir una cláusula default, puede especificar unaexpresión constante que se evaluará en lugar de la agregación en el caso de que devuelva el valor null.
Cuando utiliza la función sum de agregación [consulte la sección sum (un argumento) en lapágina 179], comúnmente debe especificar una suma predeterminada de 0. Si no utiliza una
Nota:
cláusula default, la suma de una selección vacía de registros es null, lo probablemente noserá lo que desea.
Ejemplos Dado el archivo de agregaciones, aggregations-purchaseSummary.tml, que incluyelo siguiente:create firstPurchaseDate := first(PurchaseDate);create commonPaymentMethod := mode(PaymentMethod);create Spend := sum(Amount) default 0;create SpendInStore800 := sum(Amount)
where Store = "0800" default 0;create proportionSpendInStore800 := SpendInStore800 / Spend;create NumTransCRRedeemed := count()
where PaymentMethod = "CR" and not isnull(PointsRedeemed);
Aplique estas agregaciones al enfoque RetailTransApril.ftr para crear un enfoque orientado alcliente RetailAggSummaryApril:qsmeasure -aggregations aggregations-purchaseSummary.tml-input RetailTransAprilSorted.ftr -output RetailAggSummaryApril-keys CustomerID
155Guía de referencia del comando de creación de datos y TML
Capítulo 13: Instrucciones TML
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
Expressions (Expresiones) en la página 186
División de agregaciones: la cláusula byEl archivo de agregaciones para qsmeasure o la ventana Agregar registros equivalente incluye unasecuencia de instrucciones create [consulte Definición de campos: la instrucción create en lapágina 152]. Como parte de una instrucción create, también puede incluir una cláusula by para desglosarsu agregación de acuerdo con la aplicación de una función de división o la función bin a una expresiónderivada de otros campos.
Para cada posible entero i devuelto por la función de división o función bin, qsmeasure o la ventanaAgregar registros crea un campo separado, que incluye valores agregados de solo estos registrospara los que se evalúa la aplicación de la función en i. El nombre de cada uno de estos campos estáformado por el nombre en la instrucción create junto con un sufijo que depende de la función utilizadapara la división de la agregación.
• Están disponibles las siguientes funciones de división incorporadas (con sufijos de nombres de campodeterminados que corresponden a sucesivos valores de la función):
Sufijos de nombres de camposFunción
"_1," "_2," "_3," ..., "_31"day
"Sun," "Mon," "Tue," ..., "Sat"dayofweek
"0000," "0100," "0200" ..., "2300"hour
"NonNull," "Null"isnull
"MisMatch," "Match"match
"NotMember," "Member"member
"0," "1," "2," ..., "59"minute
"Jan," "Feb," "Mar," ..., "Dec"month
"0," "1," "2," ..., "59"second
"Negative," "Zero," "Positive"sgn
"NotMember," "Member"strmember
"_1," "_2," "_3," ..., "_53"weekofyear
• Puede utilizar la función bin para aplicar un rango FDL a una expresión. Si se utiliza como una funciónde división, la función bin da lugar a sufijos de nombres ce campos "_1," "_2," ..., "_n," "_null," y"_other" (donde n depende del número de rangos en la creación de rangos).
Portrait Miner 7.1156
División de agregaciones: la cláusula by
• También puede definir su propia función de división [consulte la sección Funciones definidas porel usuario en la página 192]. El atributo element_names define los sufijos de nombres de camposcorrespondientes a los valores de devolución de la función.
Ejemplos Dado el archivo de agregaciones, aggregations-builtinSplit.tml, que incluye losiguiente:create numberPurchases := count();create numberPurchasesOn_ := count() by dayofweek(PurchaseDate);create proportionPurchases_Mon :=numberPurchasesOn_Mon / numberPurchases;create purchaseAmountIn_ :=sum(Amount) by month(PurchaseDate) default 0;
Aplique estas agregaciones al enfoque RetailTransApril.ftr para crear un enfoque orientado alcliente RetailDateSplitsApril.ftr que incluya campos CustomerID, numberPurchases,numberPurchasesOn_Sun, numberPurchasesOn_Mon, ..., numberPurchasesOn_Sat,proportionPurchases_Mon, y purchaseAmountIn_Jan, purchaseAmountIn_Feb, ...,purchaseAmountIn_Dec:
qsmeasure -aggregations aggregations-builtinSplit.tml -keys CustomerID -input RetailTransApril.ftr-output RetailDateSplitsApril.ftr
Dado el archivo de agregaciones, aggregations-binSplit.tml, que incluye lo siguiente:create numberPurchasesAmountBand :=count() by bin(EqualRange(20,100,4),Amount);create numberPurchasesDateBand := count() bybin(PrePost(todate(19990401), todate(19990501),todate(19990601)), PurchaseDate);create ratioPrePost :=numberPurchasesDateBand_3 / numberPurchasesDateBand_2;
Aplique estas agregaciones al enfoque RetailTransApril.ftr para crear un enfoque orientado alcliente, RetailRangeSplitsApril.ftr, que incluye campos CustomerID,numberPurchasesAmountBand_1, numberPurchasesAmountBand_2, ...,numberPurchasesAmountBand_6, numberPurchasesAmountBand_null,numberPurchasesAmountBand_other (correspondiente a dos rangos finales, cuatro rangos internosy el rango no clasificado y null), numberPurchasesDateBand_1, numberPurchasesDateBand_2,..., numberPurchasesDateBand_4, numberPurchasesDateBand_null,numberPurchasesDateBand_other y ratioPrePost:
qsmeasure -aggregations aggregations-binSplit.tml -keys CustomerID -input RetailTransApril.ftr -outputRetailRangeSplitsApril.ftr
Dado el archivo de funciones FDL, fdl-functions-storeGroups.fdl, que incluye lo siguiente:function StoreGroupFunction( Store )[
element_names = "North, South, East, West"]{case
Store = "0000" or Store = "0800" : 1;Store = "0300" or Store = "0600" or Store = "0700" : 2;Store = "0100" or Store = "0400" : 3;default : 4;
}
157Guía de referencia del comando de creación de datos y TML
Capítulo 13: Instrucciones TML
Dado el archivo de agregaciones, aggregations-userDefinedSplit.tml, que incluye lo siguiente:create totalPurchases := sum(Amount);create totalPurchasesByStore_ :=sum(Amount) by StoreGroupFunction( Store );create proportionPurchases_North :=totalPurchasesByStore_North / totalPurchases;
Aplique estas agregaciones al enfoque RetailTransApril.ftr para crear un enfoque orientado alcliente, RetailGroupSplitsApril.ftr, que incluye los campos CustomerID, totalPurchases,totalPurchasesByStore_North, totalPurchasesByStore_South, totalPurchasesByStore_East,totalPurchasesByStore_West y proportionPurchases_North:qsmeasure -aggregations aggregations-userDefinedSplit.tml-library fdl-functions-storeGroups.fdl-keys CustomerID-input RetailTransApril.ftr -output RetailGroupSplitsApril.ftr
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
Expressions (Expresiones) en la página 186
Uso de funciones de agregación y las cláusulas where y default en la página 154
Evaluación del enfoque de estadísticas: lainstrucción de calcular
El archivo de estadística para qsmeasure, la ventana Agregar registros equivalente o qstrackcontienen instrucciones calculate del siguiente tipo:
La instrucción calculate define una estadística de enfoque llamada nombre en términos de unafunción de agregación aplicada a una expresión FDL [consulte Expressions (Expresiones) en la página186], que puede referirse a los campos en el enfoque de origen.
Al igual que sucede con una medición [consulte Uso de funciones de agregación y las cláusulaswhere y default en la página 154], qsmeasure, qstrack o la ventana Agregar registros derivaefectivamente un campo virtual que corresponde a la expresión entre paréntesis que sigue a la funciónde agregación.
La instrucción calculate genera un único valor de resultado, que se obtiene aplicando la función deagregación a todos los valores en el campo virtual. (Por el contrario, la instrucción create en un archivo
Portrait Miner 7.1158
Evaluación del enfoque de estadísticas: la instrucción de calcular
de agregaciones genera un campo en el que cada valor se obtiene aplicando la función de agregacióna los valores en el campo virtual para un grupo de registros.)
El tipo de dato por defecto de una estadística de enfoque depende de la función de agregación y de losvalores, los operadores y las funciones involucradas en la expresión a la que este se aplica, pero se lopuede anular si se especifica un tipo compatible [consulte Tipos de datos en la página 184].
Si la instrucción calculate contiene una cláusula where, la función de agregación ignora los registrospara los que la expresión asociada evalúa a 0 ("falso"). Esta expresión puede hacer referencia a camposen el enfoque de origen.
Una vez que se ha definido una estadística de enfoque en el archivo de estadística, se puede remitir aella en las expresiones del archivo de agregaciones o del archivo seguidor mediante la forma especialSTATISTIC.nombre. Se puede usar esta forma siempre que se desee remitirse a un campo en elarchivo seguidor o de enfoque de origen.
Ejemplos Dado el archivo de estadísticas, statistics-amount.tml, que contiene lo siguiente:calculate averageAmount := mean(Amount);
Dado el archivo de agregaciones, aggregations-statistic.tml, que contiene:create averageSpend := mean(Amount);create bigSpender := averageSpend > STATISTIC.averageAmount;
Aplicar estas agregaciones al enfoque RetailTransApril.ftr para crear un enfoque orientado alcliente RetailAprilBigSpenders.ftr que contenga los campos CustomerID, averageSpend ybigSpender:qsmeasure -statistics statistics-amount.tml-aggregations aggregations-statistic.tml-keys CustomerID-input RetailTransApril.ftr -output RetailAprilBigSpenders.ftr
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
159Guía de referencia del comando de creación de datos y TML
Capítulo 13: Instrucciones TML
Capítulo 14Funciones de agregación
En esta sección:
• Funciones de agregación para mediciones yderivaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .162
• any . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .165• confintlower . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .165• confintupper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .166• count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .167• countnonnull/countnonnulls . . . . . . . . . . . . . . . . . . . . . .167• countnull/countnulls . . . . . . . . . . . . . . . . . . . . . . . . . . . . .168• countunique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .169• countuniquenonnull . . . . . . . . . . . . . . . . . . . . . . . . . . . . .169• first . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .170• last . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .171• max (un argumento) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .171• mean (un argumento) . . . . . . . . . . . . . . . . . . . . . . . . . . . .172• median . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .173• min (un argumento) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .173• mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .174• moderatio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .175• percentage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .175• percentagerate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .176• segindex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .177• significance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .177• stdev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .178• sum (un argumento) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .179• variance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .179
Funciones de agregación para mediciones yderivaciones
Existen varias funciones de agregación disponibles para su uso en mediciones y derivaciones.
Utilizar una función en un contexto de medida significa utilizarlo en un archivo de agregaciones [consulteUso de funciones de agregación y las cláusulas where y default en la página 154] o archivo deestadísticas [consulte Evaluación del enfoque de estadísticas: la instrucción de calcular en lapágina 158] para qsmeasure o la ventana equivalente Agregar registros, o en un archivo de estadísticaspara qstrack.
Utilizar una función en un contexto de derivación significa utilizarla en una derivación de Decision, enel archivo de derivaciones para qsderive o la ventana equivalente Derivar campos, en el archivo derastreadores para qstrack, o en un archivo de selecciones para qsselect..
Excepto en el caso de que se indique lo contrario, una función de agregación toma un campo úniconumérico, de cadena o de fecha como un argumento.
Funciones de agregación para mediciones y derivaciones Puede utilizar las siguientes funcionesde agregación tanto en contextos de medición como en aquellos de derivación:
ResultadoFunción
Cantidad de registros en el grupo/segmento
(Esta función no toma un argumento)
count
El valor no nulo máximo del campo para elgrupo/segmento
(En un contexto de derivación, esta función noacepta como argumento una expresión con valoresen cadena).
max [consulte la sección max (un argumento) enla página 171]
La media (promedio común) de los valores no nulosdel campo para el grupo/segmento
(Esta función requiere como argumento unaexpresión numérica).
mean [consulte la sección mean (un argumento)en la página 172]
El valor no nulo mínimo del campo para elgrupo/segmento
(En un contexto de derivación, esta función noacepta como argumento una expresión con valoresen cadena).
min [consulte la sección min (un argumento) enla página 173]
Portrait Miner 7.1162
Funciones de agregación para mediciones y derivaciones
ResultadoFunción
La desviación estándar de los valores no nulos delcampo para el grupo/segmento
(Esta función requiere como argumento unaexpresión numérica).
stdev
La suma de los valores no nulos del campo parael grupo/segmento
(Esta función requiere como argumento unaexpresión numérica).
sum [consulte la sección sum (un argumento) enla página 179]
La varianza de los valores no nulos del campo parael grupo/segmento
(Esta función requiere como argumento unaexpresión numérica).
variance
Funciones de agregación solo para mediciones Puede utilizar las siguientes funciones de agregaciónsolamente en un contexto de medición:
ResultadoFunción
Un valor no nulo en el campo, extraído de unregistro no nulo arbitrario en el grupo/segmento
any
Límite inferior de un intervalo de confianza del 95%para la media de un campo del grupo
confintlower
Límite superior de un intervalo de confianza del95% para la media de un campo del grupo
confintupper
Cantidad de registros en el grupo para los cualesel campo tiene valores no nulos [consulte lasección El valor null en la página 184]
En las derivaciones, en cambio, utilicecountnonnulls.
countnonnull [consulte la seccióncountnonnull/countnonnulls en la página 167]
Cantidad de registros en el grupo para los cualesel campo contiene valore nulos [consulte la sección
countnull [consulte la seccióncountnull/countnulls en la página 168]
El valor null en la página 184] En las derivaciones,en cambio, utilice countnulls.
Cantidad de valores únicos que se dan en elcampo, posiblemente incluido el valor nulo
countunique
Cantidad de valores únicos, sin incluir el valor nulo,que se dan en el campo
countuniquenonnull
El primer valor no nulo mínimo del campo para elgrupo
first
163Guía de referencia del comando de creación de datos y TML
Capítulo 14: Funciones de agregación
ResultadoFunción
Último valor no nulo mínimo del campo para elgrupo
last
Mediana (valor medio) de los valores no nulos delcampo para el grupo
(Esta función requiere como argumento unaexpresión numérica o con valores de cadena).
median
Modo (valor más común) de los valores no nulosdel campo para el grupo
mode
Proporción de registros no nulos en el grupo quecontienen los valores no nulos más comunes delcampo
moderatio
Funciones de agregación solo para derivaciones Puede utilizar las siguientes funciones de agregaciónsolamente en un contexto de derivación:
ResultadoFunción
Cantidad de registros en el segmento para el cualel campo tiene valores no nulos [consulte lasección El valor null en la página 184]
En las mediciones, en cambio, utilice countnonnull.
countnonnulls [consulte la seccióncountnonnull/countnonnulls en la página 167]
Cantidad de registros en el segmento para el cualel campo incluye valores nulos [consulte la secciónEl valor null en la página 184]
En las mediciones, en cambio, utilice countnull.
countnulls [consulte la seccióncountnull/countnulls en la página 168]
Cantidad de registros en el segmento, comoporcentaje de la cantidad total de registros
(Esta función no toma un argumento)
percentage
Porcentaje de registros no nulos en el segmentoque contienen el valor 1 en el campo
El campo solo debe contener los valores 0 y 1.
percentagerate
Número positivo que identifica de manera única elsegmento que se encuentra dentro de la tabulacióncruzada formada por los campos de desglose
(Esta función no toma un argumento)
segindex
Significancia estadística de cualquier discrepanciaentre el valor medio del campo en el segmento y
significance
el valor medio del campo para toda la población,
Portrait Miner 7.1164
Funciones de agregación para mediciones y derivaciones
ResultadoFunción
con un signo que indica la dirección de ladesviación
(Esta función requiere como argumento unaexpresión numérica).
anyObjetivo: Tomar arbitrariamente un valor no nulo de un campo (posiblemente por grupo o por segmento).
Sintaxis any(x)
Argumentos
DescripciónNombreTipo
El campo del que se elige unvalor
xentero, real, fecha, o cadena
Resultado
DescripciónTipo
Un valor arbitrario no nulo del campo x(posiblemente por grupo o por segmento)
como entrada
No puede utilizar esta función en una derivación de Decision Studio, ni en el archivo dederivaciones de qsderive ni en la ventana Derivar campos equivalente, ni en el archivo derastreo de qstrack, ni en un archivo de selecciones de qsselect.
Nota:
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
first en la página 170
last en la página 171
confintlowerObjetivo: Calcular el límite inferior un intervalo de confianza de 95% para la media de un campo.
Sintaxis confintlower(x)
Argumentos
165Guía de referencia del comando de creación de datos y TML
Capítulo 14: Funciones de agregación
DescripciónNombreTipo
El campo que debe considerarsexnumérico
Resultado
DescripciónTipo
El límite inferior de un intervalo dentro del cual seespera que la media de la población del segmento
real
para el campo x entre dentro de un 95% deconfianza
No puede utilizar esta función en una derivación de Decision Studio, ni en el archivo dederivaciones de qsderive ni en la ventana Derivar campos equivalente, ni en el archivo derastreo de qstrack, ni en un archivo de selecciones de qsselect.
Nota:
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
confintupper en la página 166
significance en la página 177
confintupperObjetivo: Calcular el límite superior un intervalo de confianza de 95% para la media de un campo.
Sintaxis confintupper(x)
Argumentos
DescripciónNombreTipo
El campo que debe considerarsexnumérico
Resultado
DescripciónTipo
El límite superior de un intervalo dentro del cual seespera que la media de la población del segmento
real
para el campo x entre dentro de un 95% deconfianza
No puede utilizar esta función en una derivación de Decision Studio, ni en el archivo dederivaciones de qsderive ni en la ventana Derivar campos equivalente, ni en el archivo derastreo de qstrack, ni en un archivo de selecciones de qsselect.
Nota:
Portrait Miner 7.1166
confintupper
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
confintlower en la página 165
significance en la página 177
countObjetivo: Recuento del número de registros (posiblemente por grupo o segmento).
Sintaxis count()
Argumentos Ninguno
Resultado
DescripciónTipo
El número de registros (posiblemente por grupo osegmento).
entero
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
countnonnull/countnonnulls en la página 167
countnull/countnulls en la página 168
countunique en la página 169
countuniquenonnull en la página 169
countnonnull/countnonnullsObjetivo: Recuento del número de registros para los cuales un campo tiene valores no-nulos(posiblemente por grupo o segmento).
Sintaxis countnonnull(x)
Argumentos
DescripciónNombreTipo
El campo que debe considerarsexentero, real, fecha, o cadena
Resultado
167Guía de referencia del comando de creación de datos y TML
Capítulo 14: Funciones de agregación
DescripciónTipo
El número de registros para los cuales el campox tiene valores no nulos (posiblemente por grupoo segmento).
entero
En tabulaciones cruzadas de Decision Studio y en un contexto de medidas [consulte Funcionesde agregación para mediciones y derivaciones en la página 162] esta función escountnonnull, mientras que en un contexto de derivaciones es countnonnulls.
Nota:
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
count en la página 167
countnull/countnulls en la página 168
countunique en la página 169
countuniquenonnull en la página 169
countnull/countnullsObjetivo: Recuento del número de registros para los cuales un campo contiene el valor nulo(posiblemente por grupo o segmento).
Sintaxis countnull(x)
Argumentos
DescripciónNombreTipo
El campo que debe considerarsexentero, real, fecha, o cadena
Resultado
DescripciónTipo
El número de registros para los cuales el campox es nulo (posiblemente por grupo o segmento).
entero
En tabulaciones cruzadas de Decision Studio y en un contexto de medidas [consulte Funcionesde agregación para mediciones y derivaciones en la página 162] esta función es countnull,mientras que en un contexto de derivaciones es countnulls.
Nota:
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
count en la página 167
Portrait Miner 7.1168
countnull/countnulls
countnonnull/countnonnulls en la página 167
countunique en la página 169
countuniquenonnull en la página 169
countuniqueObjetivo: Recuento del número de valores únicos que ocurren en un campo y que incluyenpotencialmente el valor nulo (posiblemente por grupo o segmento).
Sintaxis countunique(x)
Argumentos
DescripciónNombreTipo
El campo que debe considerarsexentero, real, fecha, o cadena
Resultado
DescripciónTipo
El número de valores únicos, incluyendo nulo, queocurren en x (posiblemente por grupo o segmento).
entero
No puede utilizar esta función en una derivación de Decision Studio, ni en el archivo dederivaciones de qsderive ni en la ventana Derivar campos equivalente, ni en el archivo derastreo de qstrack, ni en un archivo de selecciones de qsselect.
Nota:
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
count en la página 167
countnonnull/countnonnulls en la página 167
countnull/countnulls en la página 168
countuniquenonnull en la página 169
countuniquenonnullObjetivo: Recuento del número de valores únicos no nulos que ocurren en un campo (posiblementepor grupo o segmento).
Sintaxis countuniquenonnull(x)
169Guía de referencia del comando de creación de datos y TML
Capítulo 14: Funciones de agregación
Argumentos
DescripciónNombreTipo
El campo que debe considerarsexentero, real, fecha, o cadena
Resultado
DescripciónTipo
El número de valores únicos, excluyendo nulo, queocurren en x (posiblemente por grupo o segmento).
entero
No puede utilizar esta función en una derivación de Decision Studio, ni en el archivo dederivaciones de qsderive ni en la ventana Derivar campos equivalente, ni en el archivo derastreo de qstrack, ni en un archivo de selecciones de qsselect.
Nota:
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
count en la página 167
countnonnull/countnonnulls en la página 167
countnull/countnulls en la página 168
countunique en la página 169
firstObjetivo: Elegir el primer valor no nulo en un campo (posiblemente por grupo o segmento).
Sintaxis first(x)
Argumentos
DescripciónNombreTipo
El campo del que se elige unvalor
xentero, real, fecha, o cadena
Resultado
DescripciónTipo
El primer valor mínimo no nulo encontrado en elcampo x (posiblemente por grupo o segmento)
como entrada
Portrait Miner 7.1170
first
No puede utilizar esta función en una derivación de Decision Studio, ni en el archivo dederivaciones de qsderive ni en la ventana Derivar campos equivalente, ni en el archivo derastreo de qstrack, ni en un archivo de selecciones de qsselect.
Nota:
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
any en la página 165
last en la página 171
lastObjetivo: Elegir el último valor no nulo en un campo (posiblemente por grupo o segmento).
Sintaxis last(x)
Argumentos
DescripciónNombreTipo
El campo del que se elige unvalor
xentero, real, fecha, o cadena
Resultado
DescripciónTipo
El último valor no nulo encontrado en el campo x(posiblemente por grupo o segmento)
como entrada
No puede utilizar esta función en una derivación de Decision Studio, ni en el archivo dederivaciones de qsderive ni en la ventana Derivar campos equivalente, ni en el archivo derastreo de qstrack, ni en un archivo de selecciones de qsselect.
Nota:
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
any en la página 165
first en la página 170
max (un argumento)Objetivo: Calcular el valor máximo no nulo en un campo (posiblemente por grupo o segmento).
171Guía de referencia del comando de creación de datos y TML
Capítulo 14: Funciones de agregación
Sintaxis max(x)
Argumentos
DescripciónNombreTipo
El campo cuyos valores debencompararse
xentero, real, fecha, o cadena
Resultado
DescripciónTipo
El valor máximo no nulo en el campo x(posiblemente por grupo o segmento)
como entrada
Nota: • No se debe confundir esta función aggregation con la función multi-argument [consulte max(dos o más argumentos), maxnonnull en la página 282] del mismo nombre.
• En un contexto de derivación, esta función no acepta como argumento un campo con valorde cadena o de fecha.
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
min (un argumento) en la página 173
mean (un argumento)Objetivo: Calcular el promedio (media común) de los valores no nulos de un campo (posiblemente porgrupo o segmento).
Sintaxis mean(x)
Argumentos
DescripciónNombreTipo
El campo cuya media debecalcularse
xnumérico
Resultado
DescripciónTipo
La media de los valores no nulos en un campo x(posiblemente por grupo o segmento)
real
No se debe confundir esta función aggregation con la función multi-argument [consulte mean(dos o más argumentos), meannonnull en la página 283] del mismo nombre.
Nota:
Portrait Miner 7.1172
mean (un argumento)
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
median en la página 173
mode en la página 174
medianObjetivo: Calcular la mediana (valor mediano) de los valores no nulos de un campo (posiblemente porgrupo o segmento).
Sintaxis median(x)
Argumentos
DescripciónNombreTipo
El campo cuya mediana debecalcularse
xentero, real o cadena
Resultado
DescripciónTipo
La mediana de los valores no nulos en un campox (posiblemente por grupo o segmento)
como entrada
No puede utilizar esta función en una derivación de Decision Studio, ni en el archivo dederivaciones de qsderive ni en la ventana Derivar campos equivalente, ni en el archivo derastreo de qstrack, ni en un archivo de selecciones de qsselect.
Nota:
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
mean (un argumento) en la página 172
mode en la página 174
min (un argumento)Objetivo: Calcular el valor mínimo no nulo en un campo (posiblemente por grupo o segmento).
Sintaxis min(x)
Argumentos
173Guía de referencia del comando de creación de datos y TML
Capítulo 14: Funciones de agregación
DescripciónNombreTipo
El campo cuyos valores debencompararse
xentero, real, fecha, o cadena
Resultado
DescripciónTipo
El valor mínimo no nulo en el campo x(posiblemente por grupo o segmento)
como entrada
Nota: • No se debe confundir esta función aggregation con la función multi-argument [consulte min(dos o más argumentos), minnonnull en la página 283] del mismo nombre.
• En un contexto de derivación, esta función no acepta como argumento un campo con valorde cadena o de fecha.
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
max (un argumento) en la página 171
modeObjetivo: Calcular la moda (el valor más común) de los valores no nulos de un campo (posiblementepor grupo o segmento).
Sintaxis mode(x)
Argumentos
DescripciónNombreTipo
El campo cuya moda debecalcularse
xentero, real, fecha, o cadena
Resultado
DescripciónTipo
El modo de los valores no nulos en un campo x(posiblemente por grupo o segmento)
como entrada
Nota: • En el caso de un empate en el valor más común, la función indica el valor que empata menos,la fecha más temprana que empata o la primera cadena en orden alfabético que empata .
• No puede utilizar esta función en una derivación de Decision Studio, ni en el archivo dederivaciones de qsderive ni en la ventana Derivar campos equivalente, ni en el archivo derastreo de qstrack, ni en un archivo de selecciones de qsselect.
Portrait Miner 7.1174
mode
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
mean (un argumento) en la página 172
median en la página 173
moderatio en la página 175
moderatioObjetivo: Calcular la proporción de registros no nulos que contienen el valor no nulo más común de uncampo (posiblemente por grupo o segmento).
Sintaxis moderatio(x)
Argumentos
DescripciónNombreTipo
El campo cuyo coeficiente demoda debe calcularse
xentero, real, fecha, o cadena
Resultado
DescripciónTipo
El coeficiente de moda del campo x (posiblementepor grupo o segmento)
real
No puede utilizar esta función en una derivación de Decision Studio, ni en el archivo dederivaciones de qsderive ni en la ventana Derivar campos equivalente, ni en el archivo derastreo de qstrack, ni en un archivo de selecciones de qsselect.
Nota:
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
mode en la página 174
percentageSintaxis percentage()
Objetivo: Calcular el número de registros en un segmento de tabulación cruzada, como porcentaje deltotal.
Argumentos Ninguno
175Guía de referencia del comando de creación de datos y TML
Capítulo 14: Funciones de agregación
Resultado
DescripciónTipo
El porcentaje de registros (posiblemente por grupoo segmento).
real
Sólo puede utilizar esta función en una derivación de Decision Studio, en el archivo dederivaciones de qsderive o en la ventana Derivar campos equivalente en el archivo de rastreoqstrack o en un archivo de selecciones de qsselect.
Nota:
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
percentagerateObjetivo: Para un campo binario (1/0), calcular la proporción de registros no nulos que contienen elvalor 1, como porcentaje.
Sintaxis percentagerate(x)
Argumentos
DescripciónNombreTipo
El campo binario que debeconsiderarse
xnumérico
Resultado
DescripciónTipo
El porcentaje de registros en un campo binario quetienen el valor 1 (posiblemente por grupo osegmento)
real
Esta función no puede usarse en archivo de agregación [consulte Uso de funciones deagregación y las cláusulas where y default en la página 154] ni en un archivo de estadísticas
Nota:
[consulte Evaluación del enfoque de estadísticas: la instrucción de calcular en la página158] para qsmeasure ni en la ventana equivalente de Agregar registros ni en un archivo deestadísticas para qstrack.
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
Portrait Miner 7.1176
percentagerate
segindexObjetivo: Generar un número de índice que represente un segmento.
Sintaxis segindex()
Argumentos Ninguno
Resultado
DescripciónTipo
Un número positivo que identifica únicamente a unsegmento dentro de una tabulación cruzada.
entero
Nota: • Si se ocultan segmentos nulos, sin clasificar o vacíos en una vista de tabulación cruzada, aúnasí reciben un índice de segmento, por lo que podrían aparecer huecos en la secuencia deíndices visibles.
• Esta función no puede usarse en archivo de agregación [consulte Uso de funciones deagregación y las cláusulas where y default en la página 154] ni en un archivo de estadísticas[consulte Evaluación del enfoque de estadísticas: la instrucción de calcular en la página158] para qsmeasure ni en la ventana equivalente de Agregar registros ni en un archivo deestadísticas para qstrack.
Ejemplo R–2: Marcación de deciles aproximados
Se pueden crear rangos en un campo "myfield" en diez rangos de igual población y luego derivar uncampo "decile":
segindex() by myfield
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
bin en la página 326
significanceObjetivo: Calcular la significancia estadística de cualquier discrepancia entre el valor medio de uncampo para un segmento de una tabulación cruzada y el valor medio del mismo campo para toda lapoblación.
Sintaxis significance(x)
Argumentos
177Guía de referencia del comando de creación de datos y TML
Capítulo 14: Funciones de agregación
DescripciónNombreTipo
El campo que debe considerarsexnumérico
Resultado
DescripciónTipo
Un valor entre -1 and 1, cuyo signo indica ladirección en la cual la media del segmento de x
real
se desvía de la media de la población de x y cuyovalor absoluto indica la significación estadística detal desviación, teniendo en cuenta el tamaño delsegmento.
Esta función no puede usarse en archivo de agregación [consulte Uso de funciones deagregación y las cláusulas where y default en la página 154] ni en un archivo de estadísticas
Nota:
[consulte Evaluación del enfoque de estadísticas: la instrucción de calcular en la página158] para qsmeasure ni en la ventana equivalente de Agregar registros ni en un archivo deestadísticas para qstrack.
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
confintlower en la página 165
confintupper en la página 166
stdevObjetivo: Calcular la desviación estándar de los valores no nulos de un campo (posiblemente por grupoo segmento).
Sintaxis stdev(x)
Argumentos
DescripciónNombreTipo
El campo cuya desviaciónestándar debe computarse
xnumérico
Resultado
DescripciónTipo
La desviación estándar de los valores no nulos enun campo x (posiblemente por grupo o segmento)
real
Portrait Miner 7.1178
stdev
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
sum (un argumento)Objetivo: Calcular la suma de los valores no nulos en un campo (posiblemente por grupo o segmento).
Sintaxis sum(x)
Argumentos
DescripciónNombreTipo
El campo cuyos valores sesumarán
xnumérico
Resultado
DescripciónTipo
La suma de los valores no nulos en el campo x(posiblemente por grupo o segmento)
como entrada
Nota: • No se debe confundir esta función aggregation con la función multi-argument [consulte sum(dos o más argumentos), sumnonnull en la página 288] del mismo nombre.
• Tenga en cuenta que cuando la función sum de agregación se aplica a un conjunto vacío deregistros (por ejemplo, como consecuencia del filtrado de registros), el resultado es null.Normalmente debería sobrescribir este comportamiento mediante la configuración del valorpredeterminado en 0.
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
varianceObjetivo: Calcular la varianza estadística de los valores no nulos de un campo (posiblemente por grupoo segmento).
Sintaxis variance(x)
Argumentos
179Guía de referencia del comando de creación de datos y TML
Capítulo 14: Funciones de agregación
DescripciónNombreTipo
El campo cuya varianza debecomputarse
xnumérico
Resultado
DescripciónTipo
La varianza de los valores no nulos en el campox (posiblemente por grupo o segmento)
real
También consulte
Funciones de agregación para mediciones y derivaciones en la página 162
Portrait Miner 7.1180
variance
Capítulo 15Lenguaje de derivación decampos
En esta sección:
• Acerca del lenguaje de derivación de campos (FDL) . .182
Acerca del lenguaje de derivación de campos (FDL)Field Derivation Language (FDL) es un lenguaje simple que permite especificar la creación de camposnuevos en enfoques de Portrait Miner. Puede utilizar FDL en Visor de Tablas en Decision Studio, losasistentes Derivar campos y Agregar registros asistentes de configuración y los comandos de creaciónde datos de Portrait Miner: qsderive, qsmeasure, qstrack y qsselect.
Puede emplear FDL para lo siguiente:
• Transformar, combinar y realizar una variedad de otros cálculos en campos existentes en un enfoque• Dividir un enfoque en un conjunto de muestras aleatorias• Definir segmentaciones y modelos predictivos• Seleccionar registros de acuerdo con un criterio que elija
Comúnmente lo utiliza en expresiones de "una línea" simples, tal como aquellas descritas en Expresionesbásicas en la página 186, pero también puede utilizarlo para construir scripts con rutas de ejecucióncomplejas dependientes de datos.
La sintaxis de FDL incluye:
• Operadores para aritmética [consulte la sección Operadores aritméticos en la página 195].• Operadores para comparación [consulte Operadores relacionales en la página 196] y para la
combinación de expresiones lógicas [consulte la sección Operadores lógicos en la página 198].• Dos construcciones alternativas para la evaluación condicional de instrucciones: if...then...else
y case [consulte la sección Expresiones condicionales en la página 187].• Un conjunto integral de funciones incorporadas [consulte la sección Funciones incorporadas en la
página 199].• La posibilidad de encapsular transformaciones comunes como funciones definidas por el usuario
[consulte la sección Funciones definidas por el usuario en la página 192] para volver a utilizar ycompartir.
• Variables, para retener valores para volver a utilizar dentro de un script FDL, incluido (en algunoscontextos) variables del "acumulador" global [consulte la sección Variables globales en DecisionStudio en la página 191].
• Una facilidad que permite incorporar tabulaciones cruzadas a derivaciones .
También consulte
Acerca de Transaction Measurement Language en la página 148
Expressions (Expresiones) en la página 186
Portrait Miner 7.1182
Acerca del lenguaje de derivación de campos (FDL)
Capítulo 16Sintaxis FDL
En esta sección:
• Tipos de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .184• Expressions (Expresiones) . . . . . . . . . . . . . . . . . . . . . . .186• Expresiones condicionales . . . . . . . . . . . . . . . . . . . . . . .187• Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .190• Funciones definidas por el usuario . . . . . . . . . . . . . . . .192• Operadores aritméticos . . . . . . . . . . . . . . . . . . . . . . . . . .195• Operadores relacionales . . . . . . . . . . . . . . . . . . . . . . . . .196• Operadores lógicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . .198• Prioridad de operadores . . . . . . . . . . . . . . . . . . . . . . . . .199• Funciones incorporadas . . . . . . . . . . . . . . . . . . . . . . . . .199• Palabras reservadas en FDL . . . . . . . . . . . . . . . . . . . . . .206
Tipos de datosLos siguientes tipos de datos básicos son compatibles en FDL [consulte la sección Acerca del lenguajede derivación de campos (FDL) en la página 182]:
Ejemplos (como literales deFDL)
DescripciónTipo
78004, -100Un número sin una partefraccional (entre -2 147 483 647y 2 147 483 646)
entero
42,3, -0,56Un número con una partefraccionaria, representado de
real
modo interno como un númerode "punto flotante" con precisiónde 15 dígitos (entre y
, o 0)
#2009/01/01,#2009/01/01:16:01:39
Una fecha/hora entre AD 1507 yAD 3015, con precisión de unsegundo
fecha
"hello"Una cadena de caracteres, querepresenta datos textuales
cadena
42, -1Un número pequeño sin unaparte fraccional (entre
número pequeño
qsminsmallint yqsmaxsmallint)
Nota: • Si utiliza un valor entero literal (tal como 12345678910) que es demasiado largo para un tipode datos entero, obtendrá un flujo excesivo. Con frecuencia puede trabajar con esto utilizandoen cambio un valor real: (en este caso, 12345678910.0).
• El tipo smallinteger tiene aplicabilidad limitada dentro de Portrait Miner, y solo debe utilizarsecuando sea absolutamente necesario. En general, debe utilizar el tipo integer en su lugar.
El valor nullAdemás de los valores ordinarios para cada uno de los tipos de datos básicos, un campo o expresiónde tipo integer, real, fecha o cadena puede adquirir el valor especial null. El valor nulo siempre representaun valor desconocido (a causa de datos faltantes, dado un flujo excesivo en un cálculo, tal como divisiónpor cero, o por algún otro motivo). Se diferencia de cero y la cadena vacía "".
Las funciones y operaciones FDL preservan la incertidumbre introducida por un argumento u operandonulo, con frecuencia proporcionando el valor nulo como resultado. No obstante, hay funciones, a saberisnull y algunas funciones de agregación, que tratan especialmente el valor nulo.
Portrait Miner 7.1184
Tipos de datos
Ejemplos?
1 + null es igual a null.
1 != null es igual a null.
1 < null es igual a null.
null = null es igual a null.
null != null es igual a null.
false or null es igual a null.
true and null es igual a null.
true or null es igual a true.
false and null es igual a false.
También consulteifnull, nvl en la página 210
Datos booleanosNo hay tipo de datos booleano formal (verdadero/falso) en FDL. Sin embargo, puede tratar un campointeger (o variable) que incluye solo los valores 0 y 1, o una expresión lógica tal como Ingresos <10000, como si fueran del tipo buleano.
Las expresiones lógicas evalúan a 1 cuando son del tipo true y a 0 cuando son del tipo false. Expresionescondicionales utilizan estos valores para determinar cuáles de dos o más expresiones evaluar.Operadores lógicos también funcionan con estos valores. Un valor de 0 en un campo o variable integerse interpreta como "falso" y cualquier otro valor (no nulo) se interpreta como "true".
Además, puede utilizar las palabras clave true y false como literales buleanos (que representan 1 y0, respectivamente).
Compatibilidad de tiposLos tipos de datos integer y real son compatibles con tipos, dado que puede utilizar un valor integersiempre que se requiera un valor real (pero no viceversa), por ejemplo, como un argumento para unafunción. Los tipos de datos date y string son únicamente compatibles con tipos entre sí mismos.
Los operandos de un operador aritmético binario [consulte la sección Operadores aritméticos en lapágina 195] u operador relacional [consulte la sección Operadores relacionales en la página 196] debenser compatibles con tipos. De hecho, en el caso de un operador aritmético binario, ambos operandosdeben ser numéricos; el resultado es real a menos que los operandos sean enteros.
De igual forma, las expresiones de resultado en una expresión if o case [consulte la sección Expresionescondicionales en la página 187] deben ser compatibles con tipos, de modo que el tipo del resultadopueda determinarse antes de la evaluación. Si se combinan expresiones de valor integer y real, elresultado es un valor real.
185Guía de referencia del comando de creación de datos y TML
Capítulo 16: Sintaxis FDL
Conversión de tiposAdemás de utilizar la conversión de tipos de datos implícita (que se da cuando el tipo de datos de unaexpresión se fuerza), puede convertir explícitamente entre tipos de datos con las funciones FDL tointeger,toreal, todate y tostring.
Al convertir desde una cadena a un numérico, cualquier carácter no numérico posterior seignorará.
Nota:
Expressions (Expresiones)Una expresión FDL es una de las siguientes:
• Una expresión básica [consulte la sección Expresiones básicas en la página 186]• Una expresión condicional [consulte la sección Expresiones condicionales en la página 187]• Una inicialización o asignación de variables [consulte la sección Variables en la página 190]• Una lista de expresiones separadas por puntos y coma (una lista de expresiones), encerrada entre
paréntesis
Cada expresión tiene un tipo de datos asociado [consulte Tipos de datos en la página 184] y puedeevaluarse.
Para evaluar una lista de expresiones en un contexto determinado, evalúe cada expresión constituyentepor vez, de la primera a la última; el valor de la lista de expresiones en su totalidad es el último valorcalculado.
Nota: • El tipo de datos se infiere automáticamente. No puede especificar uno diferente mediante eluso de una variable local del tipo requerido, o mediante el uso de una expresión que fuerceel tipo. Por ejemplo, la siguiente expresión fuerza el tipo para que sea real:
if false then 0.0 else ...
• Por lo general utiliza listas de expresiones en combinación con asignación de variables.
Expresiones básicasUna expresión básica es una de las siguientes:
• Un identificador, opcionalmente citado entre comillas simples, por ejemplo, 'CustomerID'. Debeencerrar un identificador entre comillas simples si no comienza con una letra ("A" — "Z" o "a" — "z"),incluye caracteres diferentes a letras, dígitos y guiones bajos, o coincide con una palabra reservadaTML o FDL (o es diferente de uno únicamente en fuente). Un identificador no debe tener más de 128caracteres.
• Un literal numérico, por ejemplo, 30, -3,28 o 3,1e8 (el último representa• Un literal de cadena, encerrado en comillas dobles, por ejemplo, "Una cadena"
• Un literal de fecha, con el prefijo "#", por ejemplo, #2004/03/16 o #2004/03/16:09:12:13
Portrait Miner 7.1186
Conversión de tipos
• La palabra clave "null" (consulte la sección El valor null en la página 184)• Una aplicación de función, que comprende el nombre de una función (un identificador) seguido de
una lista de argumentos separados por coma (expresiones) en paréntesis; por ejemplo, mean(IncomeA+ IncomeB, TotalEstIncome)
• Una expresión aritmética, que comprende expresiones de valor numérico conectados por operadoresaritméticos [consulte la sección Operadores aritméticos en la página 195], por ejemplo, 365/52
• Una relación, que comprende expresiones de valor numérico o de cadena conectadas por operadoresrelacionales [consulte la sección Operadores relacionales en la página 196], por ejemplo, Age >30 o 'State' = "New York"
• Una expresión lógica, que comprende relaciones u otras expresiones de valor buleano conectadaspor operadores lógicos [consulte la secciónOperadores lógicos en la página 198 ], por ejemplo,(Income > 250000) y (MaritalStatus = "Single")
• Un identificador estadístico, que comprende la palabra clave TML STATISTIC seguida de unidentificador, por ejemplo, STATISTIC.AverageIncome (solo en un archivo de agregaciones TML)
• Una estadística de campos — solo en una derivación de Decision Studio, un archivo de derivacionesqsderive o un archivo de selecciones qsselect selections file>
Nota: • Los identificadores FDL distinguen entre mayúsculas y minúsculas. Por ejemplo, las expresionesCustomerID y CUSTOMERID hacen referencia a campos diferentes, mientras que lasexpresiones isnull(Age) y IsNull(Age) implican funciones diferentes.
• Un literal numérico se evalúa como un entero si no incluye punto decimal y no utiliza notacióncientífica. De lo contrario, se evalúa como número real.
• Un literal de cadena puede incluir caracteres diferentes a comillas dobles (") y caracteres delínea nueva.
• Un literal de fecha al principio se evalúa en formato YMD [consulte Formatos de fecha en lapágina 55]; si esto falla, se evalúa según la configuración de su preferencia read .
• Además de incorporar espacios entre elementos sintácticos, puede incluir comentarios quecomiencen con una barra vertical doble ("//") y continúen hasta el final de la línea. Por ejemplo,
// This is a comment.2 + 2 // This is a comment.
También consulte
Palabras reservadas en FDL en la página 206
Palabras reservadas en TML en la página 149
Expresiones condicionalesEn FDL, hay dos formas principales en las que puede evaluar condicionalmente una expresión: laexpresión if y la expresión case.
También consulte
Acerca del lenguaje de derivación de campos (FDL) en la página 182
187Guía de referencia del comando de creación de datos y TML
Capítulo 16: Sintaxis FDL
Expressions (Expresiones) en la página 186
La expresión if
Si la condición (una expresión FDL que regresa un valor booleano [consulte la sección Datos booleanosen la página 185]) es verdadero, la expresión que sigue a then se evalúa; de lo contrario, la expresiónque sigue a else se evalúa. El valor de la expresión es el valor de la expresión evaluada.
Nota: • Las expresiones que siguen a then y else deben ser compatibles con tipos [consulte lasección Tipos de datos en la página 184].
• Si omite la parte "else" de una expresión if y la condición es false, el valor de la expresión ifes null [consulte la sección El valor null en la página 184].
• Una condición null [consulte la sección El valor null en la página 184] se trata por la expresiónif como si fuera falsa. Esta es una excepción a la regla general que indica que la incertidumbreintroducida por el valor null se preserva por las expresiones FDL. Esto puede dar lugar aresultados imprevistos: por ejemplo, cuando Age es null, las siguientes expresiones (a primeravista equivalentes) generan el valor null, 0 y 1 respectivamente:
Age > 40
if Age > 40 then 1 else 0
if Age <= 40 then 0 else 1
• Puede probar diferentes condiciones utilizando expresiones if agrupadas; si las expresionesen la que la expresión que sigue a then o else es en sí misma una expresión if. Si la expresiónque sigue a then es una expresión if, debe encerrarla entre paréntesis para evitar ambigüedad.Alternativamente, puede utilizar la expresión case [consulte la sección La expresión case enla página 189].
• Si su condición se puede expresar como x = 0 (o ) para algún número X, también puedeutilizar la función FDL incorporada cond en lugar de una expresión if.
Ejemplos
if Age < 40 then "Young"
if Age < 40 then "Young" else "Senior"
if Age > 40 then "Young" else if Age < 60 then "MiddleAged" else "Senior"
if (Age >= 13 and Age < 20) then "Teenager"
if isnull(Age) then mean(Age) else Age
if Responder then RespondDate else StartDate
if match(Postcode, "^EH") then "Y" else "N"
if StartDate < #1998/09/08 then "Loyal" else "Recent"
Portrait Miner 7.1188
La expresión if
La expresión case
Si la primera condición (una expresión FDL que regresa un valor booleano [consulte la sección Datosbooleanos en la página 185]) es true, la expresión correspondiente (a la derecha de los dos puntos) seevalúa y regresa como el valor de la expresión case. De lo contrario, se prueba la siguiente condición;de ser true, la expresión correspondiente se evalúa y regresa como el valor de la expresión case. Delo contrario, se prueba la siguiente condición y así sucesivamente.
La palabra clave default especial se interpreta como una expresión siempre true: normalmente lautilizaría como la última condición en una expresión case (dado que las condiciones subsiguientes seignorarían).
Nota: • Todas las expresiones que sucedan a la derecha de los dos puntos deben ser compatiblescon tipos [consulte la sección Tipos de datos en la página 184].
• Si ninguna de las condiciones es verdadera (y no hay palabra clave default), el valor de laexpresión case es null [consulte la sección El valor null en la página 184].
• Una condición null [consulte la sección El valor null en la página 184] se trata por la expresióncase como si fuera falsa. Esta es una excepción a la regla general que indica que laincertidumbre introducida por el valor null se preserva por las expresiones FDL. Por ejemplo,cuando Age es null, la siguiente expresión genera el valor 3:
case
Age > 40 : 1;
Age <= 40 : 2;
default : 3;
• Si utiliza una expresión case en una lista de expresiones o agrupa una expresión case comocondición (dentro de una expresión if u otra expresión case), debe encerrarla entre paréntesispara evitar ambigüedad.
Ejemplos
case
Age < 40: "Young";
default: "NotYoung";
case
Response = "Exc": 7;
Response = "V. Sat": 6
Response = "Sat": 5;
Response = "F. Sat": 4;
189Guía de referencia del comando de creación de datos y TML
Capítulo 16: Sintaxis FDL
Response = "Poor": 3;
Response = "Bad": 2;
default: 1;
VariablesUna variable en FDL es una ubicación de almacenamiento temporal para un valor real, entero, string odate. Puede utilizar una variable local para evaluar una subexpresión% complicada, particularmente útilsi se da la misma subexpresión más de una vez%, o para evaluar una expresión que incluye una funciónde números aleatorios, y así evitar que su valor cambie de una evaluación a la siguiente. También puedeutilizar variables global en Decision Studio [consulte la sección Variables globales en Decision Studioen la página 191] y variables state en archivos de rastreo TML [consulte la sección Variables state enTransaction Measurement Language en la página 191] para llevar información de un registro al siguiente.
Para asignar un valor a una variable, utilice la siguiente sintaxis:
La primera de tal asignación es una inicialización y determina la clase de la variable% — local (sinpalabra clave), global o state. La palabra clave global o state solo se utiliza en conjunto con laprimera asignación a una variable global o state (la inicialización).
El identificador [consulte la sección Expresiones básicas en la página 186] es el nombre de la variable(que no debe coincidir con un nombre de campo en el enfoque).
Para cualquier clase de variable, su tipo de datos [consulte la sección Tipos de datos en la página 184]es aquel del primer valor que se le asignó.
El valor de una expresión de asignación es simplemente el valor de la expresión a la derecha del signo":=".
Por ejemplo, la siguiente lista de expresiones asigna aleatoriamente el valor 1 (al 20% de los registros),2 (a otro 20% de los registros) o 0 (al resto de los registros):
x := rndUniform();
case
x < 0.2 : 1;
x < 0.4 : 2;
default : 0;
Puede escribirse equivalentemente en su forma más compacta:
case
Portrait Miner 7.1190
Variables
( x := rndUniform() ) < 0.2 : 1;
x < 0.4 : 2;
default : 0;
No obstante, la siguiente lista de expresiones genera un resultado diferente (y probablemente nodeseado):
case
rndUniform() < 0.2 : 1;
rndUniform() < 0.4 : 2;
default : 0;
Variables globales en Decision StudioLas variables son locales por defecto. Una variable local se destruye tan pronto como se evalúe la últimaexpresión en la lista de expresiones (la más cercana al paréntesis de cierre) [consulte la secciónExpressions (Expresiones) en la página 186] — La próxima vez que se utilice la misma variable, sevolverá a inicializar. Una variable local no puede llevar información de un registro al siguiente. Porejemplo, la siguiente lista de expresiones de derivación de campos produce un campo con 1 en cadaregistro:
i := 0;
i := i + 1
Una variable global es diferente de una variable local en que no se destruye hasta que Decision Studioo el comando de creación de datos haya calculado los valores de campos para todos los registros. Lainicialización solo sucede una vez, para el primer registro en el enfoque. Por ejemplo, la siguiente listade expresiones de derivación de campos produce un campo índice, con 1 en el primer registro, 2 en elsegundo, y así sucesivamente:
global i := 0;
i := i + 1
Puede utilizar una variable global en una lista de expresiones de derivación de campos en una derivaciónde Decision Studio, en el archivo de derivaciones para qsderive o la ventana Derivar campos equivalente,en un archivo de rastreo para qstracko en un archivo de selecciones para qsselect.
Variables state en Transaction Measurement LanguagePuede utilizar una variable state en una definición del campo TML en el archivo de rastreo qstrack.
Una variable state es diferente de una variable local o global en que no se destruye hasta que qstrackhaya calculado todos los valores de campos para el grupo actual (según se define por el campo clave).La inicialización sucede una sola vez para cada grupo.
Por ejemplo, la siguiente definición de campo define un campo de equilibrio de ejecución, suponiendoque el campo "Deposit" incluye una cantidad depositada en una transacción (o un valor negativo parauna extracción) y el campo "InitialBalance" incluye el saldo inicial para el cliente (quizás de una tabladel cliente unida anteriormente):
191Guía de referencia del comando de creación de datos y TML
Capítulo 16: Sintaxis FDL
create Balance := (
state bal := InitialBalance;
bal := bal + Deposit
)
Funciones definidas por el usuarioPara definir una función FDL que pueda utilizar como una función incorporada [consulte Funcionesincorporadas en la página 199], utilice la siguiente sintaxis:
El identificador [consulte Expresiones básicas en la página 186] seguido de la palabra clave de la"función" es el nombre de la función. La lista de argumentos (formales) viene a continuación:
Cada argumento formal (excepto uno precedido por una palabra clave "field") actúa como una variablelocal [consulte Variables en la página 190] que se inicia con el valor del argumento actual correspondientecuando se aplica la función. El tipo [consulte Tipos de datos en la página 184] de cada argumento formales el tipo especificado en la definición de la función, si la hay; si no, es el tipo del argumento utilizadoal aplicar la función. Los paréntesis de cierre son necesario incluso si no existen argumentos formales.
A la lista de argumentos le sigue una lista opcional de atributos de funciones [consulte Atributos defunciones en la página 194], y después el cuerpo de definición de la función. La lista de expresiones[consulte Expressions (Expresiones) en la página 186] está encabezada por asignaciones de variableslocales que corresponden a los argumentos formales (excepto uno precedido por una palabra clave"field"), antes de ser evaluados para determinar el valor de retorno de la función. El tipo del valor deretorno es similar al de la última expresión.
Ejemplos Defina un función para reemplazar ceros en el resultado de una expresión (de cualquier tipo)con los resultados de otra expresión:
function replaceZeros(expr1, expr2)
{
si expr1 = 0 entonces expr2 si no expr1
Portrait Miner 7.1192
Funciones definidas por el usuario
}
Una función que toma un argumento en cadena y transforma la primer letra a mayúscula:
function titleCase(texto de la cadena)
{
concat(toupper(left(text, 1)), right(text, strlen(text) - 1));
}
Nota:
• Al especificar el tipo de argumento de función, utilice "real", "integer", "string" o "date."• Puede incluir estadísticas de campo en la definición de un campo, pero cada argumento de función
que se utilice en una estadística de campo debe estar precedido por una palabra clave "field". Porejemplo, para comparar un valor con un resumen de todo el enfoque:
function MyBand(campo real x)
{
averageX := mean(x);
stdevX := stdev(x);
case
x < averageX - stdevX : "Lower";
x > averageX + stdevX : "Upper";
default: "Mid";
}
• Puede incluir definiciones de campo al principio de la lista de expresiones que define un campoderivado. Estas funciones definidas son locales a la derivación de campo.
También puede definir funciones accesibles globalmente al almacenarlas en un archivo (o archivos)en una carpeta que aparezca en la preferencia de bibliotecas de derivación . En DecisionStudio, en el panel Familia de funciones en el cuadro de diálogo Funciones de derivación del Visorde Tablas, las funciones en los archivos "clase.fdl" aparecen en la clase con el mismo nombre. Porejemplo, las funciones en un archivo llamado Conditional.fdl aparecen en la clase Conditional. Puedevolver a utilizar el nombre de una clase existente, para agregarle las funciones definidas por el usuarioque desee, o puede crear una clase propia utilizando un nuevo nombre.
Al utilizar el comando de creación de datos qsmeasure de Portrait Miner, la ventana Agregarregistros equivalente, o el comando de creación de datos qstrack, puede especificar un archivo quecontenga definiciones de funciones globales adicionales.
• No puede definir funciones de agregación en un contexto de medidas, es decir, en un archivo deagregaciones [consulte Uso de funciones de agregación y las cláusulas where y default en lapágina 154] o archivo de estadísticas [consulte Evaluación del enfoque de estadísticas: la instrucciónde calcular en la página 158] para qsmeasure o la ventana equivalente Agregar registros, o en unarchivo de estadísticas para qstrack.
193Guía de referencia del comando de creación de datos y TML
Capítulo 16: Sintaxis FDL
• Si la lista de expresiones finaliza con un carácter alfabético, debe estar separado del paréntesis decierre por un punto y coma o un espacio en blanco.
Atributos de funcionesPara especificar los atributos de las funciones:
Atributos útiles:
sinopsis y descripción. Con estos atributos se puede hacer, de manera estándar, la función "condocumentación automática". Si se instala una función en una carpeta que aparece en la preferencia debibliotecas de derivación , la sinopsis se muestra cuando se selecciona la función en el panelFunciones del cuadro de diálogo Funciones de derivación en el Visor de tabla. Si hace clic en elbotón Details, se podrá visualizar la descripción. El texto de sinopsis debería ser corto, pero el texto dedescripción puede ser más largo.
Por ejemplo:
function nvl(testNull, replaceValue)
[
sinopsis = "Reemplazar valores nulos"
descripción = "la función nvl() reemplaza los valores...las cadenas nulos".
]
(Observe que los atributos de descripción deben estar todos en la misma línea).
element_names. En un archivo de agregación, puede utilizar una función con el atributoelement_names para dividir una agregación y crear campos múltiples [consulte División deagregaciones: la cláusula by en la página 156].
El valor de este atributo es una cadena con una lista de nombres separados por comas, asociados convalores de retorno de la función 1, 2,..., en el orden que están listados.
Por ejemplo, el atributo element_names de la siguiente función asocia los nombres "Low", "Medium"y "High" con los valores de retorno 1, 2 y 3 respectivamente:
function band(x)
[ element_names = "Low,Medium,High" ]
{
clamp(floor(x / 1000), 0, 2) + 1
}
El atributo element_names de la siguiente función asocia los nombres "North", "South", "East" y "West"con los valores de retorno 1, 2, 3 y 4 respectivamente:
Portrait Miner 7.1194
Atributos de funciones
function StoreGroupFunction( Store )
[
element_names = "North, South, East, West"
]
{
case
Store = "0000" o Store = "0800" : 1;
Store = "0300" o Store = "0600" o Store = "0700" : 2;
Store = "0100" o Store = "0400" : 3;
por defecto : 4;
}
Operadores aritméticosExcepto por el menos unario, que precede a su único operando, todos los operadores aritméticos FDLson operadores binarios infijos, es decir, están escritos entre sus dos operandos.
ResultadoOperandosOperator (Operador)
La suma de los operandosnumérico+ (adición)
El resultado de restar el segundooperando al primero
numérico- (sustracción)
El negativo del operandonumérico- (menos unario)
El producto de los operandosnumérico* (multiplicación)
El resultado (real) al dividir elprimer operando por el segundo
numérico/ (división)
El resultado (entero) al dividir elprimer operando por el segundo,ignorando cualquier resto
enterodiv (división de enteros)
El resto al dividir el primeroperando por el segundo (el
enteromod (módulo)
módulo), con el mismo signo queel primer operando, por ejemplo,9 % 7 es igual a 2, pero -9 %7 es igual a -2
Ejemplos
195Guía de referencia del comando de creación de datos y TML
Capítulo 16: Sintaxis FDL
2 + 5 es igual a 7.
2 - 5 es igual a -3.
- (2 + 5) es igual a -7.
2 * 5 es igual a 10.
2 / 5 es igual a 0.4.
2 div 5 es igual a 0.
2 mod 5 es igual a 2.
5 % 2 es igual a 1.
Nota: • Los operadores de adición, sustracción, menos unario, y multiplicación conservan el tipo desus operandos (que son compatibles según el tipo [consulte Compatibilidad de tipos en lapágina 185]). Si un operando es un entero y el otro un número real, el resultado será real.
• Si el segundo operando de una división, división de enteros u operador módulo es cero, esresultado será nulo [consulte El valor null en la página 184], ya que la división por cero noestá especificada.
• mod requiere operandos enteros.• También puede utilizar % en lugar de mod.
También consulte
Operadores lógicos en la página 198
Prioridad de operadores en la página 199
Operadores relacionales en la página 196
Operadores relacionalesTodos los operadores relacionales son operadores binarios no fijos, es decir, están escritos entre susdos operandos.
ResultadoOperandosOperator (Operador)
Verdadero si el primer operandoes menor que el segundo; falso
entero, real, fecha, o cadena< (menor que)
si el primero es mayor o igual queel segundo
Verdadero si el primer operandoes menor o igual que el segundo;
entero, real, fecha, o cadena<= (menor que o igual que)
falso si el primero es mayor queel segundo
Verdadero si el primer operandoes mayor que el segundo; falso
entero, real, fecha, o cadena> (mayor que o igual que)
Portrait Miner 7.1196
Operadores relacionales
ResultadoOperandosOperator (Operador)
si el primero es menor o igual quesegundo
Verdadero si el primer operandoes mayor o igual que el segundo;
entero, real, fecha, o cadena>= (mayor que o igual que)
falso si el primero es menor queel segundo
Verdadero si los dos operandostienen el mismo valor; falso si los
entero, real, fecha, o cadena= (igualdad)
operandos tienen distintosvalores. Para tipos de cadenas,la comparación ignora loscaracteres de espacio finales enlos dos operandos.
Verdadero si los operandos tienevalores diferentes; falso si los dos
entero, real, fecha, o cadena!= (desigualdad)
operandos tiene el mismo valor.Para tipos de cadenas, lacomparación ignora loscaracteres de espacio finales enlos dos operandos.
Ejemplos
2 > 5 igual a 1 (TRUE).
5 < 5 igual a 0 (FALSE).
"A" < "B" igual a 1 (TRUE).
5 <= 5 igual a 1 (TRUE).
5 > 5 igual a 0 (FALSE).
7 > 5 igual a 1 (TRUE).
#2003/12/31 > #2003/11/30 igual a 1 (TRUE).
5 >= 5 igual a 1 (TRUE).
"A" = "A" igual a 1 (TRUE).
"A" = "a" igual a 0 (FALSE).
"A" != "A" igual a 0 (FALSE).
"A" != "a" igual a 1 (TRUE).
Nota: • Los operandos de los operadores relacionales binarios deben ser compatibles [consulteCompatibilidad de tipos en la página 185].
197Guía de referencia del comando de creación de datos y TML
Capítulo 16: Sintaxis FDL
• Al comparar fechas, "menor que" significa antes que. Al comparar cadenas, "menor que"significa antes en el alfabeto ( o más específicamente, antes en la representación de caracteressubyacentes). Lo mismo pasa con "mayor que" etc.
• También puede usar == o eq en vez de = y <> en vez de !=.
También consulte
Operadores aritméticos en la página 195
Datos booleanos en la página 185
Operadores lógicos en la página 198
Operadores lógicosEl operador lógico de negación precede a su único operando, mientras que los operadores lógicos deconjunción y disyunción son operadores binarios no fijos, es decir, están escritos entre sus dos operandos.
ResultadoOperandosOperator (Operador)
Verdadero si ambos operandosson verdaderos; falso si uno delos operandos es falso
booleanand (conjunción lógica)
Verdadero si un operando esverdadero; falso si los dosoperandos son falsos
booleanor (disyunción lógica)
Verdadero si el operando esfalso; falso si el operando esverdadero
booleannot (negación lógica)
Ejemplos
("A" = "A") and (5 = 5) igual a 1 (TRUE).
("A" = "B") and (5 = 5) igual a 0 (FALSE).
("A" = "B") and (5 = 2) igual a 0 (FALSE).
("A" = "A") or (5 = 5) igual a 1 (TRUE).
("A" = "B") || (5 = 5) igual a 1 (TRUE).
("A" = "B") or (5 = 2) igual a 0 (FALSE).
not ("A" = "A") igual a 0 (FALSE).
!(("A" = "B") or (5 = 2)) igual a 1 (TRUE).
Nota: • No hay ningún tipo de datos booleanos [consulte Datos booleanos en la página 185] en FDL,por eso los operandos para los operadores lógicos con enteros. No debe aplicar estosoperadores a números enteros arbitrarios.
Portrait Miner 7.1198
Operadores lógicos
• Puede usar and en vez de and, || en vez de or, y ! en vez de not.
También consulte
Operadores aritméticos en la página 195
Prioridad de operadores en la página 199
Operadores relacionales en la página 196
Prioridad de operadoresFrente a la ausencia de paréntesis, las operaciones FDL en una expresión se llevan a cabo de acuerdoa la prioridad de operadores, del mayor al menor:
OperadoresClase
-Menos unario
* / div modOperadores de multiplicaciones
+ -Operadores de adición
< <= > >= != =Operadores relacionales
notNegación lógica
and orOperadores lógicos binarios
Si hay igualdad de prioridad, las operaciones se realizan de izquierda a derecha.
Las subexpresiones entre paréntesis se evalúan siempre primero.
Ejemplos -5 + 12 / 4 * 2 + 20 * 3 es igual a 61.
es decir, la expresión se evalúa de la siguiente manera: -5 + ((12 / 4) * 2) + (20 * 3)
Al mover los paréntesis:
-(5 + 12 / (4 * 2) + 20) * 3 es igual a -79.5.
También consulte
Operadores aritméticos en la página 195
Operadores lógicos en la página 198
Operadores relacionales en la página 196
Funciones incorporadasFDL incluye una larga lista de funciones incorporadas.
199Guía de referencia del comando de creación de datos y TML
Capítulo 16: Sintaxis FDL
Funciones condicionales
DescripciónFunción
Limitar un número para que se mantenga dentrodel intervalo dado.
clamp
Producir uno o dos resultados, depende si laexpresión es cero o no cero.
cond
Producir uno o dos resultados, depende si laexpresión es cero o no cero.
iff
Reemplazar el valor nulo.ifnull, nvl
Comprobar si un valor es nulo o no.isnull
Marcar los registros que están seleccionados.isselected
Reemplazar un número si no está dentro de unintervalo dado.
replace
Funciones de conversión de tipo de datos
ObjetivoFunción
Convertir un valor en una fecha.todate
Convertir un valor en un entero.tointeger
Convertir un valor en un número real.toreal
Convertir un valor en una cadena.tostring
Funciones para trabajar con fechas
ObjetivoFunción
Calcular una fecha a partir de otra fecha utilizandoun sistema de compensación en siglos.
addcenturies, addcenturiescountbackwards
Calcular una fecha a partir de otra fecha utilizandoun sistema de compensación en días.
adddays
Calcular una fecha a partir de otra fecha utilizandoun sistema de compensación en horas.
addhours
Calcular una fecha a partir de otra fecha utilizandoun sistema de compensación en minutos.
addminutes
Calcular una fecha a partir de otra fecha utilizandoun sistema de compensación en meses.
addmonths, addmonthscountbackwards
Calcular una fecha a partir de otra fecha utilizandoun sistema de compensación en segundos.
addseconds
Portrait Miner 7.1200
Funciones incorporadas
ObjetivoFunción
Calcular una fecha a partir de otra fecha utilizandoun sistema de compensación en semanas.
addweeks
Calcular una fecha a partir de otra fecha utilizandoun sistema de compensación en años.
addyears, addyearscountbackwards
Calcular la cantidad de siglos entre dos fechas.countcenturies
Calcular la cantidad de días entre dos fechas.countdays
Calcular la cantidad de horas entre dos fechas.counthours
Calcular la cantidad de minutos entre dos fechas.countminutes
Calcular la cantidad de segundos entre dos fechas.countseconds
Calcular la cantidad de semanas entre dos fechas.countweeks
Calcular la cantidad de siglos enteros entre dosfechas.
countwholecenturies,countwholecenturiesbackwards
Calcular la cantidad de días enteros entre dosfechas.
countwholedays
Calcular la cantidad de horas enteras entre dosfechas.
countwholehours
Calcular la cantidad de minutos enteros entre dosfechas.
countwholeminutes
Calcular la cantidad de meses enteros entre dosfechas.
countwholemonths,countwholemonthsbackwards
Calcular la cantidad de segundos entre dos fechas.countwholeseconds
Calcular la cantidad de semanas enteras entre dosfechas.
countwholeweeks
Calcular la cantidad de años enteros entre dosfechas.
countwholeyears, countwholeyearsbackwards
Calcular la cantidad de años entre dos fechas.countyears
Obtener el día del mes de una fecha.day
Obtener un número que represente el día de lasemana de una fecha.
dayofweek
Convertir una fecha en Hora Media de Greenwich(GMT) al Horario del Este (EDT).
gmt2edt
Obtener las horas de una fecha.hour
Obtener los minutos de una fecha.minute
Obtener los meses de una fecha.month
201Guía de referencia del comando de creación de datos y TML
Capítulo 16: Sintaxis FDL
ObjetivoFunción
Obtener la fecha y la hora actuales.now
Obtener los segundos de una fecha.second
Obtener la fecha actual.today
Calcular la semana del año de una fecha, tomandouna fecha de inicio específica.
weekofyear
Obtener el año de una fecha.year
Funciones para trabajar con cadenas
ObjetivoFunción
Concatenar dos o más cadenas.concat
Probar si una cadena termina con otra.endswith
Probar si una cadena está dentro de otra.find
Devolver una subcadena de longitud específicadel inicio de una cadena.
left
Devolver una subcadena de longitud específicadel medio de una cadena.
mid
Devolver una subcadena de longitud específicadel final de una cadena.
right
Reducir las palabras a cadenas de cuatrocaracteres para un índice.
soundex
Probar si una cadena comienza con otra.startswith
Obtener la longitud de una cadena.strlen
Determinar la pertenencia a un conjunto.strmember
Reemplazar una cadena por otra.substitute
Obtener una subcadena de una cadena.substr
Convertir una cadena a minúscula.tolower
Convertir una cadena a mayúscula.toupper
Eliminar todos los espacios de una cadena detexto, excepto los espacios individuales entre laspalabras.
trim
Expresiones regulares y sus funciones asociadas
Portrait Miner 7.1202
Funciones incorporadas
ObjetivoFunción
Probar una cadena para encontrar una coincidenciade expresión regular [consulte Expresionesregulares en la página 268].
match
Reemplazar todas las subcadenas que coincidencon una expresión regular [consulte Expresionesregulares en la página 268].
replaceall
Reemplazar la primer subcadena que coincide conuna expresión regular [consulte Expresionesregulares en la página 268].
replacefirst
Funciones matemáticas y estadísticas
DescripciónTipo
Calcular el valor absoluto de un número.abs
Redondear un número para arriba al entero máscercano.
ceil
Calcular el coseno de un ángulo.cos
Calcular el exponencial de un número.exp
Redondear un número para abajo al entero máscercano.
floor
Calcular el logaritmo natural (base e) de unnúmero.
log
Calcular el logaritmo base 10 de un número.log10
Calcular el logaritmo de un número, en una baseespecífica.
logbase
Calcular el más alto de dos o más números, o lamás reciente de dos o más fechas, o la última enel alfabeto de dos o más cadenas.
max (dos o más argumentos), maxnonnull
Calcular la media (el promedio) de dos o másnúmeros.
mean (dos o más argumentos), meannonnull
Calcular el más bajo de dos o más números, o lamás lejana de dos o más fechas, o la primera enel alfabeto de dos o más cadenas.
min (dos o más argumentos), minnonnull
Normalizar los campos de valores para ubicarlosen el intervalo [0,1].
normalize
Calcular el resultado de elevar un número a lapotencia de otro número.
pow
Calcular el producto de dos o más números.product, productnonnull
203Guía de referencia del comando de creación de datos y TML
Capítulo 16: Sintaxis FDL
DescripciónTipo
Redondear un número al entero más cercano.round
Calcular el signum (signo) de un número.sgn
Calcular el seno de un ángulo.sin
Calcular la raíz cuadrada de un número.sqrt
Calcular la suma de dos o más números.sum (dos o más argumentos), sumnonnull
Calcular la tangente de un ángulo.tan
Funciones de muestreo de datos
ObjetivoFunción
Crear una segmentación de prueba y capacitaciónpara usar en una validación de modelo.
numericTestTrainSplit
Crear una segmentación de prueba, capacitacióny validación para usar en una validación de modelo.
numericTestTrainValidateSplit
Crear, al azar, un índice de segmentación para losgrupos de igual tamaño.
sampleEqualSize
Marcar, aleatoriamente, una cantidad exacta declientes de una población especificada.
sampleExactNumber
Marcar, aleatoriamente, un porcentaje exacto declientes de una población especificada.
sampleExactPercentage
Marcar, aleatoriamente, una cantidad exacta declientes de un segmento y del resto de la población.
sampleStratified
Crear una segmentación de prueba y capacitaciónpara usar en una validación de modelo.
testTrainSplit
Crear una segmentación de prueba, capacitacióny validación para usar en una validación de modelo.
testTrainValidateSplit
Funciones de números aleatorios
ObjetivoFunción
Generar un entero aleatorio basado en unadistribución binomial.
rndBinomial
Generar un 0 ó 1 de manera aleatoria (conprobabilidades iguales).
rndBool
Generar un número positivo aleatorio basado enuna distribución exponencial.
rndExp
Generar un número positivo aleatorio basado enuna distribución gamma.
rndGamma
Portrait Miner 7.1204
Funciones incorporadas
ObjetivoFunción
Generar un número positivo aleatorio basado enuna distribución normal.
rndNormal
Generar un número no negativo entero aleatoriobasado en un distribución de Poisson discreta.
rndPoisson
Generar un número aleatorio entre 0 y 1 basadoen una distribución uniforme.
rndUniform
Funciones de rentabilidad de la inversión
ObjetivoFunción
Estimar (en dinero) la contribución de rentabilidadde la inversión por cliente al tomar medidasdiseñadas para generar una respuesta definitiva.
ActionROI
Estimar el múltiplo anual de rentabilidad de lainversión por cliente al tomar medidas diseñadaspara generar una respuesta definitiva de un cliente.
ActionROIAnnualized
Estimar la contribución de rentabilidad de lainversión por cliente al hacer una oferta diseñadapara generar una respuesta definitiva.
OfferROI
Estimar el múltiplo anual de rentabilidad de lainversión por cliente al hacer una oferta diseñadapara generar una respuesta definitiva de un cliente.
OfferROIAnnualized
Estimar (en dinero) la contribución de rentabilidadde la inversión por cliente al tomar medidasdiseñadas para prevenir desgastes.
RetentionActionROI
Estimar la contribución anual de rentabilidad de lainversión por cliente al tomar medidas diseñadaspara prevenir desgastes.
RetentionActionROIAnnualized
Estimar la rentabilidad de la inversión por clienteal hacer una oferta diseñada para prevenirdesgastes.
RetentionOfferROI
Estimar la rentabilidad anual de la inversión porcliente al hacer una oferta diseñada para prevenirdesgastes.
RetentionOfferROIAnnualized
Funciones diversas
ObjetivoFunción
Buscar valores en una tabla de referencias(guardada como enfoque).
dblookup
205Guía de referencia del comando de creación de datos y TML
Capítulo 16: Sintaxis FDL
ObjetivoFunción
Determinar la pertenencia a un conjunto.member
Identificar el orden de un valor dentro de una listade valores.
rankOrder, rankOrderApprox
Identificar el orden de un valor dentro de una listade valores.
rankOrderMean, rankOrderApproxMean
Mostrar el número de cada fila en una tabla.rownum
Rangos
ObjetivoFunción
Obtener un índice de rangos correspondientes aun valor.
bin
También consulteFunciones definidas por el usuario en la página 192
Palabras reservadas en FDLLos siguientes tokens son palabras reservadas en FDL: accum, agg, aggregate, aggregation,y, by, case, date, default, div, double, else, eq, false, field, float,function, global, if, int, integer, long, mod, not, null, number, numeric,o, real, date, default, div, double, else, eq, false, field, float, function,global, if, int, integer, long, mod, not, null, number, numeric, o, real,short, state, string, then, true, where y while
Para utilizar una palabra reservada o una palabra diferente únicamente en fuente de una palabrareservada, como un identificador [consulte Expressions (Expresiones) en la página 186] en FDL ocomo un nombre de campo o estadística en TML, debe encerrarla con comillas simples, por ejemplo,'State'.
Si bien los identificadores en FDL distinguen mayúsculas de minúsculas (fred y Fred sondistintos), las palabras reservadas no y, por lo tanto, se reservan en cualquier combinación de
Nota:
fuente: por ejemplo, if, If, iF e IF son todas representaciones del mismo símbolo; estetipo de combinaciones están reservadas y no puede utilizarse como identificadores.
También consulte
Acerca del lenguaje de derivación de campos (FDL) en la página 182
Palabras reservadas en TML en la página 149
Portrait Miner 7.1206
Palabras reservadas en FDL
Capítulo 17Funciones condicionales
En esta sección:
• clamp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .208• cond . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .208• iff . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .209• ifnull, nvl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .210• isnull . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .211• isselected . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .212• replace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .212
clampObjetivo: Limitar un número para que se mantenga dentro del intervalo dado.
Sintaxis clamp(x, min, max)
Argumentos
DescripciónNombreTipo
El número al que se aplicará lafunción clamp
xnumérico
El límite más bajo del intervalomincomo x
El límite más alto del intervalomaxcomo x
Resultado
DescripciónTipo
x if ; min if x < min; max if x > maxcomo entrada
Ejemplos
Para fijar valores dentro de un rango de 18 a 65 inclusive, reemplace los valores fuera del rango conlos límites adecuados del rango:
clamp(CustomerAge,18,65)CustomerAge
189
1818
6566
4343
También consultereplace en la página 212
condObjetivo: Producir uno o dos resultados, depende si la expresión es cero o no cero.
Sintaxis cond(cond, trueExpr, falseExpr)
Argumentos
Portrait Miner 7.1208
clamp
DescripciónNombreTipo
La expresión para probarcondentero
Rama "True" (no cero)trueExprentero, real, fecha, o cadena
Rama "False" (cero)falseExprcomo trueExpr
Resultado
DescripciónTipo
trueExpr Si cond 0; falseExpr Si cond = 0como trueExpr, falseExpr
A diferencia de la expresión if [consulte la sección La expresión if en la página 188] o la expresióncase [consulte la sección La expresión case en la página 189], ambas ramas se evalúan por lafunción cond.
Nota:
Más significativamente, cond preserva la incertidumbre de un valor null [consulte El valor nullen la página 184] en la condición.
Si este comportamiento no es necesario, utilice una expresión if o case para agilizar la acción.
Ejemplos
Para orientarse a clientes con un gasto cero en el Trimestre 2 para una campaña de correo:
cond(SpendQtr2, "Don't Mail", "Mail")SpendQtr2
Don't Mail100.39
Mail0
Mail-5.72
nullnull
También consulte
clamp en la página 208
iff en la página 209
ifnull, nvl en la página 210
replace en la página 212
iffObjetivo: Producir uno o dos resultados, depende si la expresión es cero o no cero.
Sintaxis iff(logical_text, value_if_true, value_if_false)
Argumentos
209Guía de referencia del comando de creación de datos y TML
Capítulo 17: Funciones condicionales
DescripciónNombreTipo
La expresión para probarlogical_textreal
Rama "True" (no cero)value_if_trueentero, real, fecha, o cadena
Rama "False" (cero o null)value_if_falsecomo value_if_true
Resultado
DescripciónTipo
value_if_true si logical_text 0;value_if_false si logical_text = 0 ological_text es nulo
como value_if_true, value_if_false
Ejemplos iff(Score > 650, "Mail", "No Mail")
También consultecond en la página 208
ifnull, nvlObjetivo: Reemplazar el valor nulo. Puede utilizar nvl como alias para ifnull.
Sintaxis ifnull(testNull, replaceValue)
nvl(testNull, replaceValue)
Argumentos
DescripciónNombreTipo
El valor que será comprobadotestNullentero, real, fecha, o cadena
El reemplazo para el valor nullreplaceValuecomo testNull
Resultado
DescripciónTipo
Una copia del valor testNull con replaceValueque reemplaza el valor null
como entrada
Ejemplos:
Para reemplazar valores faltantes con un valor derivado de otro campo:
Portrait Miner 7.1210
ifnull, nvl
ifnull(SpendQtr1,AnnualSpend/4)
AnnualSpendSpendQtr1
45.21178.9745.21
37.64150.56null
196.07784.27null
59.05274.1859.05
También consulte
cond en la página 208
isnull en la página 211
isnullObjetivo: Comprobar si un valor es nulo o no.
Sintaxis isnull(x)
Argumentos
DescripciónNombreTipo
El valor que será comprobadoxentero, real, fecha, o cadena
Resultado
DescripciónTipo
1 if x es null; 0 de lo contrarioentero
Ejemplos
Para reemplazar entradas de valor null en un campo con el valor medio de ese campo:
if isnull(Age) then mean(Age) else AgeAge
3232
44null
5959
2727
También consulteDivisión de agregaciones: la cláusula by en la página 156
211Guía de referencia del comando de creación de datos y TML
Capítulo 17: Funciones condicionales
isselectedObjetivo: Marcar los registros que están seleccionados.
Sintaxis isselected()
Argumentos Ninguno
Resultado
DescripciónTipo
1 si el registro está seleccionado, de lo contrario 0entero
El Visor de tabla admite la expansión inmediata de esta función.Nota:
Ejemplos if isselected() then "LowRisk" else "HighRisk"
replaceObjetivo: Reemplazar un número si no está dentro de un intervalo dado.
Sintaxis replace(x, min, max, y)
Argumentos
DescripciónNombreTipo
El número que se probaráxnumérico
El límite más bajo del intervalomincomo x
El límite más alto del intervalomaxcomo x
El valor de reemplazoycomo x
Resultado
DescripciónTipo
x si ; y de lo contrariocomo entrada
Ejemplos
Para fijar valores dentro de un intervalo de 18 a 65 inclusive, reemplace los valores fuera del rango conel valor medio:
Portrait Miner 7.1212
isselected
replace (CustomerAge, 18, 65,mean(CustomerAge))
CustomerAge
389
1818
3866
4343
También consulteclamp en la página 208
213Guía de referencia del comando de creación de datos y TML
Capítulo 17: Funciones condicionales
Capítulo 18Funciones de conversión detipo de datos
En esta sección:
• todate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .216• tointeger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .217• toreal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .217• tostring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .218
todateObjetivo: Convertir un valor en una fecha.
Sintaxis todate(x [, format] )
Argumentos
DescripciónNombreTipo
El valor a convertirxentero, real, fecha, o cadena
El formato de fecha [consulteFormatos de fecha en la página
formatcadena
55] a utilizar para la conversión(opcional, y solo se puede elegirsi x es un tipo de cadena)
Resultado
DescripciónTipo
x, como una fechafecha
Nota: • Si el argumento es un número entero, se asume que representará la fecha en el formatoAAAAMMDD.
• Si el argumento es un número real, se asume que representará la fecha en el formatoAAAAMMDD.HHMMSS.
• Si el argumento es de tipo de secuencia, y no se proporciona un argumento de formato defecha, se convierte la secuencia según la configuración de su preferencia de lectura .
Ejemplos (Valores de fechas en formato europeo.)
todate(20040109) igual a 09/01/2004:00:00:00.
todate(20040109.122853) igual a 09/01/2004:12:08:52.
todate("09/01/2004") igual a 09/01/2004:00:00:00.
todate("09-Jan-2004","%d-%b-%Y") igual a 09/01/2004:00:00:00.
todate(#09/01/2004:12:28:53) igual a 09/01/2004:12:28:53.
También consulte
tointeger en la página 217
toreal en la página 217
tostring en la página 218
Conversión de tipos en la página 186
Portrait Miner 7.1216
todate
tointegerObjetivo: Convertir un valor en un entero.
Sintaxis tointeger(x)
Argumentos
DescripciónNombreTipo
El valor a convertirxentero, real, fecha, o cadena
Resultado
DescripciónTipo
x, como un enteroentero
Nota: • SI el argumento es un número real, se ignorarán los dígitos después de la coma decimal.• Si el argumento es una fecha, el resultado tendrá el formato AAAAMMDD (se ignorará el
componente de hora).• Si el argumento es una cadena, se ignorarán los caracteres numéricos finales.
Ejemplos
tointeger (100) igual a 100.
tointeger (100.65) igual a 100.
tointeger ("100.65") igual a 100.
tointeger (#09/01/2004:12:28:53) igual a 20040109.
También consulte
todate en la página 216
toreal en la página 217
tostring en la página 218
Conversión de tipos en la página 186
torealObjetivo: Convertir un valor en un número real.
Sintaxis toreal(x)
Argumentos
217Guía de referencia del comando de creación de datos y TML
Capítulo 18: Funciones de conversión de tipo de datos
DescripciónNombreTipo
El valor a convertirxentero, real, fecha, o cadena
Resultado
DescripciónTipo
x, como un número realreal
Nota: • Si el argumento es una fecha, el resultado tendrá el formato AAAAMMDD.HHMMSS.• Si el argumento es una cadena, se ignorarán los caracteres numéricos finales.
Ejemplos
toreal (100) igual a 100.0.
toreal (100.65) igual a 100.65.
toreal ("100.65") igual a 100.65.
toreal (#09/01/2004:12:28:53) igual a 20040109.122853.
También consulte
todate en la página 216
tointeger en la página 217
tostring en la página 218
Conversión de tipos en la página 186
tostringObjetivo: Convertir un valor en una cadena.
Sintaxis tostring(x)
Argumentos
DescripciónNombreTipo
El valor a convertirxentero, real, fecha, o cadena
Resultado
DescripciónTipo
x, como una cadenacadena
Nota: • Si el argumento es real, el resultado será en formato decimal normal (no científico).
Portrait Miner 7.1218
tostring
• Si el argumento es de tipo de fecha, el resultado tiene el formato correspondiente a laconfiguración de su preferencia de escritura de fecha .
Ejemplos
tostring ("100") igual a "100".
tostring (1.0065e2) igual a "100.650000".
tostring ("100.65") igual a "100.65".
tostring (#09/01/2004:12:28:53 igual a "09/01/2004:12:28:53".
También consulte
todate en la página 216
tointeger en la página 217
toreal en la página 217
Conversión de tipos en la página 186
219Guía de referencia del comando de creación de datos y TML
Capítulo 18: Funciones de conversión de tipo de datos
Capítulo 19Funciones para trabajar confechas
En esta sección:
• addcenturies, addcenturiescountbackwards . . . . . . . . .223• adddays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .224• addhours . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .224• addminutes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .225• addmonths, addmonthscountbackwards . . . . . . . . . . . .226• addseconds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .228• addweeks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .229• addyears, addyearscountbackwards . . . . . . . . . . . . . . .230• countcenturies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .231• countdays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .231• counthours . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .232• countminutes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .233• countseconds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .234• countweeks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .235• countwholecenturies, countwholecenturiesbackwards .236• countwholedays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .237• countwholehours . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .238• countwholeminutes . . . . . . . . . . . . . . . . . . . . . . . . . . . . .238• countwholemonths, countwholemonthsbackwards . . .239• countwholeseconds . . . . . . . . . . . . . . . . . . . . . . . . . . . . .241• countwholeweeks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .242• countwholeyears, countwholeyearsbackwards . . . . . .243• countyears . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .244• day . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .245• dayofweek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .245
• gmt2edt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .246• hour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .246• minute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .247• month . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .248• now . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .248• second . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .249• today . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .249• weekofyear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .250• year . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251
Portrait Miner 7.1222
addcenturies, addcenturiescountbackwardsObjetivo: Calcular una fecha a partir de otra fecha utilizando un sistema de compensación en siglos.
Sintaxis addcenturies(date, n)
addcenturiescountbackwards(date, n)
Argumentos
DescripciónNombreTipo
Fecha de comienzodatefecha
La cantidad de siglos a agregar(puede ser un número negativo)
nentero
Resultado
DescripciónTipo
La fecha n agrega siglos a la fecha date (que seentiende como |n| siglos antes de date si n < 0).
La hora del resultado es la misma que la de date.
fecha
Consulte addmonths,addmonthscountbackwards en la página 226 paraleer una explicación de las dos variantes.
El resultado de agregar n años con la función addcenturies (o addcenturiescountbackwards) esel resultado de agregar 1200n meses con la función addmonths (o addmonthscountbackwards).
Nota:
Ejemplos
Para calcular una fecha un siglo más tarde que d, mostrando la diferencia entre las variantes addcenturiesy addcenturiescountbackwards (formato de fecha AMD):
addcenturiescountbackwards(d,1)addcenturies(d,1)d
2000/02/152000/02/141900/02/14
También consulte
countcenturies en la página 231
countwholecenturies, countwholecenturiesbackwards en la página 236
Formatos de fecha en la página 55
223Guía de referencia del comando de creación de datos y TML
Capítulo 19: Funciones para trabajar con fechas
adddaysObjetivo: Calcular una fecha a partir de otra fecha utilizando un sistema de compensación en días.
Sintaxis adddays(date, n)
Argumentos
DescripciónNombreTipo
Fecha de comienzodatefecha
Cantidad de días a agregar(puede ser un número negativo)
nentero
Resultado
DescripciónTipo
La fecha n agrega años a la fecha date (que seentiende como |n| días antes de date si n < 0).
La hora del resultado es la misma que la de date.
fecha
Ejemplos
Formato de fecha europeo: adddays (#09/01/2004, 25) igual a 03/02/2004.
Formato de fecha europeo:adddays (09/01/2004:11:43:46, 25) igual a03/02/2004:11:43:46.
Formato de fecha estadounidense: adddays (#01/09/2004, 25) igual a 02/03/2004.
Formato de fecha estadounidense: adddays (#01/09/2004:11:43:46, 25) igual a02/03/2004:11:43:46.
Formato de fecha AMD: adddays (#2004/01/09, 25) igual a 2004/02/03.
Formato de fecha AMD: adddays (#2004/01/09:11:43:46, 25) igual a 2004/02/03:11:43:46.
También consulte
countdays en la página 231
countwholedays en la página 237
Formatos de fecha en la página 55
addhoursObjetivo: Calcular una fecha a partir de otra fecha utilizando un sistema de compensación en horas.
Portrait Miner 7.1224
adddays
Sintaxis addhours(date, n)
Argumentos
DescripciónNombreTipo
Fecha de comienzodatefecha
Cantidad de horas a agregar(puede ser un número negativo)
nentero
Resultado
DescripciónTipo
La fecha n agrega horas a la fecha date (que seentiende como |n| |horas antes de date si n < 0)
fecha
Todas las fechas en FDL incluyen un componente de hora.Nota:
Ejemplos
Formato de fecha europeo: addhours (#09/01/2004:12:28:53, 25) igual a10/01/2004:13:28:53.
Formato de fecha estadounidense: addhours (#01/09/2004:12:28:53, 25) igual a01/10/2004:13:28:53.
Formato de fecha AMD:addhours (#2004/01/09:12:28:53, 25) igual a 2004/01/10:13:28:53.
También consulte
counthours en la página 232
countwholehours en la página 238
Formatos de fecha en la página 55
addminutesObjetivo: Calcular una fecha a partir de otra fecha utilizando un sistema de compensación en minutos.
Sintaxis addminutes(date, n)
Argumentos
DescripciónNombreTipo
Fecha de comienzodatefecha
Cantidad de minutos a agregar(puede ser un número negativo)
nentero
225Guía de referencia del comando de creación de datos y TML
Capítulo 19: Funciones para trabajar con fechas
Resultado
DescripciónTipo
La fecha n agrega minutos a la fecha date (quese entiende como |n| minutos antes de date sin < 0)
fecha
Todas las fechas en FDL incluyen un componente de hora.Nota:
Ejemplos
Formato de fecha europeo: addminutes (#09/01/2004:12:28:53, 25) igual a09/01/2004:12:53:53.
Formato de fecha estadounidense: addminutes (#01/09/2004:12:28:53, 25) igual a01/09/2004:12:53:53.
Formato de fecha AMD: addminutes (#2004/01/09:12:28:53, 25) igual a2004/01/09:12:53:53.
También consulte
countminutes en la página 233
countwholeminutes en la página 238
Formatos de fecha en la página 55
addmonths, addmonthscountbackwardsObjetivo: Calcular una fecha a partir de otra fecha utilizando un sistema de compensación en meses.
Sintaxis addmonths(date, n)
addmonthscountbackwards(fecha, n)
Argumentos
DescripciónNombreTipo
Fecha de comienzodatefecha
La cantidad de meses a agregar(puede ser un número negativo)
nentero
Resultado
Portrait Miner 7.1226
addmonths, addmonthscountbackwards
DescripciónTipo
La fecha n agrega meses a la fecha date (que seentiende como |n| meses antes de date si n <0).
Las partes de mes y año del resultado estándeterminadas por el desplazamiento n.
fecha
El día del mes del resultado es el mismo de lafecha date (para addmonths) o la misma cantidadde días desde el último día del mes como en lafecha date (para addmonthscountbackwards).
Si el día del mes resulta ser anterior al comienzodel mes o posterior a su finalización (porque el mesde resultado es un mes más corto que el mes dedate), se fijará en el primer o último día del mes,según corresponda.
La hora del resultado es la misma que la de date.
Nota: • Si agrega n meses utilizando la función (o addmonthscountbackwards), no obtendrá elmismo resultado que al agregar un mes n veces, ya que el día del mes estará limitado por unmes corto intermedio en el último caso.
• Los resultados al agregar meses con addmonths y addmonthscountbackwards puedeser diferentes si el mes de la fecha y el mes del resultado tienen una cantidad diferente dedías.
Ejemplos
Para calcular una fecha un mes más tarde que d, mostrando la propagación de las partes de hora(formato de fecha AMD):
addmonths(d,1)d
2007/09/14:00:00:002007/08/14:00:00:00
2007/09/14:12:34:562007/08/14:12:34:56
Para calcular una fecha un mes más tarde que d, mostrando la diferencia entre las variantes addcenturiesy addcenturiescountbackwards (formato de fecha AMD):
addmonthscountbackwards(d,1)addmonths(d,1)d
2007/09/132007/09/142007/08/14
Para calcular una fecha un mes más tarde que d, mostrando el comportamiento de fijación de addmonthsal final de un mes (formato de fecha AMD):
227Guía de referencia del comando de creación de datos y TML
Capítulo 19: Funciones para trabajar con fechas
addmonths(d,1)d
2007/09/302007/08/31
Para calcular una fecha un mes más tarde que d, mostrando el comportamiento de fijación deaddmonthscountbackwards al final de un mes (formato de fecha AMD):
addmonthscountbackwards(d,1)d
2007/09/012007/08/02
2007/09/012007/08/01
Para calcular los seis meses desde el día de adquisición de cada cliente utilizando el campo de fechade adquisición del cliente StartDate:
addmonths(StartDate, 6)
También consulte
countwholemonths, countwholemonthsbackwards en la página 239
Formatos de fecha en la página 55
addsecondsObjetivo: Calcular una fecha a partir de otra fecha utilizando un sistema de compensación en segundos.
Sintaxis addseconds(date, n)
Argumentos
DescripciónNombreTipo
Fecha de comienzodatefecha
Cantidad de segundos a agregar(puede ser un número negativo)
nentero
Resultado
DescripciónTipo
La fecha n agrega segundos a la fecha date (quese entiende como |n| segundos antes de datesi n < 0)
fecha
Todas las fechas en FDL incluyen un componente de hora.Nota:
Ejemplos
Portrait Miner 7.1228
addseconds
Formato de fecha europeo: addseconds (#09/01/2004:12:28:53, 25) igual a09/01/2004:12:54:18.
Formato de fecha estadounidense: addseconds (#01/09/2004:12:28:53, 25) igual a01/09/2004:12:54:18.
Formato de fecha AMD: addseconds (#2004/01/09:12:28:53, 25) igual a2004/01/09:12:54:18.
También consulte
countseconds en la página 234
countwholeseconds en la página 241
Formatos de fecha en la página 55
addweeksObjetivo: Calcular una fecha a partir de otra fecha utilizando un sistema de compensación en semanas.
Sintaxis addweeks(date, n)
Argumentos
DescripciónNombreTipo
Fecha de comienzodatefecha
Cantidad de semanas a agregar(puede ser un número negativo)
nentero
Resultado
DescripciónTipo
La fecha n agrega semanas a la fecha date (quese entiende como |n| semanas antes de date sin < 0)
La hora del resultado es la misma que la de date.
fecha
Ejemplos
Formato de fecha europeo: addweeks (#09/01/2004, 8) igual a 05/03/2004.
Formato de fecha estadounidense: addweeks (#01/09/2004, 8) igual a 03/05/2004.
Formato de fecha AMD: addweeks (#2004/01/09, 8) igual a 2004/03/05.
También consulte
countweeks en la página 235
229Guía de referencia del comando de creación de datos y TML
Capítulo 19: Funciones para trabajar con fechas
countwholeweeks en la página 242
Formatos de fecha en la página 55
addyears, addyearscountbackwardsObjetivo: Calcular una fecha a partir de otra fecha utilizando un sistema de compensación en años.
Sintaxis addyears(date, n)
addyearscountbackwards(fecha, n)
Argumentos
DescripciónNombreTipo
Fecha de comienzodatefecha
Cantidad de años a agregar(puede ser un número negativo)
nentero
Resultado
DescripciónTipo
La fecha n agrega años a la fecha date (que seentiende como |n| años antes de date si n < 0).
La hora del resultado es la misma que la de date.
fecha
Consulte addmonths,addmonthscountbackwards en la página 226 paraleer una explicación de las dos variantes.
El resultado de agregar n años con la función addyears (o addyearscountbackwards) es elresultado de agregar 12n meses con la función addmonths (o addmonthscountbackwards).
Nota:
Ejemplos
Para calcular una fecha un año más tarde que d, mostrar la diferencia entre las variantes addyears yaddyearscountbackwards (formato de fecha AMD):
addyearscountbackwards(d,1)addyears(d,1)d
2008/02/152008/02/142007/02/14
Para calcular el primer aniversario de la adquisición de cada cliente, utilizando el campo de fecha deadquisición del cliente StartDate:
addyears(StartDate, 1)
También consulte
Portrait Miner 7.1230
addyears, addyearscountbackwards
countwholeyears, countwholeyearsbackwards en la página 243
countyears en la página 244
Formatos de fecha en la página 55
countcenturiesObjetivo: Calcular la cantidad de siglos entre dos fechas.
Sintaxis countcenturies(date1, date2)
Argumentos
DescripciónNombreTipo
la primera fechadate1fecha
la segunda fechadate2fecha
Resultado
DescripciónTipo
El período entre date1 y date2 en siglos (unnúmero negativo si date1 es posterior a date2)
real
Nota: • Si el período no es un múltiplo exacto de 100 años (teniendo en cuenta las partes de hora enlas fechas) el resultado incluye una parte fraccionaria.
• El resultado de la función countcenturies es igual al resultado de la función countyears divididopor 100.
Ejemplos
Formato de fecha europeo: countcenturies (#09/01/2004, #09/01/2054) igual a 0.5.
Formato de fecha estadounidense: countcenturies (#01/09/2004, #01/09/2054) igual a 0.5.
Formato de fecha AMD: countcenturies (#2004/01/09, #2054/01/09) igual a 0.5.
También consulte
countwholecenturies, countwholecenturiesbackwards en la página 236
Formatos de fecha en la página 55
countdaysObjetivo: Calcular la cantidad de días entre dos fechas.
231Guía de referencia del comando de creación de datos y TML
Capítulo 19: Funciones para trabajar con fechas
Sintaxis countdays(date1, date2)
Argumentos
DescripciónNombreTipo
la primera fechadate1fecha
la segunda fechadate2fecha
Resultado
DescripciónTipo
El período entre date1 y date2 en días (unnúmero negativo si date1 es posterior a date2)
real
Si la hora entre las dos fechas difiere, el resultado incluye una parte fraccionaria.Nota:
Ejemplos
Formato de fecha europeo:
countdays (#09/01/2004, #03/02/2004) igual a 25.
countdays ((#09/01/2004:10:00:00, #03/02/2004:11:00:00) igual a 25.04.
countdays (#09/01/2004:11:00:00, #03/02/2004:10:00:00) igual a 24.96.
Formato de fecha estadounidense:
countdays (#01/09/2004, #02/03/2004) igual a 25.
countdays (#01/09/2004:10:00:00, #02/03/2004:11:00:00) igual a 25.04.
countdays (#01/09/2004:11:00:00, #02/03/2004:10:00:00) igual a 24.96.
Formato de fecha AMD:
countdays (#2004/01/09, #2004/02/03) igual a 25.
countdays(#2004/01/09:10:00:00, #2004/02/03:11:00:00) igual a 25.04.
countdays (#2004/01/09:11:00:00, #2004/02/03:10:00:00) igual a 24.96.
También consulte
adddays en la página 224
countwholedays en la página 237
Formatos de fecha en la página 55
counthoursObjetivo: Calcular la cantidad de horas entre dos fechas.
Portrait Miner 7.1232
counthours
Sintaxis counthours(time1, time2)
Argumentos
DescripciónNombreTipo
la primera fecha/horatime1fecha
la segunda fecha/horatime2fecha
Resultado
DescripciónTipo
El período entre time1 y time2 en horas (unnúmero negativo si time1 es posterior a time2)
real
Si los minutos o segundos entre las dos fechas difieren, el resultado incluye una parte fraccionaria.Nota:
Ejemplos
Formato de fecha europeo: counthours (#09/01/2004:12:28:53, #10/01/2004:13:28:53)igual a 25.
Formato de fecha estadounidense: counthours (#01/09/2004:12:28:53,#01/10/2004:13:28:53) igual a 25.
Formato de fecha AMD: counthours (#2004/01/09:12:28:53, #2004/01/10:13:28:53) iguala 25.
También consulte
countwholehours en la página 238
Formatos de fecha en la página 55
countminutesObjetivo: Calcular la cantidad de minutos entre dos fechas.
Sintaxis countminutes(time1, time2)
Argumentos
DescripciónNombreTipo
la primera fecha/horatime1fecha
la segunda fecha/horatime2fecha
Resultado
233Guía de referencia del comando de creación de datos y TML
Capítulo 19: Funciones para trabajar con fechas
DescripciónTipo
El período entre time1 y time2 en minutos (unnúmero negativo si time1 es posterior a time2)
real
Si los segundos entre las dos fechas difieren, el resultado incluye una parte fraccionaria.Nota:
Ejemplos
Formato de fecha europeo: countminutes (#09/01/2004:12:28:53, #09/01/2004:12:53:53)igual a 25.
Formato de fecha estadounidense: countminutes (#01/09/2004:12:28:53,#01/09/2004:12:53:53) igual a 25.
Formato de fecha AMD: countminutes (#2004/01/09:12:28:53, #2004/01/09:12:53:53)igual a 25.
También consulte
countwholeminutes en la página 238
Formatos de fecha en la página 55
countsecondsObjetivo Contar la cantidad de segundos entre dos fechas.
Sintaxis countseconds(time1, time2)
Argumentos
DescripciónNombreTipo
la primera fecha/horatime1fecha
la segunda fecha/horatime2fecha
Resultado
DescripciónTipo
La cantidad de segundos transcurridos entretime1 y time2 (un número negativo si time1 esposterior a time2)
real
La única diferencia entre esta función y countwholeseconds es que el resultado de la últimaes un número entero.
Nota:
Ejemplos
Portrait Miner 7.1234
countseconds
Formato de fecha europeo: countseconds (#09/01/2004:12:28:53, #09/01/2004:12:29:18)igual a 25.
Formato de fecha estadounidense: countseconds (#01/09/2004:12:28:53,#01/09/2004:12:29:18) igual a 25.
Formato de fecha AMD: countseconds (#2004/01/09:12:28:53, #2004/01/09:12:29:18)igual a 25.
También consulteFormatos de fecha en la página 55
countweeksObjetivo: Calcular la cantidad de semanas entre dos fechas.
Sintaxis countweeks(date1, date2)
Argumentos
DescripciónNombreTipo
la primera fechadate1fecha
la segunda fechadate2fecha
Resultado
DescripciónTipo
El período entre date1 y date2 en semanas (unnúmero negativo si date1 es posterior a date2)
real
Si el período no es un múltiplo de 7 días (teniendo en cuenta la hora) el resultado incluye unaparte fraccionaria.
Nota:
Ejemplos
Formato de fecha europeo: countweeks (#09/01/2004, #05/03/2004) igual a 8.
Formato de fecha estadounidense: countweeks (#01/09/2004, #03/05/2004) igual a 8.
Formato de fecha AMD: countweeks (#2004/01/09, #2004/03/05) igual a 8.
También consulte
countwholeweeks en la página 242
Formatos de fecha en la página 55
235Guía de referencia del comando de creación de datos y TML
Capítulo 19: Funciones para trabajar con fechas
countwholecenturies,countwholecenturiesbackwards
Objetivo: Calcular la cantidad de siglos enteros entre dos fechas.
Sintaxis countwholecenturies(date1, date2) countwholecenturiesbackwards(date1,date2)
Argumentos
DescripciónNombreTipo
la primera fechadate1fecha
la segunda fechadate2fecha
Resultado
DescripciónTipo
La cantidad de siglos enteros transcurridos entredate1 y date2 (un número negativo si date1 esposterior a date2).
Consulte countwholemonths,countwholemonthsbackwards en la página 239para leer una explicación de las dos variantes.
entero
Nota: • El resultado de la función countwholecenturies (o countwholecenturiesbackwards)es el resultado de la función countwholemonths (o countwholemonthsbackwards)dividido por 1200, ignorando cualquier resto.
• El resultado de una comparación de dos fechas con countwholecenturies ycountwholecenturiesbackwards puede variar, pero solo si las dos fechas son en febrero,una de las dos en un año divisible por 400, y la otra en un año divisible por 100 pero no por400.
Ejemplos
Para contar la cantidad de siglos enteros entre d1 y d2, mostrando la diferencia entre las variantescountwholecenturies y countwholecenturiesbackwards (formato de fecha AMD):
countwholecenturiesbackwards(d1,d2)countwholecenturies(d1,d2)d2d1
002000/02/131900/02/14
012000/02/141900/02/14
112000/02/151900/02/14
Portrait Miner 7.1236
countwholecenturies, countwholecenturiesbackwards
También consulte
addcenturies, addcenturiescountbackwards en la página 223
countcenturies en la página 231
Formatos de fecha en la página 55
countwholedaysObjetivo: Calcular la cantidad de días enteros entre dos fechas.
Sintaxis countwholedays(date1, date2)
Argumentos
DescripciónNombreTipo
la primera fechadate1fecha
la segunda fechadate2fecha
Resultado
DescripciónTipo
La cantidad de períodos de 24 horas enterostranscurridos entre date1 y date2 (un númeronegativo si date1 es posterior a date2).
entero
Ejemplos
Formato de fecha europeo:
countdays (#09/01/2004, #03/02/2004) igual a 25.
countdays (#09/01/2004:10:00:00, #03/02/2004:11:00:00) igual a 25.
countdays (#09/01/2004:11:00:00, #03/02/2004:10:00:00) igual a 24.
Formato de fecha estadounidense:
countdays (#01/09/2004, #02/03/2004) igual a 25.
countdays (#01/09/2004:10:00:00, #02/03/2004:11:00:00) igual a 25.
countdays (#01/09/2004:11:00:00, #02/03/2004:10:00:00) igual a 24.
Formato de fecha AMD:
countdays (#2004/01/09, #2004/02/03) igual a 25.
countdays (#2004/01/09:10:00:00, #2004/02/03:11:00:00) igual a 25.
countdays (#2004/01/09:11:00:00, #2004/02/03:10:00:00) igual a 24.
237Guía de referencia del comando de creación de datos y TML
Capítulo 19: Funciones para trabajar con fechas
También consulte
adddays en la página 224
countdays en la página 231
Formatos de fecha en la página 55
countwholehoursObjetivo: Calcular la cantidad de horas enteras entre dos fechas.
Sintaxis countwholehours(time1, time2)
Argumentos
DescripciónNombreTipo
la primera fecha/horatime1fecha
la segunda fecha/horatime2fecha
Resultado
DescripciónTipo
La cantidad de horas enteras transcurridas entretime1 y time2 (un número negativo si time1 esposterior a time2)
entero
Ejemplos
Formato de fecha europeo: countwholehours (#09/01/2004:12:28:53,#10/01/2004:13:28:53) igual a 24.
Formato de fecha estadounidense: countwholehours (#01/09/2004:12:28:53,#01/10/2004:13:28:53) igual a 24.
Formato de fecha AMD:countwholehours (#2004/01/09:12:28:53, #2004/01/10:13:28:53)igual a 24.
También consulte
counthours en la página 232
Formatos de fecha en la página 55
countwholeminutesObjetivo: Calcular la cantidad de minutos enteros entre dos fechas.
Portrait Miner 7.1238
countwholehours
Sintaxis countwholeminutes(time1, time2)
Argumentos
DescripciónNombreTipo
la primera fecha/horatime1fecha
la segunda fecha/horatime2fecha
Resultado
DescripciónTipo
La cantidad de minutos enteros transcurridas entretime1 y time2 (un número negativo si time1 esposterior a time2)
entero
Ejemplos
Formato de fecha europeo: countwholeminutes (#09/01/2004:12:28:53,#09/01/2004:12:53:53) igual a 24.
Formato de fecha estadounidense: countwholeminutes (#01/09/2004:12:28:53,#01/09/2004:12:53:53) igual a 24.
Formato de fecha AMD: countwholeminutes (#2004/01/09:12:28:53,#2004/01/09:12:53:53) igual a 24.
También consulte
countminutes en la página 233
Formatos de fecha en la página 55
countwholemonths, countwholemonthsbackwardsObjetivo: Calcular la cantidad de meses enteros entre dos fechas.
Sintaxis countwholemonths(date1, date2) countwholemonthsbackwards(date1, date2)
Argumentos
DescripciónNombreTipo
la primera fechadate1fecha
la segunda fechadate2fecha
Resultado
239Guía de referencia del comando de creación de datos y TML
Capítulo 19: Funciones para trabajar con fechas
DescripciónTipo
La cantidad de meses enteros transcurridos entredate1 y date2 (un número negativo si date1 esposterior a date2)
entero
Nota: • Las partes de hora de date1 y date2 son ignoradas.• La cantidad de meses enteros entre dos fechas es la mayor cantidad de meses que se pueden
agregar a la primera fecha (truncando la parte de hora y utilizando addmonths paracountwholemonths, y addmonthscountbackwards en caso decountwholemonthsbackwards) de modo que si la segunda fecha es posterior a la primera,el resultado no será posterior a la segunda fecha, y si la segunda fecha es anterior a la primera,el resultado no podrá ser anterior a la segunda.
• Los resultados al comparar dos fechas con countwholemonths ycountwholemonthsbackwards pueden ser diferentes si las fechas tienen meses de diferenteduración.
• Debido al comportamiento de fijación de addmonths (y addmonthscountbackwards), elvalor absoluto de los resultados al comparar dos fechas con countwholemonths (ocountwholemonthsbackwards) dependerá del orden de los argumentos si las fechas tienenmeses de diferente duración.
Ejemplos
Para contar la cantidad de meses completos entre d1 y d2, truncando las partes de hora (formato defecha AMD):
countwholemonths(d1,d2)d2d1
12007/09/14:00:00:002007/08/14:00:00:00
12007/09/14:00:00:002007/08/14:12:34:56
Para contar la cantidad de meses enteros entre d1 y d2, mostrando la diferencia entre las variantescountwholemonths y countwholemonthsbackwards (formato de fecha AMD):
countwholemonthsbackwards(d1,d2)countwholemonths(d1,d2)d2d1
002007/09/122007/08/14
102007/09/132007/08/14
112007/09/142007/08/14
Para contar la cantidad de meses enteros entre d1 y d2, mostrando el comportamiento de fijación decountwholemonths al final de un mes (formato de fecha AMD):
countwholemonths(d2,d1)countwholemonths(d1,d2)d2d1
012007/09/302007/08/31
Portrait Miner 7.1240
countwholemonths, countwholemonthsbackwards
Para contar la cantidad de meses enteros entre d1 y d2, mostrando el comportamiento de fijación decountwholemonths al principio de un mes (formato de fecha AMD):
countwholemonthsbackwards(d2,d1)countwholemonthsbackwards(d1,d2)d2d1
0-12007/06/012007/07/01
Para contar la cantidad de comunicaciones por correo electrónico que recibió cada cliente, cuando lascomunicaciones se envían el día 5 de cada mes (y la última comunicación fue enviada el 5 de marzode 2006), utilizando el campo de fecha de adquisición de cliente StartDate:
-countwholemonths(#2006/03/05, StartDate)
Para contar la cantidad de estados mensuales que recibió cada cliente, cuando los estados se envíansiete días antes del cierre de cada mes (y el último fue enviado el 24 de marzo de 2006), utilizando elcampo de fecha de adquisición de cliente StartDate:
-countwholemonthsbackwards(#2006/03/24, StartDate)
También consulte
addmonths, addmonthscountbackwards en la página 226
Formatos de fecha en la página 55
countwholesecondsObjetivo: Calcular la cantidad de segundos entre dos fechas.
Sintaxis countwholeseconds(time1, time2)
Argumentos
DescripciónNombreTipo
la primera fecha/horatime1fecha
la segunda fecha/horatime2fecha
Resultado
DescripciónTipo
La cantidad de segundos transcurridos entretime1 y time2 (un número negativo si time1 esposterior a time2)
entero
La única diferencia entre esta función y countseconds es que el resultado de la última es unnúmero real.
Nota:
Ejemplos
241Guía de referencia del comando de creación de datos y TML
Capítulo 19: Funciones para trabajar con fechas
Formato de fecha europeo: countwholeseconds (#09/01/2004:12:28:53,#09/01/2004:12:29:18) igual a 25.
Formato de fecha estadounidense: countwholeseconds (#01/09/2004:12:28:53,#01/09/2004:12:29:18) igual a 25.
Formato de fecha AMD: countwholeseconds (#2004/01/09:12:28:53,#2004/01/09:12:29:18) igual a 25.
También consulteFormatos de fecha en la página 55
countwholeweeksObjetivo: Calcular la cantidad de semanas enteras entre dos fechas.
Sintaxis countwholeweeks(date1, date2)
Argumentos
DescripciónNombreTipo
la primera fechadate1fecha
la segunda fechadate2fecha
Resultado
DescripciónTipo
La cantidad de semanas enteras transcurridosentre date1 y date2 (un número negativo sidate1 es posterior a date2).
entero
Ejemplos
Formato de fecha europeo: countwholeweeks (#09/01/2004, #09/03/2004) igual a 8.
Formato de fecha estadounidense: countwholeweeks (#01/09/2004, #03/09/2004) igual a 8.
Formato de fecha AMD: countwholeweeks (#2004/01/09, #2004/03/09) igual a 8.
También consulte
countweeks en la página 235
Formatos de fecha en la página 55
Portrait Miner 7.1242
countwholeweeks
countwholeyears, countwholeyearsbackwardsObjetivo: Calcular la cantidad de años enteros entre dos fechas.
Sintaxis countwholeyears(date1, date2)
countwholeyearsbackwards(date1, date2)
Argumentos
DescripciónNombreTipo
la primera fechadate1fecha
la segunda fechadate2fecha
Resultado
DescripciónTipo
La cantidad de años enteros transcurridos entredate1 y date2 (un número negativo si date1 esposterior a date2).
Consulte countwholemonths,countwholemonthsbackwards en la página 239para leer una explicación de las dos variantes.
entero
Nota: • El resultado de la función countwholeyears(o countwholeyearsbackwards) es elresultado de la función countwholemonths (o countwholemonthsbackwards) divididopor 12, ignorando cualquier resto.
• El resultado de una comparación de dos fechas con countwholeyears ycountwholeyearsbackwards puede variar, pero solo si las dos fechas son en febrero, unaen año bisiesto y la otra no.
Ejemplos
Para contar la cantidad de años enteros entre d1 y d2, mostrando la diferencia entre las variantescountwholeyears y countwholeyearsbackwards (formato de fecha AMD):
countwholeyearsbackwards(d1,d2)countwholeyears(d1,d2)d2d1
002008/02/132007/02/14
012008/02/142007/02/14
112008/02/152007/02/14
Para calcular la edad de cada cliente al 1 de marzo de 2007 desde un campo de fecha de nacimientoDOB (formato de fecha AMD):
243Guía de referencia del comando de creación de datos y TML
Capítulo 19: Funciones para trabajar con fechas
countwholeyears(DOB, #2007/03/01)
También consulte
addyears, addyearscountbackwards en la página 230
countyears en la página 244
Formatos de fecha en la página 55
countyearsObjetivo: Calcular la cantidad de años entre dos fechas.
Sintaxis countyears(date1, date2)
Argumentos
DescripciónNombreTipo
la primera fechadate1fecha
la segunda fechadate2fecha
Resultado
DescripciónTipo
El período entre date1 y date2 en años (unnúmero negativo si date1 es posterior a date2)
real
Nota: • Si las partes de meses, días y hora de las dos fechas difieren, el resultado incluye una partefraccionaria, y se cuenta el año incompleto como una fracción del número de días (365 ó 366)en el año de la fecha más tardía.
Ejemplos
Formato de fecha europeo: countyears (#09/01/2004, #09/01/1994) igual a -10.
Formato de fecha estadounidense: countyears (#01/09/2004, #01/09/1994) igual a -10.
Formato de fecha AMD: countyears (#2004/01/09, #1994/01/09) igual a 10.
También consulte
countwholeyears, countwholeyearsbackwards en la página 243
Formatos de fecha en la página 55
Portrait Miner 7.1244
countyears
dayObjetivo: Obtener el día del mes de una fecha.
Sintaxis day(date)
Argumentos
DescripciónNombreTipo
Una fechadatefecha
Resultado
DescripciónTipo
El día del mes de dateentero
Ejemplos
Formato de fecha europeo: day(#09/01/2004) igual a 9.
Formato de fecha estadounidense: day(#01/09/2004) igual a 9.
Formato de fecha AMD: day(#2004/01/09) igual a 9.
También consulte
Formatos de fecha en la página 55
División de agregaciones: la cláusula by en la página 156
dayofweekObjetivo: Obtener un número que represente el día de la semana de una fecha.
Sintaxis dayofweek(date)
Argumentos
DescripciónNombreTipo
Una fechadatefecha
Resultado
DescripciónTipo
El día de la semana de date (un número entre 0y 6, dónde el 0 representa el domingo)
entero
245Guía de referencia del comando de creación de datos y TML
Capítulo 19: Funciones para trabajar con fechas
Ejemplos
Formato de fecha europeo: dayofweek (#09/01/2004) igual a 5 (es decir, viernes).
Formato de fecha estadounidense: dayofweek (#01/09/2004) igual a 5 (es decir, viernes).
Formato de fecha AMD: dayofweek (#2004/01/09) igual a 5 (es decir, viernes).
También consulte
Formatos de fecha en la página 55
División de agregaciones: la cláusula by en la página 156
gmt2edtObjetivo: Convertir una fecha en Hora Media de Greenwich (GMT) al Horario del Este (EDT).
Sintaxis gmt2edt(datetimeGMT)
Argumentos
DescripciónNombreTipo
La fecha en GMT a convertirdatetimeGMTfecha
Resultado
DescripciónTipo
La fecha en EDT, teniendo en cuenta el horario deverano
fecha
Ejemplos
Invierno: GMT2EDT(#09/01/2004:12:28:53) igual a 09/01/2004:07:28:53.
Verano: GMT2EDT(#09/07/2004:12:28:53) igual a 09/07/2004:08:28:53.
hourObjetivo: Obtener las horas de una fecha.
Sintaxis hour(time)
Argumentos
DescripciónNombreTipo
Una fecha/horatimefecha
Portrait Miner 7.1246
gmt2edt
Resultado
DescripciónTipo
Las horas de timeentero
Ejemplos
Formato de fecha europeo: hour (#09/01/2004:12:28:53) igual a 12.
Formato de fecha estadounidense: hour (#01/09/2004:12:28:53) igual a 12.
Formato de fecha AMD: hour (#2004/01/09:12:28:53) igual a 12.
También consulte
Formatos de fecha en la página 55
División de agregaciones: la cláusula by en la página 156
minuteObjetivo: Obtener los minutos de una fecha.
Sintaxis minute(time)
Argumentos
DescripciónNombreTipo
Una fecha/horatimefecha
Resultado
DescripciónTipo
Los minutos de timeentero
Ejemplos
Formato de fecha europeo: minute (#09/01/2004:12:28:53) igual a 28.
Formato de fecha estadounidense: minute (#01/09/2004:12:28:53) igual a 28.
Formato de fecha AMD: minute (#2004/01/09:12:28:53) igual a 28.
También consulte
Formatos de fecha en la página 55
División de agregaciones: la cláusula by en la página 156
247Guía de referencia del comando de creación de datos y TML
Capítulo 19: Funciones para trabajar con fechas
monthObjetivo: Obtener los meses de una fecha.
Sintaxis month(date)
Argumentos
DescripciónNombreTipo
Una fechadatefecha
Resultado
DescripciónTipo
El mes de dateentero
Ejemplos
Formato de fecha europeo: month (#09/01/2004) igual a 1.
Formato de fecha estadounidense: month (#01/09/2004) igual a 1.
Formato de fecha AMD: month (#2004/01/09) igual a 1.
También consulte
Formatos de fecha en la página 55
División de agregaciones: la cláusula by en la página 156
nowObjetivo: Obtener la fecha y la hora actuales.
Sintaxis now()
Argumentos Ninguno
Resultado
DescripciónTipo
La fecha actual (incluyendo la hora), que se obtienedel reloj del sistema
fecha
Ejemplos
Formato de fecha europeo: now () igual a 09/01/2004:12:28:53.
Portrait Miner 7.1248
month
Formato de fecha estadounidense: now () igual a 01/09/2004:12:28:53.
Formato de fecha AMD: now () igual a 2004/01/09:12:28:53.
También consulte
Formatos de fecha en la página 55
today en la página 249
secondObjetivo: Obtener los segundos de una fecha.
Sintaxis second(time)
Argumentos
DescripciónNombreTipo
Una fecha/horatimefecha
Resultado
DescripciónTipo
Los segundos de timeentero
Ejemplos
Formato de fecha europeo: second (#09/01/2004:12:28:53) igual a 53.
Formato de fecha estadounidense: second (#01/09/2004:12:28:53) igual a 53.
Formato de fecha AMD: second (#2004/01/09:12:28:53) igual a 53.
También consulte
Formatos de fecha en la página 55
División de agregaciones: la cláusula by en la página 156
todayObjetivo: Obtener la fecha actual.
Sintaxis today()
Argumentos Ninguno
Resultado
249Guía de referencia del comando de creación de datos y TML
Capítulo 19: Funciones para trabajar con fechas
DescripciónTipo
La fecha actual que se obtiene del reloj del sistema,con la hora configurada en 00:00:00
fecha
Ejemplos
Formato de fecha europeo: today () igual a 09/01/2004:00:00:00.
Formato de fecha estadounidense: today () igual a 01/09/2004:00:00:00.
Formato de fecha AMD: today () igual a 2004/01/09:00:00:00.
También consulte
Formatos de fecha en la página 55
now en la página 248
weekofyearObjetivo: Calcular la semana del año de una fecha, tomando una fecha de inicio específica.
Sintaxis weekofyear(date, yearStart)
Argumentos
DescripciónNombreTipo
La fecha de la que se quierecalcular la semana del año
datefecha
La fecha de inicio (por ejemplo,de una año financiero)
yearStartfecha
Resultado
DescripciónTipo
La semana del año de date, tomando comoreferencia a yearStart
entero
Solo se utilizan los meses y días de la fecha de inicio.Nota:
Ejemplos
Formato de fecha europeo: weekofyear (#09/07/2004, #01/04/2004) igual a 14.
Formato de fecha estadounidense: weekofyear (#07/09/2004, #04/01/2004) igual a 14.
Formato de fecha AMD: weekofyear (#2004/07/09, #2004/04/01) igual a 14.
También consulte
Portrait Miner 7.1250
weekofyear
Formatos de fecha en la página 55
División de agregaciones: la cláusula by en la página 156
yearObjetivo: Obtener el año de una fecha.
Sintaxis year(date)
Argumentos
DescripciónNombreTipo
Una fechadatefecha
Resultado
DescripciónTipo
El año de dateentero
Ejemplos
Formato de fecha europeo: year (#09/01/2004) igual a 2004.
Formato de fecha estadounidense: year (#01/09/2004) igual a 2004.
Formato de fecha AMD: year (#2004/01/09) igual a 2004.
También consulteFormatos de fecha en la página 55
251Guía de referencia del comando de creación de datos y TML
Capítulo 19: Funciones para trabajar con fechas
Capítulo 20Funciones para trabajar concadenas
En esta sección:
• concat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .254• endswith . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .254• find . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .255• left . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .256• mid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .257• right . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .258• soundex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .259• startswith . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .260• strlen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .261• strmember . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .261• substitute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .262• substr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .263• tolower . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .264• toupper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .265• trim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .265
concatObjetivo: Concatenar dos o más cadenas.
Sintaxis concat( , , ...)
Argumentos
DescripciónNombreTipo
Cadenas para ser concatenadas, , ...cadena
Resultado
DescripciónTipo
Cadena obtenida mediante la escritura de loscaracteres , seguida de los caracteres , etc.
cadena
Ejemplos
Ejemplo Obtiene el nombre completo de un cliente de dos campos FirstName y Surname:
concat(FirstName,"",Surname)
SurnameFirstName
John BrownBrownJohn
David SmithSmithDavid
Obtener el nombre completo de un cliente, pero utilizando solo su inicial:
concat(substr(FirstName,0,0),".",Surname)
SurnameFirstName
J. BrownBrownJohn
D. SmithSmithDavid
endswithObjetivo: Probar si una cadena termina con otra.
Sintaxis endswith(find_text, within_text)
Argumentos
Portrait Miner 7.1254
concat
DescripciónNombreTipo
La cadena al finalfind_textcadena
La cadena que será comprobadawithin_textcadena
Resultado
DescripciónTipo
1 (true) si find_text se encuentra al final dewithin_text; 0 (false) si no
entero
La función endswith se basa en la función match. Añade un carácter $ a find_text antes detratar el resultado como una expresión regular [consulte Expresiones regulares en la página268].
Nota:
Ejemplos
Para derivar un campo que marca direcciones de correo electrónico desde dominios .net:
endswith(".net", EmailAddress)EmailAddress
También consulte
find en la página 255
startswith en la página 260
findObjetivo Probar si una cadena está dentro de otra.
Sintaxis find(find_text, within_text)
Argumentos
DescripciónNombreTipo
La cadena que se debe encontrarfind_textcadena
La cadena que será comprobadawithin_textcadena
Resultado
255Guía de referencia del comando de creación de datos y TML
Capítulo 20: Funciones para trabajar con cadenas
DescripciónTipo
1 (true) si find_text está dentro dewithin_text; 0 (false) si no
entero
La función encontrar se basa en la función match, y trata a find_text como una expresiónregular [consulte Expresiones regulares en la página 268].
Nota:
Ejemplos
Ejemplo Marcar direcciones de correo electrónico que contienen el texto "portraitsoftware" en mayúscula,minúscula o una combinación:
find("portraitsoftware",tolower(EmailAddress))
EmailAddress
También consulte
endswith en la página 254
startswith en la página 260
leftObjetivo: Devolver una subcadena de longitud específica del final de una cadena.
Sintaxis left(text, num_chars)
Argumentos
DescripciónNombreTipo
La cadena de la que se extraetextcadena
El número de caracteresnum_charsentero
Resultado
DescripciónTipo
La subcadena formada por caracteres num_charsal principio de text
cadena
La función izquierda se basa en la función substr.Nota:
Portrait Miner 7.1256
left
Ejemplos
Para utilizar los dos primeros caracteres de un campo StateCode para identificar clientes de la costaEste u Oeste:
member (left(StateCode, 2), "CA","OR", WA")
StateCode
1OR009
1CA043
0UT005
1WA027
También consulte
mid en la página 257
right en la página 258
trim en la página 265
midObjetivo: Devolver una subcadena de longitud específica del medio de una cadena.
Sintaxis mid(text, start_num, num_chars)
Argumentos
DescripciónNombreTipo
La cadena de la que se extraetextcadena
El primer índicestart_numcadena
El número de caracteresnum_charscadena
Resultado
DescripciónTipo
La subcadena formada por los caracteresnum_chars de la posición de caracteres
cadena
start_num (incluido) de texto, donde lasposiciones de los caracteres están numeradas apartir del 1
La función mid está basada en la función substr.Nota:
257Guía de referencia del comando de creación de datos y TML
Capítulo 20: Funciones para trabajar con cadenas
Ejemplos
Para derivar una ubicación desde el quinto hasta el séptimo carácter de un código de almacenamiento:
mid(StoreCode, 5, 3)StoreCode
EDI0114EDI256
LON1863LON836
EDI9326EDI039
BOS0387BOS041
También consulte
left en la página 256
right en la página 258
trim en la página 265
rightObjetivo: Devolver una subcadena de longitud específica del final de una cadena.
Sintaxis right(text, num_chars)
Argumentos
DescripciónNombreTipo
La cadena de la que se extraetextcadena
El número de caracteresnum_charsentero
Resultado
DescripciónTipo
La subcadena formada por caracteres num_charsen el extremo de text
cadena
La función "right" está basada en la función substr.Nota:
Ejemplos
Para devolver el componente casa/calle de un campo de código postal del Reino Unido, es decir, losúltimos tres caracteres:
right(Postcode, 3)Postcodeold_text
0AYNE25 0AY
Portrait Miner 7.1258
right
right(Postcode, 3)Postcodeold_text
7RAEH3 7RA
1QXSL4 1QX
0NJEH9 0NJ
También consulte
left en la página 256
mid en la página 257
trim en la página 265
soundexObjetivo: Reducir las palabras a cadenas de cuatro caracteres para un índice.
Sintaxis soundex(text)
Argumentos
DescripciónNombreTipo
El texto que se debe reducirtextcadena
Resultado
DescripciónTipo
Una codificación de índice reducida a cuatrocaracteres
cadena
Ejemplos
Derivar un código soundex para un apellido:
soundex(Surname)Surname
B650Brown
S530Smythe
S530Smith
B650Bruno
La función Soundex no está definida para caracteres que no sean ascii.Nota:
259Guía de referencia del comando de creación de datos y TML
Capítulo 20: Funciones para trabajar con cadenas
startswithObjetivo: Probar si una cadena comienza con otra.
Sintaxis startswith(find_text, within_text)
Argumentos
DescripciónNombreTipo
La cadena a buscar en el iniciofind_textcadena
La cadena que será comprobadawithin_textcadena
Resultado
DescripciónTipo
1 si find_text se encuentra al inicio dewithin_text; 0 si no
entero
La función startswith se basa en la función match. Añade un carácter ^ adelante de find_textantes de tratar el resultado como una expresión regular [consulte Expresiones regulares enla página 268].
Nota:
Ejemplos
Para obtener el tipo de tarjeta de crédito utilizada en una transacción, como "Discover", "AmEx", "Visa"o "MasterCard", basándose en los números prefijos de las tarjetas:
case
startswith ("6011", CC_Number): "Discover";
startswith ("4", CC_Number): "Visa";
startswith ("5", CC_Number): "MasterCard";
startswith ("34",CC_Number) o startswith ("37", CC_Number): "AmEx";
default: null;
CC_TypeCC_Number
Visa4111-1111-1111-1111
MasterCard5431-1111-1111-1111
AmEx341-1111-1111-1111
Discover6011-6011-6011-6611
También consulte
Portrait Miner 7.1260
startswith
endswith en la página 254
find en la página 255
strlenObjetivo: Obtener la longitud de una cadena.
Sintaxis strlen(string)
Argumentos
DescripciónNombreTipo
La cadena cuyo largo debedeterminarse
stringcadena
Resultado
DescripciónTipo
El número de caracteres en stringentero
Ejemplos
Derivar un campo de cadena de exactamente cuatro caracteres, rellenando un campo de cadena máscorto con ceros adelante:
case
strlen(AccountID) = 1: concat("000", AccountID);
strlen(AccountID) = 2: concat("00", AccountID);
strlen(AccountID) = 3: concat("0", AccountID);
default: AccountID;
AccountAccountID
00011
002222
0333333
44444444
strmemberObjetivo: Determinar la pertenencia a un conjunto.
261Guía de referencia del comando de creación de datos y TML
Capítulo 20: Funciones para trabajar con cadenas
Sintaxis strmember(x, , , ...)
Argumentos
DescripciónNombreTipo
El valor que será comprobadoxcadena
Los elementos del conjunto, , ...como x
Resultado
DescripciónTipo
1 (true) if x está en el conjunto ; de locontrario 0 (false)
entero
Nota: • Solo puede usar los valores literales de una cadena para la lista de los elementos del conjunto.• Los espacios en blanco al final de los valores no son ignorados.• Se prefiere la función más general miembro a esta función.
También consulteDivisión de agregaciones: la cláusula by en la página 156
substituteObjetivo: Reemplazar una cadena por otra.
Sintaxis substitute(text, old_text, new_text)
Argumentos
DescripciónNombreTipo
La cadena que se debe buscartextcadena
La cadena que será reemplazadaold_textcadena
La cadena de reemplazonew_textcadena
Resultado
DescripciónTipo
Una copia de la cadena text con new_text quereemplaza cada instancia no superpuesta deold_text
cadena
La función "substitute" está basada en la función replaceall y trata al old_text como a unaexpresión regular [consulte Expresiones regulares en la página 268].
Nota:
Portrait Miner 7.1262
substitute
Ejemplos
Eliminar espacio en blanco de campo llamado PostalCode:
substitute(PostalCode, "[[:blank:]]","")
PostalCode
ND069ND 069
IN099IN 099
UT005UT 0 0 5
OR009O R 009
También consultereplacefirst en la página 274
substrObjetivo: Obtener una subcadena de una cadena.
Sintaxis substr(string, start, end)
Argumentos
DescripciónNombreTipo
La cadena de iniciostringcadena
El primer índicestartentero
El segundo índiceendentero
Resultado
DescripciónTipo
La subcadena formada por caracteres desdestart hasta end (inclusive) de string, donde
cadena
los caracteres están numerados comenzando con0. Los valores de índice positivos van desde elinicio de una cadena y los valores de índicenegativos van desde el final de la cadena.
Ejemplos
Para seleccionar los primeros dos y los últimos tres caracteres de un campo PostalCode para obtenerel código del estado:
263Guía de referencia del comando de creación de datos y TML
Capítulo 20: Funciones para trabajar con cadenas
substr(PostalCode, -3,-1)
substr(PostalCode, 0, 1)PostalCode
015MAMA015
055WAWA055
005UTUT005
119MNMN119
Para obtener el tipo de tarjeta de crédito utilizada en una transacción, como "Discover", "AmEx", "Visa"o "MasterCard", basándose en los números prefijos de las tarjetas:
case
substr(CC_Number, 0, 3) = "6011": "Discover";
substr(CC_Number, 0, 0) = "4": "Visa";
substr(CC_Number, 0, 0) = "5": "MasterCard";
substr(CC_Number, 0, 1) = "34" o substr(CC_Number, 0, 1) = "37": "AmEx";
default: null;
CC_TypeCC_Number
Visa4111-1111-1111-1111
MasterCard5431-1111-1111-1111
AmEx341-1111-1111-1111
Discover6011-6011-6011-6611
tolowerObjetivo: Convertir una cadena a minúscula.
Sintaxis tolower(string)
Argumentos
DescripciónNombreTipo
Una cadena que debe convertirsestringcadena
Resultado
Portrait Miner 7.1264
tolower
DescripciónTipo
La cadena obtenida de string reemplazandotodas las letras mayúsculas en string por lasletras minúsculas correspondientes
cadena
Ejemplos tolower("ZYXWV") es igual a "zyxwv"
También consultetoupper en la página 265
toupperObjetivo: Convertir una cadena a mayúscula.
Sintaxis toupper(string)
Argumentos
DescripciónNombreTipo
Una cadena que debe convertirsestringcadena
Resultado
DescripciónTipo
La cadena obtenida de string reemplazandotodas las letras minúsculas en string por lasletras mayúsculas correspondientes
cadena
Ejemplos toupper ("abcde") es igual a "ABCDE"
También consultetolower en la página 264
trimObjetivo: Eliminar todos los espacios de una cadena de texto, excepto los espacios individuales entrelas palabras.
Sintaxis trim(text)
Argumentos
265Guía de referencia del comando de creación de datos y TML
Capítulo 20: Funciones para trabajar con cadenas
DescripciónNombreTipo
La cadena que será comparadatextcadena
Resultado
DescripciónTipo
La cadena formada por text eliminar todos losespacios excepto los espacios únicos entrepalabras
cadena
La función "trim" está basada en la función replaceall.Nota:
Ejemplos
Para derivar un campo que reemplaza múltiples caracteres de espacio en blanco por un único espacio:
trim(CommentField)CommentField
Artículos defectuosos devueltosArtículos defectuosos devueltos
Ausencia a una citaAusencia a una cita
Ingeniero que visita: LunesIngeniero que visita: Lunes
ResueltoResuelto
Portrait Miner 7.1266
trim
Capítulo 21Expresiones regulares y susfunciones asociadas
En esta sección:
• Expresiones regulares . . . . . . . . . . . . . . . . . . . . . . . . . . .268• Componentes básicos de una expresión regular . . . . .268• Operadores de las expresiones regulares . . . . . . . . . . .270• match . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .272• replaceall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .273• replacefirst . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .274
Expresiones regularesLas expresiones regulares se utilizan para hacer coincidir patrones en las cadenas [consulte la secciónTipos de datos en la página 184]. Una expresión regular es una cadena con formato especial querepresenta un patrón de caracteres. Por ejemplo, la expresión regular "ar{1,2}y\?$" representa "la letra'a,' seguida por una o dos 'r', posiblemente seguidas por 'y,' seguidas por el final de la secuencia." (Esepatrón ocurre en una secuencia como "Harry" y "amar" — pero no en "hay" o "amaras.")
Una expresión regular consiste en componentes básicos [consulte la sección Componentes básicosde una expresión regular en la página 268] combinados usando operadores [consulte la secciónOperadores de las expresiones regulares en la página 270].
Si una expresión regular (distinta de una subexpresión) coincide con más de una parte de una cadena,siempre coincidirá con la parte más larga y más a la izquierda. Por ejemplo, la expresión regular "a[^ad]\+"(que representa "la letra 'a', seguida por una o más letras salvo la 'a' o la 'd'") coincide con "adaptationally."La parte que coincide no es "acion," ya que hay otras partes más a la izquierda. Tampoco lo es "ap"porque, aunque no haya más partes a la izquierda, hay una parte más larga que comienza en el mismocarácter.
• Para buscar una coincidencia de una expresión regular en una cadena, use la función match.• Para reemplazar una coincidencia en una cadena con otra cadena, use las funciones replacefirst o
replaceall.
Nota: • Las expresiones regulares son típicamente (pero no necesariamente) literales, en ese caso,deben figurar entre comillas, por ejemplo, "ar{1,2}y\?$".
• Miner/FDL usa una expresión regular proporcionada por la biblioteca ICU. (Podemos vincularnoscon http://userguide.icu-project.org/strings/regexp)
• Las Expresiones regulares de ICU rigen conforme a la Norma técnica Unicode n.° 18, lasExpresiones regulares Unicode, nivel 1 y además incluye límites de Palabras predeterminadasy Propiedades de nombre del nivel 2.
Componentes básicos de una expresión regularLos componentes básicos de una expresión regular [consulte la sección Expresiones regulares en lapágina 268] son átomos, delimitadores y referencias inversas.
ÁtomosUn átomo coincide con uno de un conjunto de caracteres especificados:
Carácter con el que coincideÁtomo
Cualquier carácter. (cualquier coincidencia)
Cualquiera de los caracteres especificados[...] (lista de coincidencias)
Portrait Miner 7.1268
Expresiones regulares
Carácter con el que coincideÁtomo
Cualquier de los caracteres no especificados[^...] (lista sin coincidencias)
El carácterUn carácter diferente de ., ^, $, \, [, ] o*, que ocurre fuera de una lista de coincidenciaso de una lista sin coincidencias
El carácter., ^, $, \, [, ], o *, que ocurre fuera deuna lista de coincidencias o de una lista sincoincidencias y precedido por una barra invertida(\)
Una lista de coincidencias o una lista sin coincidencias pueden incluir caracteres simples, rango decaracteres y clases de caracteres. No puedes utilizar los rangos o las clases de caracteres fuera de unalista de coincidencias o una lista sin coincidencias.
Un rango de caracteres es un par de caracteres separados por un guión, equivalente a una lista detodos los caracteres en ese rango (dentro del conjunto de caracteres). Por ejemplo, "a-e" es equivalentea "abcde" en una lista de coincidencias.
Una clase de caracteres es uno de los siguientes tokens definidos previamente (donde los corchetesde cierre son adicionales a los que cierran la lista de coincidencias y la lista sin coincidencias):
CoincidenciasToken
Un carácter alfanumérico, que puede ser uncarácter alfabético o un dígito decimal
[:alnum:]
Un carácter alfabético, es decir, "A" — "Z" y "a" —"z"
[:alpha:]
Una ficha o un carácter de espacio[:blank:]
Un carácter de control[:cntrl:]
Un dígito decimal, es decir, "0" — "9"[:digit:]
Un carácter imprimible a parte del espacio[:graph:]
Una letra en minúscula[:lower:]
Un carácter o espacio imprimible[:print:]
Un carácter de puntuación[:punct:]
Un carácter de espacio en blanco[:space:]
Un carácter en mayúscula[:upper:]
Un dígito hexadecimal, es decir, "0" — "9," "A" —"F" y "a" — "f"
[:xdigit:]
Nota: • Puede incluir una mezcla de caracteres simples, rangos y clases de caracteres en una listade coincidencias única o en una lista sin coincidencias. Por ejemplo, la lista de coincidencias
269Guía de referencia del comando de creación de datos y TML
Capítulo 21: Expresiones regulares y sus funciones asociadas
"[a-ex[:digit:]]" coincide con las letras en minúscula "a" — "e" y "x" y con los dígitosdecimales ("0" — "9").
• Un guión en una lista de coincidencias o una lista sin coincidencias tiene significado propiocuando está (a) al final de un rango, (b) al principio de una lista de coincidencias o una listasin coincidencias (en este caso también puede estar al principio de un rango), o (c) al final deuna lista de coincidencias o una lista sin coincidencias.
DelimitadoresLos caracteres ^ y $ son delimitadores; coinciden con el principio y el final de una cadenarespectivamente.
Por ejemplo, para hacer coincidir "The" al principio de una cadena y en ningún otro lugar, se puede usarla expresión regular "^The."
Referencias inversasUna referencia inversa es una barra invertida seguida por un solo dígito n (aparte de 0). Coincide conlos mismos caracteres que la subexpresión nth encerrada en \(...\).
Por ejemplo, para hacer coincidir "yoyo," "dodo," etc. — pero no "dojo" — se puede utilizar la expresiónregular "\(.o\)\1."
Nota: • La subexpresión con referencia inversa nth es siempre la subexpresión que comienza conuna barra invertida/paréntesis de apertura (aun cuando las subexpresiones están anidadas).
• La subexpresión vacía "\(\)" se puede utilizar en expresiones regulares que implicanalternancia [consulte la sección El operador de alternancia en la página 271]. Por ejemplo,
\(pan\(\)\|pérdida\(\)\)-y-\(agua\2\|ganancia\3\)
coincide con "pan-y-agua" y "pérdida-y-ganancia," pero no con "pan-y-ganancia" o"pérdida-y-agua."
Operadores de las expresiones regularesUn operador trabaja en una o dos expresiones regulares [consulte la sección Expresiones regularesen la página 268] para crear una nueva expresión regular. Los operadores, de mayor a menor prioridad,son los operadores de repetición [consulte la sección Operadores de repetición en la página 270], eloperador de concatenación [consulte la sección El operador de concatenación en la página 271], y eloperador de alternancia [consulte la sección El operador de alternancia en la página 271].
Si hay igualdad de prioridad, las operaciones se realizan de izquierda a derecha.
Las subexpresiones encerradas en \(...\) siempre se evalúan primero.
Operadores de repeticiónLos operadores de repetición son unarios y están escritos siguiendo un solo operando.
Portrait Miner 7.1270
Referencias inversas
DescripciónOperator (Operador)
Si una expresión regular a coincide con una o máspartes adyacentes de una cadena, la expresión
* (cero o más)
regular a* coincide con la concatenación de esaspartes. También coincide con una subcadenavacía.
Si una expresión regular a coincide con una o máspartes adyacentes de una cadena, la expresión
\+ (uno o más)
regular a\+ coincide con la concatenación de esaspartes.
Si una expresión regular coincide al menos con my con no más de n partes adyacentes de una
{m,n} (0 m n)
secuencia, la expresión regular a{m,n} coincidecon la concatenación de esas partes. Si m=0,también coincide con una subcadena vacía.
Equivalente a a{0,1}, la expresión regular a\?coincide con cualquier subsecuencia vacía, o
\? (opcional)
cualquier parte de una secuencia que coincide conla expresión regular a.
Las "partes adyacentes" mencionadas en las definiciones de *, \+, y {...} no son secuenciasidénticas necesariamente. Si necesita hacer coincidir repeticiones exactas, use las referenciasinversas [consulte la sección Referencias inversas en la página 270].
Nota:
El operador de concatenaciónEl operador de concatenación no está realmente escrito, pero está implícito cuando escribe dosexpresiones regulares una al lado de la otra.
Si las expresiones regulares a y b coinciden con las partes adyacentes x e y de una cadena z (con xantes de y), la concatenación de a y b (a seguida por b) coincide con la parte z que contiene x e y.
Cualquier secuencia de caracteres no especiales, es decir, caracteres sin significado especialen una expresión regular, funciona como una expresión regular que coincide con esa secuencia,debido al operador de concatenación implícito.
Nota:
En la práctica, la mayoría de las expresiones regulares están formadas por cadenas de caracteressimples, intercaladas por algunos caracteres especiales. Por ejemplo, la expresión regular"[SsTt]imple" coincide con las cadenas "Simple," "simple," "Timple," y "timple."
El operador de alternanciaEl operador de alternancia "\|" es un operador binario, escrito entre sus operandos.
Si cualquiera de las expresiones regulares a y b coinciden con una parte de una cadena, la alternanciaa\|b también coincidirá con esa porción.
271Guía de referencia del comando de creación de datos y TML
Capítulo 21: Expresiones regulares y sus funciones asociadas
matchObjetivo: probar una cadena para encontrar una coincidencia de expresión regular [consulte Expresionesregulares en la página 268].
Sintaxis match(regexp, string)
Argumentos
DescripciónNombreTipo
La expresión regularregexpcadena
La cadena que será comprobadastringcadena
Resultado
DescripciónTipo
1 (true) si regexp coincide con string; 0 (false)si es al revés
entero
Ejemplos
Para marcar los clientes con los dos primeros caracteres del código postal de su casa y la sucursal desu banco iguales (función substr):
match(substr(HomePostcode,0, 1),substr(BranchPostcode,0,1))
Código postal de la sucursalCódigo postal de la casa
1NE30 1QXNE25 0AY
0NG18 1HTSW3
1CF31 1HYCF36
0E10 8AJEH9 0NJ
Para buscar en el campo Nombre de la compañía los primeros tres caracteres del campo Nombre,seguidos por cualquier texto y después el contenido del campo Apellido (ignorando las mayúsculas):
rx := concat(substr(toupper(FirstName),0,2),"[[:print:]]*", toupper(FamilyName);match(rx,toupper(CompanyName))
CompanyNameFamilyNameFirstName
11234 Pat Smith LtdSmithPatrick
11234 Pat J Smith LtdSmithPatrick
Portrait Miner 7.1272
match
Para hacer lo mismo, pero con solo algunas letras o dígitos y un solo espacio entre el nombre y elapellido:
rx := concat(substr(toupper(FirstName),0,2),"[[:alnum:]]* ", toupper(FamilyName);match(rx,toupper(CompanyName))
CompanyNameFamilyNameFirstName
11234 Pat Smith LtdSmithPatrick
01234 Pat J Smith LtdSmithPatrick
También consulte
replaceall en la página 273
replacefirst en la página 274
División de agregaciones: la cláusula by en la página 156
replaceallObjetivo: reemplazar todas las subcadenas que coinciden con una expresión regular [consulteExpresiones regulares en la página 268].
Sintaxis replaceall(regexp, replacement, string)
Argumentos
DescripciónNombreTipo
La expresión regularregexpcadena
La cadena de reemplazoreplacementcadena
La cadena que se debe buscarstringcadena
Resultado
DescripciónTipo
Una copia de la cadena string conreplacement reemplazando cada parte nosuperpuesta que coincida con regexp
cadena
La primera parte con coincidencia de la cadena que se debe buscar es la parte más larga y mása la izquierda que coincide con la expresión regular. La próxima búsqueda será en el resto dela cadena que se debe buscar, y así sucesivamente. Por ejemplo,
Nota:
replaceall("i..", "X", "initiation")
produce la cadena "XtXX" (en vez de, por ejemplo, "inXatX"). And
273Guía de referencia del comando de creación de datos y TML
Capítulo 21: Expresiones regulares y sus funciones asociadas
replaceall("i.*i", "X", "initiation")
resulta en "Xon" (en vez de, por ejemplo, "XtXon").
Ejemplos
Para detectar y quitar los espacios en blanco del campo PostalCode utilizando una coincidencia deexpresión regular:
replaceall("[[:blank:]]","",PostalCode))PostalCode
ND069ND 069
IN099IN 099
UT005UT 0 0 5
OR009O R 009
También consulte
match en la página 272
replacefirst en la página 274
replacefirstObjetivo: reemplazar la primer subcadena que coincide con una expresión regular [consulte Expresionesregulares en la página 268].
Sintaxis replacefirst(regexp, replacement, string)
Argumentos
DescripciónNombreTipo
La expresión regularregexpcadena
La cadena de reemplazoreplacementcadena
La cadena que se debe buscarstringcadena
Resultado
DescripciónTipo
Una copia de la cadena string conreplacement reemplazando la primera parte quecoincide con regexp (si hubiera)
cadena
Ejemplos
Portrait Miner 7.1274
replacefirst
Para extraer el nombre de un cliente de un campo de dirección de correo electrónico en el formato"[email protected]", quitando toda la información desde el "@" en adelante yreemplazando "." por un espacio:
replacefirst("@.*", "", (replacefirst("\.", " ", Email)))
John [email protected]
Angela [email protected]
También consulte
match en la página 272
replaceall en la página 273
275Guía de referencia del comando de creación de datos y TML
Capítulo 21: Expresiones regulares y sus funciones asociadas
Capítulo 22Funciones matemáticas yestadísticas
En esta sección:
• abs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .278• ceil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .278• cos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .279• exp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .279• floor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .280• log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .280• log10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .281• logbase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .281• max (dos o más argumentos), maxnonnull . . . . . . . . . .282• mean (dos o más argumentos), meannonnull . . . . . . . .283• min (dos o más argumentos), minnonnull . . . . . . . . . . .283• normalize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .284• pow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .285• product, productnonnull . . . . . . . . . . . . . . . . . . . . . . . . .285• round . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .286• sgn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .287• sin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .287• sqrt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .288• sum (dos o más argumentos), sumnonnull . . . . . . . . . .288• tan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .289
absObjetivo: Calcular el valor absoluto de un número.
Sintaxis abs(x)
Argumentos
DescripciónNombreTipo
Un número con signoxnumérico
Resultado
DescripciónTipo
, el valor absoluto, o la magnitud, de xcomo entrada
Ejemplos
abs (-10000) igual a 10000.
abs (-25000) igual a 25000.
Para calcular el error absoluto entre un valor previsto y un valor histórico: abs(Value -PredictedValue)
También consultesgn en la página 287
ceilObjetivo: Redondear un número para arriba al entero más cercano.
Sintaxis ceil(x)
Argumentos
DescripciónNombreTipo
El número que debe redondearsexnumérico
Resultado
DescripciónTipo
, el entero, de forma tal queentero
Ejemplos
Portrait Miner 7.1278
abs
ceil(-1.25) es igual a -2.
ceil(-1.25) es igual a -1.
Generar un entero aleatorio entre 1 y 10 incluido: ceil(rndUniform()*10)
También consulte
floor en la página 280
round en la página 286
cosObjetivo: Calcular el coseno de un ángulo.
Sintaxis cos(x)
Argumentos
DescripciónNombreTipo
Un ángulo en radianesxnumérico
Resultado
DescripciónTipo
cos x, el coseno de xreal
Ejemplos cos(0) es igual a 1.
expObjetivo: Calcular el exponencial de un número.
Sintaxis exp(x)
Argumentos
DescripciónNombreTipo
El número cuyo exponencial debecomputarse
xnumérico
Resultado
279Guía de referencia del comando de creación de datos y TML
Capítulo 22: Funciones matemáticas y estadísticas
DescripciónTipo
, el exponencial de xreal
Ejemplos exp (0) es igual a 1.
floorObjetivo: Redondear un número para abajo al entero más cercano.
Sintaxis floor(x)
Argumentos
DescripciónNombreTipo
El número que debe redondearsexnumérico
Resultado
DescripciónTipo
, el entero, de forma tal queentero
Ejemplos
floor(-1.25) es igual a -1.
floor(-1.25) es igual a -2.
Generar un entero aleatorio entre 0 y 9 incluido: floor(rndUniform()*10)
También consulte
ceil en la página 278
round en la página 286
logObjetivo: Calcular el logaritmo natural (base e) de un número.
Sintaxis log(x)
Argumentos
DescripciónNombreTipo
Un número positivoxnumérico
Portrait Miner 7.1280
floor
Resultado
DescripciónTipo
, el logaritmo natural de xreal
Ejemplos log(1) es igual a 0.
log10Objetivo: Calcular el logaritmo base 10 de un número.
Sintaxis log10(x)
Argumentos
DescripciónNombreTipo
Un número positivoxnumérico
Resultado
DescripciónTipo
, el logaritmo base-10 de xreal
Ejemplos log10(100) es igual a 2.
logbaseObjetivo: Calcular el logaritmo de un número, en una base específica.
Sintaxis logbase(x, base)
Argumentos
DescripciónNombreTipo
El número positivo cuyo logaritmodebe computarse
xnumérico
La base que debe usarsebasenumérico
Resultado
281Guía de referencia del comando de creación de datos y TML
Capítulo 22: Funciones matemáticas y estadísticas
DescripciónTipo
, el logaritmo base-basede xreal
Ejemplos logbase100,10 es igual a 2.
max (dos o más argumentos), maxnonnullObjetivo: Calcular el más alto de dos o más números, o la más reciente de dos o más fechas, o laúltima en el alfabeto de dos o más cadenas. La variante max devuelve el valor nulo si alguno de susargumentos es nulo, la variante maxnonnull ignora los argumentos nulos (pero aún así devuelve el valornulo si todos sus argumentos son nulos).
Sintaxis max( , , ...)
maxnonnull ( , , ...)
Argumentos
DescripciónNombreTipo
Los valores que debencompararse
, , ...entero, real, fecha, o cadena(todos del mismo tipo)
Resultado
DescripciónTipo
El máximo de , , ...como entrada
Nota: • No se debe confundir esta función max multi-argument con la función aggregation [consultemax (un argumento) en la página 171] del mismo nombre.
• En el caso de las cadenas, "último en orden alfabético" significa "último en la representacióndel carácter subyacente".
Ejemplos
max (5.5, -3, 7, -8.5) es igual a 7.
max(5.5, -3, nulo, -8.5) es igual a nulo.
maxnonnull (5.5, -3, 7, -8.5) es igual a 7.
maxnonnull (5.5, -3, nulo, -8.5) es igual a 5.5.
Para determinar la mejor acción siguiente para un cliente de acuerdo con distintas medidas de ROI:
maxvalue := max (ROI1, ROI2, ROI3);
case
maxvalue = ROI1: "Producto1";
Portrait Miner 7.1282
max (dos o más argumentos), maxnonnull
maxvalue = ROI2: "Producto2";
maxvalue = ROI3: "Producto3";
mean (dos o más argumentos), meannonnullObjetivo: Calcular la media (el promedio) de dos o más números. La variante media devuelve el valornulo si alguno de sus argumentos es nulo, la variante meannonnull ignora los argumentos nulos (peroaún así devuelve el valor nulo si todos sus argumentos son nulos).
Sintaxis mean( , , ...)
meannonnull ( , , ...)
Argumentos
DescripciónNombreTipo
Los números que se debenpromediar
, , ...numérico
Resultado
DescripciónTipo
El promedio de , , ...real
No se debe confundir esta función mean multi-argument con la función deaggregation [consultemean (un argumento) en la página 172] del mismo nombre.
Nota:
Ejemplos
mean (5.5, -3, 7, -8.5) es igual a 0.25.
mean (5.5, -3, nulo, -8.5) es igual a nulo.
meannonnull (5.5, -3, 7, -8.5) es igual a 0.25.
meannonnull (5.5, -3, nulo, -8.5) es igual a -2.
Para calcular el gasto promedio anual de cuatro campos de gasto de trimestres separados:
mean(SpendQtr1, SpendQtr2, SpendQtr3, SpendQtr4)
min (dos o más argumentos), minnonnullObjetivo: Calcular el más bajo de dos o más números, o la más lejana de dos o más fechas, o la primeraen el alfabeto de dos o más cadenas. La variante min devuelve el valor nulo si alguno de sus argumentos
283Guía de referencia del comando de creación de datos y TML
Capítulo 22: Funciones matemáticas y estadísticas
es nulo, la variante minnonnull ignora los argumentos nulos (pero aún así devuelve el valor nulo sitodos sus argumentos son nulos).
Sintaxis
min ( , , ...)
minnonnull ( , , ...)
Argumentos
DescripciónNombreTipo
Los valores que debencompararse
, , ...entero, real, fecha, o cadena(todos del mismo tipo)
Resultado
DescripciónTipo
El mínimo de , , ...como entrada
Nota: • No se debe confundir esta función min multi-argument con la función aggregation [consultemin (un argumento) en la página 173] del mismo nombre.
• En el caso de las cadenas, "primera en orden alfabético" significa "primera en la representacióndel carácter subyacente".
Ejemplos
min (5.5, -3, 7, -8.5) es igual a -8.5.
min (5.5, -3, nulo, -8.5) es igual a nulo.
minnonnull (5.5, -3, 7, -8.5) es igual a -8.5.
minnonnull (5.5, -3, nulo, -8.5) es igual a -8.5.
normalizeObjetivo: normalizar los campos de valores para ubicarlos en el intervalo [0,1].
Sintaxis normalize(x)
Argumentos
DescripciónNombreTipo
El número que debe normalizarsexnumérico
Resultado
Portrait Miner 7.1284
normalize
DescripciónTipo
Valor entre 0 y 1 dado porreal
Sólo puede utilizar esta función en una derivación de Decision Studio, en el archivo dederivaciones de qsderive o en la ventana Derivar campos equivalente en el archivo de rastreoqstrack o en un archivo de selecciones de qsselect.
Nota:
powObjetivo: Calcular el resultado de elevar un número a la potencia de otro número.
Sintaxis pow(x, exponent)
Argumentos
DescripciónNombreTipo
El número que debe elevarse auna potencia
xnumérico
El exponenteexponentnumérico
Resultado
DescripciónTipo
, x elevado a la potencia exponentreal
Ejemplos pow(10, 2) es igual a 100.
product, productnonnullObjetivo: Calcular el producto de dos o más números. La variante product devuelve el valor nulo sialguno de sus argumentos es nulo, la variante productnonnull ignora los argumentos nulos (peroaún así devuelve el valor nulo si todos sus argumentos son nulos).
Sintaxis product( , , ...)
productnonnull( , , ...)>
Argumentos
285Guía de referencia del comando de creación de datos y TML
Capítulo 22: Funciones matemáticas y estadísticas
DescripciónNombreTipo
Los números que debenmultiplicarse
, , ...numérico
Resultado
DescripciónTipo
El producto de , , ...como entrada
Ejemplos
productnonnull (5.5, -3, 7, -8.5) es igual a 981.75.
product (5.5, -3, nulo, -8.5) es igual a nulo.
productnonnull (5.5, -3, 7, -8.5) es igual a 981.75.
productnonnull (5.5, -3, nulo, -8.5) es igual a 140.25.
roundObjetivo: Redondear un número al entero más cercano.
Sintaxis round(x)
Argumentos
DescripciónNombreTipo
El número que debe redondearsexnumérico
Resultado
DescripciónTipo
el entero más cercano a x, o, en el caso de unempate, el mayor de los dos enteros más cercanos(en valores absolutos)
entero
Ejemplos
round (1.25) es igual a 1.
round (-1.25) es igual a -1.
round (1.5) es igual a 2.
round (-1.5) es igual a -2.
También consulte
Portrait Miner 7.1286
round
ceil en la página 278
floor en la página 280
sgnObjetivo: Calcular el signum (signo) de un número.
Sintaxis sgn(x)
Argumentos
DescripciónNombreTipo
Un número con signoxnumérico
Resultado
DescripciónTipo
Un número representando el signo de x:como entrada
Ejemplos
sgn(-25) igual a -1.
sgn(-25) igual a -1.
También consulte
abs en la página 278
División de agregaciones: la cláusula by en la página 156
sinObjetivo: Calcular el seno de un ángulo.
Sintaxis sin(x)
Argumentos
DescripciónNombreTipo
Un ángulo en radianesxnumérico
Resultado
287Guía de referencia del comando de creación de datos y TML
Capítulo 22: Funciones matemáticas y estadísticas
DescripciónTipo
sin x, el seno de xreal
Ejemplos sin(3.14159/2) es igual a 1.
sqrtObjetivo: Calcular la raíz cuadrada de un número.
Sintaxis sqrt(x)
Argumentos
DescripciónNombreTipo
Un número no negativoxnumérico
Resultado
DescripciónTipo
, calcula la raíz cuadrada de xreal
Ejemplos
sqrt(25) es igual a 5.
sqrt(-25) es igual a nulo.
sum (dos o más argumentos), sumnonnullObjetivo: Calcular la suma de dos o más números. La variante sum regresa el valor nulo si cualquierade sus argumentos es nulo; la variante sumnonnull ignora los argumentos nulos (pero aún regresa elvalor nulo si todos sus argumentos son nulos).
Sintaxis sum( , , ...)
sumnonnull( , , ...)
Argumentos
DescripciónNombreTipo
Los números que se agregarán, , ...numérico
Resultado
Portrait Miner 7.1288
sqrt
DescripciónTipo
La suma de , , ...como entrada
Tenga cuidado de no confundir esta función de sumamulti-argument con la función de aggregation[consulte la sección sum (un argumento) en la página 179] del mismo nombre.
Nota:
Ejemplos
sum (5.5, -3, 7, -8.5) es igual a 1.
sum (5.5, -3, null, -8.5) es igual a null.
sumnonnull(5.5, -3, 7, -8.5) es igual a 1.
sumnonnull(5.5, -3, null, -8.5) es igual a -6.
Para derivar el gasto total de seis campos de datos semanales:
sum(SpendWk1, SpendWk2, SpendWk3, SpendWk4, SpendWk5, SpendWk6)
tanObjetivo: Calcular la tangente de un ángulo.
Sintaxis tan(x)
Argumentos
DescripciónNombreTipo
Un ángulo en radianesxnumérico
Resultado
DescripciónTipo
tan x, la tangente de xreal
Six se expresa como for some entero n, tan x es indefinida. En ese caso, la funciónFDL devuelve nulo.
Nota:
Ejemplos tan(3.14159/4) es igual a 1.
289Guía de referencia del comando de creación de datos y TML
Capítulo 22: Funciones matemáticas y estadísticas
Capítulo 23Funciones de muestreo dedatos
En esta sección:
• numericTestTrainSplit . . . . . . . . . . . . . . . . . . . . . . . . . . .292• numericTestTrainValidateSplit . . . . . . . . . . . . . . . . . . . . .292• sampleEqualSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .293• sampleExactNumber . . . . . . . . . . . . . . . . . . . . . . . . . . . .294• sampleExactPercentage . . . . . . . . . . . . . . . . . . . . . . . . . .295• sampleStratified . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .296• testTrainSplit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .297• testTrainValidateSplit . . . . . . . . . . . . . . . . . . . . . . . . . . . .297
numericTestTrainSplitObjetivo: Crear una segmentación de prueba y capacitación para usar en una validación de modelo.
Sintaxis numericTestTrainSplit(testFraction)
Argumentos
DescripciónNombreTipo
La fracción de los datos que seutilizará como el conjunto deprueba
testFractionreal
Resultado
DescripciónTipo
Valores 0 para el conjunto de capacitación o 1 parael conjunto de prueba
entero
Ejemplos
Para derivar un campo que asigna el valor 0 a aproximadamente 70% de los registros (elegidos enforma aleatoria) y el valor 1 a los restantes: numericTestTrainSplit(0.3)
También consulte
numericTestTrainValidateSplit en la página 292
sampleEqualSize en la página 293
testTrainSplit en la página 297
testTrainValidateSplit en la página 297
numericTestTrainValidateSplitObjetivo: Crear una segmentación de prueba, capacitación y validación para usar en una validaciónde modelo.
Sintaxis numericTestTrainValidateSplit(testFraction, validateFraction)
Argumentos
Portrait Miner 7.1292
numericTestTrainSplit
DescripciónNombreTipo
La fracción de los datos que seutilizará como el conjunto deprueba
testFractionreal
La fracción de los datos que seutilizará como el conjuntorepresentativo
validateFractionreal
Resultado
DescripciónTipo
Los valores 0 para el conjunto de capacitación, 1para el conjunto de prueba o 2 para el conjunto devalidación
entero
Ejemplos
Para derivar un campo que asigna el valor 0 a aproximadamente el 50% de los registros (seleccionadosaleatoriamente), el valor 1 a aproximadamente el 30% de los registros (nuevamente seleccionadosaleatoriamente) y el valor 2 al resto: numericTestTrainValidateSplit(0.3, 0.2)
También consulte
numericTestTrainSplit en la página 292
sampleEqualSize en la página 293
testTrainSplit en la página 297
testTrainValidateSplit en la página 297
sampleEqualSizeObjetivo: Crear un índice de segmentación que asigne aleatoriamente registros a segmentos de tamañoaproximadamente igual.
Sintaxis sampleEqualSize(NumberOfSegments)
Argumentos
DescripciónNombreTipo
El número de segmentos paracrear
NumberOfSegmentsentero
Resultado
293Guía de referencia del comando de creación de datos y TML
Capítulo 23: Funciones de muestreo de datos
DescripciónTipo
Un número entre 1 y NumberOfSegments(inclusive)
entero
Ejemplos
Para derivar un campo que enumera cinco poblaciones de igual tamaño (aproximadamente):sampleEqualSize(5)
También consulte
numericTestTrainSplit en la página 292
numericTestTrainValidateSplit en la página 292
testTrainSplit en la página 297
testTrainValidateSplit en la página 297
sampleExactNumberObjetivo: Crear una muestra aleatoria de un tamaño exacto, especificada como un número de registros.
Sintaxis sampleExactNumber(NumberToSelect)
Argumentos
DescripciónNombreTipo
El tamaño de la muestra paracrear, como un número deregistros
NumberToSelectentero
Resultado
DescripciónTipo
1 si se selecciona un registro para la muestra; delo contrario 0
entero
Nota: • Los registros que no están actualmente seleccionados en el enfoque reciben el valor nulo.• Sólo puede utilizar esta función en una derivación de Decision Studio, en el archivo de
derivaciones para qsderive o la ventana Derivar campos equivalente, en el archivo derastreos para qstrack o en un archivo de selecciones para qsselect.
Ejemplos
Para seleccionar 1250 registros para una muestra. sampleExactNumber(1250)
También consulte
Portrait Miner 7.1294
sampleExactNumber
sampleExactPercentage en la página 295
sampleStratified en la página 296
sampleExactPercentageObjetivo: Crear una muestra aleatoria de un tamaño exacto, especificada como un porcentaje deltamaño de la población seleccionada actualmente.
Sintaxis sampleExactPercentage(PercentageToSelect)
Argumentos
DescripciónNombreTipo
El tamaño de la muestra paracrear, como un porcentaje deltamaño de la población actual
PercentageToSelectentero
Resultado
DescripciónTipo
1 si se selecciona un registro para la muestra; delo contrario 0
entero
Nota: • Los registros que no están actualmente seleccionados en el enfoque reciben el valor nulo.• Si PercentageToSelectmultiplicado por el tamaño de la población no es un número entero,
el número seleccionado será el número entero más cercano arriba o abajo dePercentageToSelectmultiplicado por el tamaño de la población y proporcionará en promedioel porcentaje especificado.
• Sólo puede utilizar esta función en una derivación de Decision Studio, en el archivo dederivaciones para qsderive o la ventana Derivar campos equivalente, en el archivo derastreos para qstrack o en un archivo de selecciones para qsselect.
Ejemplos Para seleccionar el 25% de la población para la muestra:
sampleExactPercentage(25)
También consulte
sampleExactNumber en la página 294
sampleStratified en la página 296
295Guía de referencia del comando de creación de datos y TML
Capítulo 23: Funciones de muestreo de datos
sampleStratifiedObjetivo: Crear una muestra aleatoria que incluye un número exacto de registros de un segmentoespecífico, junto con un número exacto de registros del resto de la población seleccionada actualmente.
Sintaxis sampleStratified(NumberFromSegmentToSelect, SegmentTotalSize,NumberOutsideSegmentToSelect, OutsideSegmentTotalSize, InSegmentExpression)
Argumentos
DescripciónNombreTipo
El número de registros en lamuestra que se seleccionará delsegmento especificado
NumberFromSegmentToSelectentero
El número total de registros en elsegmento especificado
SegmentTotalSizeentero
El número de registros en lamuestra que se seleccionará delresto de la población
NumberOutsideSegmentToSelectentero
El número total de registros en elresto de la población
OutsideSegmentTotalSizeentero
La expresión (booleana) quedetermina si un registro está o noen el segmento especificado
InSegmentExpressionentero
Resultado
DescripciónTipo
1 si se selecciona un registro para la muestra; delo contrario 0
entero
Nota: • Los registros que no están actualmente seleccionados en el enfoque reciben el valor nulo.• Sólo puede utilizar esta función en una derivación de Decision Studio, en el archivo de
derivaciones para qsderive o la ventana Derivar campos equivalente, en el archivo derastreos para qstrack o en un archivo de selecciones para qsselect.
Ejemplos Para crear una muestra que comprenda 2500 registros de un total de 25.000 mujeres y 5000registros de un total de 75.000 no mujeres:
sampleStratified(2500, 25000, 5000, 75000, Gender = "F")
También consulte
sampleExactNumber en la página 294
sampleExactPercentage en la página 295
Portrait Miner 7.1296
sampleStratified
testTrainSplitObjetivo: Crear una segmentación de prueba y capacitación para usar en una validación de modelo.
Sintaxis testTrainSplit(testFraction)
Argumentos
DescripciónNombreTipo
La fracción de los datos que seutilizará como el conjunto deprueba
testFractionreal
Resultado
DescripciónTipo
Valores de cadena TestSet o TrainingSetcadena
Ejemplos
Para derivar un campo que asigna el valor "TrainingSet" a aproximadamente el 70% de los registros(seleccionados aleatoriamente) y el valor "TestSet" al resto:
testTrainSplit(0.3)
También consulte
numericTestTrainSplit en la página 292
numericTestTrainValidateSplit en la página 292
sampleEqualSize en la página 293
testTrainValidateSplit en la página 297
testTrainValidateSplitObjetivo: Crear una segmentación de prueba, capacitación y validación para usar en una validaciónde modelo.
Sintaxis testTrainValidateSplit(testFraction, validateFraction)
Argumentos
297Guía de referencia del comando de creación de datos y TML
Capítulo 23: Funciones de muestreo de datos
DescripciónNombreTipo
La fracción de los datos que seutilizará como el conjunto deprueba
testFractionreal
La fracción de los datos que seutilizará como el conjuntorepresentativo
validateFractionreal
Resultado
DescripciónTipo
Valores de cadena TestSet, TrainingSet oValidationSet
cadena
Ejemplos
Para derivar un campo que asigna el valor "TrainingSet" a aproximadamente el 50% de los registros(seleccionados aleatoriamente), el valor "TestSet" a aproximadamente el 30% de los registros(nuevamente seleccionados aleatoriamente) y el valor "ValidationSet" al resto:
testTrainValidateSplit(0.3, 0.2)
También consulte
numericTestTrainSplit en la página 292
numericTestTrainValidateSplit en la página 292
sampleEqualSize en la página 293
testTrainSplit en la página 297
Portrait Miner 7.1298
testTrainValidateSplit
Capítulo 24Funciones de númerosaleatorios
En esta sección:
• Sobre las funciones de números aleatorios en FDL . . .300• rndBinomial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .300• rndBool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .301• rndExp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .301• rndGamma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .302• rndNormal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .302• rndPoisson . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .303• rndUniform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .304
Sobre las funciones de números aleatorios en FDLCuando se evalúa una expresión FDL que involucra a una función de número aleatorionumericTestTrainSplit, numericTestTrainValidateSplit, rndBinomial, rndBool, rndExp, rndGamma,rndNormal, rndPoisson o rndUniform sampleEqualSize, sampleExactNumber,sampleExactPercentage, sampleStratified, testTrainSplit y testTrainValidateSplit), Portrait Minernecesita una "semilla" de un entero para inicializar su secuencia de números aleatorios. Con la mismasemilla, la misma expresión siempre producirá la misma secuencia de resultados.
Nota: • La semilla se almacena como parte de la información del campo.• La generación de números en forma (pseudo)aleatoria está basada en la de Marsaglia, Zaman,
y Tsang (1990).
rndBinomialObjetivo: Generar un entero aleatorio basado en una distribución binomial.
Sintaxis rndBinomial(N, p)
Argumentos
DescripciónNombreTipo
Los números (positivos) de laspruebas
nentero
La probabilidad de éxito de cadaprueba (entre 0 y 1)
pnumérico
Resultado
DescripciónTipo
Un entero aleatorio no negativo tomado de ladistribución binomial, con la probabilidad dada por
entero
La expectativa y la varianza de la distribución binomial son y , respectivamente.Nota:
Ejemplos rndBinomial (50, 0.05)
También consulteSobre las funciones de números aleatorios en FDL en la página 300
Portrait Miner 7.1300
Sobre las funciones de números aleatorios en FDL
rndBoolObjetivo: Generar un 0 ó 1 de manera aleatoria (con probabilidades iguales).
Sintaxis rndBool()
Argumentos Ninguno
Resultado
DescripciónTipo
0 ó 1, con probabilidadesentero
Ejemplos
Derivar un campo que asigna el valor 0 a aproximadamente 50% de los registros (elegidos al azar) yel valor 1 al resto de los registros: rndBool()
También consulteSobre las funciones de números aleatorios en FDL en la página 300
rndExpObjetivo: Generar un número positivo aleatorio basado en una distribución exponencial.
Sintaxis rndExp(b)
Argumentos
DescripciónNombreTipo
El parámetro de la escala(positivo)
bnumérico
Resultado
DescripciónTipo
Un número positivo aleatorio tomado de unadistribución exponencial, con la función de
real
densidad de probabilidad dada por (x> 0)
La expectativa y la varianza de la distribución exponencial son y respectivamente.Nota:
Ejemplos rndExp (10)
301Guía de referencia del comando de creación de datos y TML
Capítulo 24: Funciones de números aleatorios
También consulteSobre las funciones de números aleatorios en FDL en la página 300
rndGammaObjetivo: Generar un número positivo aleatorio basado en una distribución gamma.
Sintaxis rndGamma(a, b)
Argumentos
DescripciónNombreTipo
El número (positivo) de eventosindependientes
aentero
La relación de eventos (positiva)bnumérico
Resultado
DescripciónTipo
Un número positivo aleatorio tomado de unadistribución gamma , con la función dedensidad de probabilidad dada por
real
La expectativa y la varianza de la distribución gamma son y respectivamente.Nota:
Ejemplos rndGamma (50, 0.05)
También consulteSobre las funciones de números aleatorios en FDL en la página 300
rndNormalObjetivo: Generar un número positivo aleatorio basado en una distribución normal.
Sintaxis rndNormal( , )
Argumentos
DescripciónNombreTipo
La media de la distribuciónnumérico
Portrait Miner 7.1302
rndGamma
DescripciónNombreTipo
La desviación estándar de ladistribución
numérico
Resultado
DescripciónTipo
Un número positivo aleatorio tomado de ladistribución normal , con la función dedensidad de probabilidad dada por
real
La expectativa y la varianza de la distribución normal son y respectivamente.Nota:
Ejemplos
Ejemplos Derivar una distribución de Gauss con una media de cero y desviación estándar de unidad:rndNormal(0,1)
También consulteSobre las funciones de números aleatorios en FDL en la página 300
rndPoissonObjetivo: Generar un número no negativo entero aleatorio basado en un distribución de Poisson discreta.
Sintaxis rndPoisson(mean)
Argumentos
DescripciónNombreTipo
La media (positiva) de ladistribución
numérico
Resultado
DescripciónTipo
Un entero no negativo aleatorio tomado de unadistribución discreta de Poisson, con la probabilidadcalculada a partir de ( )
entero
Tanto la expectativa como la varianza de la distribución de Poisson discreta son iguales a lamedia, .
Nota:
303Guía de referencia del comando de creación de datos y TML
Capítulo 24: Funciones de números aleatorios
Ejemplos rndPoisson (10)
También consulteSobre las funciones de números aleatorios en FDL en la página 300
rndUniformObjetivo: Generar un número aleatorio entre 0 y 1 basado en una distribución uniforme.
Sintaxis rndUniform()
Argumentos Ninguno
Resultado
DescripciónTipo
Un número aleatorio tomado de una distribuciónuniforme por encima de [0, 1)
real
Ejemplos
Ejemplos Para generar un número real aleatorio en el rango de [0,10): rndUniform() * 10
También consulteSobre las funciones de números aleatorios en FDL en la página 300
Portrait Miner 7.1304
rndUniform
Capítulo 25Funciones de rentabilidadde la inversión
En esta sección:
• ActionROI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .306• ActionROIAnnualized . . . . . . . . . . . . . . . . . . . . . . . . . . . .307• OfferROI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .308• OfferROIAnnualized . . . . . . . . . . . . . . . . . . . . . . . . . . . . .309• RetentionActionROI . . . . . . . . . . . . . . . . . . . . . . . . . . . . .310• RetentionActionROIAnnualized . . . . . . . . . . . . . . . . . . . .311• RetentionOfferROI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .313• RetentionOfferROIAnnualized . . . . . . . . . . . . . . . . . . . . .314
ActionROIObjetivo: Calcular la contribución al ROI (dinero) por cliente de emprender una acción diseñada paragenerar una respuesta definitiva. La acción sucede ya sea que el cliente responda o no, de modo quesólo está el costo de la acción, no del cumplimiento.
Sintaxis ActionROI(ResponseProbability, ValueOfResponse, CostOfAction)
Argumentos
DescripciónNombreTipo
La probabilidad estimada de queun cliente responda a la acción
ResponseProbabilitynumérico
mostrando algún tipo de conductade respuesta.
El valor estimado de la respuestade un cliente a una acción demarketing (si ocurre)
ValueOfResponsenumérico
El costo estimado de una acción(ya sea que el cliente respondao no)
CostOfActionnumérico
Resultado
DescripciónTipo
La contribución al ROI (dinero) de emprender unaacción, calculada por cliente
numérico
Nota: • La probabilidad de respuesta debe ser un "alza", es decir, la probabilidad de que el clientemuestre esa conducta cuando de otro modo no lo hubiera hecho. Si existe alguna posibilidadde que el cliente muestre la conducta deseada sin emprender la acción, esto debe modelarseutilizando el modelo de "alza" o, si eso falla, se debe restar la posibilidad de la respuesta conacción de la posibilidad sin la acción.
• El valor de la respuesta debe ser un ingreso neto que ignora el costo de la acción de marketing.
También consulte
ActionROIAnnualized en la página 307
OfferROI en la página 308
OfferROIAnnualized en la página 309
RetentionActionROI en la página 310
RetentionActionROIAnnualized en la página 311
RetentionOfferROI en la página 313
Portrait Miner 7.1306
ActionROI
RetentionOfferROIAnnualized en la página 314
ActionROIAnnualizedObjetivo: Estimar el múltiplo anual de rentabilidad de la inversión por cliente al tomar medidas diseñadaspara generar una respuesta definitiva de un cliente. La acción sucede ya sea que el cliente respondao no, de modo que sólo está el costo de la acción, no del cumplimiento.
SintaxisActionROIAnnualized(ResponseProbability, ValueOfResponse, CostOfAction,DaysToROI)
Argumentos
DescripciónNombreTipo
La probabilidad estimada de queun cliente responda a la acción
ResponseProbabilitynumérico
mostrando algún tipo de conductade respuesta.
El valor estimado de la respuestade un cliente a una acción demarketing (si ocurre)
ValueOfResponsenumérico
El costo estimado de una acción(ya sea que el cliente respondao no)
CostOfActionnumérico
El número de días que serequerirá para lograr un ROIdeterminado.
DaysToROInumérico
Resultado
DescripciónTipo
El ROI múltiple anualizado y calculado por clientede emprender una acción.
numérico
Nota: • La probabilidad de respuesta debe ser un "alza", es decir, la probabilidad de que el clientemuestre esa conducta cuando de otro modo no lo hubiera hecho. Si existe alguna posibilidadde que el cliente muestre la conducta deseada sin emprender la acción, esto debe modelarseutilizando el modelo de "alza" o, si eso falla, se debe restar la posibilidad de la respuesta conacción de la posibilidad sin la acción.
• El valor de la respuesta debe ser un ingreso neto que ignora el costo de la acción de marketing.
También consulte
ActionROI en la página 306
307Guía de referencia del comando de creación de datos y TML
Capítulo 25: Funciones de rentabilidad de la inversión
OfferROI en la página 308
OfferROIAnnualized en la página 309
RetentionActionROI en la página 310
RetentionActionROIAnnualized en la página 311
RetentionOfferROI en la página 313
RetentionOfferROIAnnualized en la página 314
OfferROIObjetivo: Estimar la contribución de rentabilidad de la inversión por cliente al hacer una oferta diseñadapara generar una respuesta definitiva.
Sintaxis OfferROI(ResponseProbability, ValueOfResponse, CostOfOffer,CostOfFulfilment)
Argumentos
DescripciónNombreTipo
La probabilidad estimada de queun cliente responda a la acción
ResponseProbabilitynumérico
mostrando algún tipo de conductade respuesta.
El valor estimado de la respuestade un cliente a una acción demarketing (si ocurre)
ValueOfResponsenumérico
El costo estimado de una acción(ya sea que el cliente respondao no)
CostOfOffernumérico
El costo estimado delcumplimiento de una respuesta
CostOfFulfilmentnumérico
positiva (cero si no hay costo decumplimiento (adicional))
Resultado
DescripciónTipo
El ROI estimado por cliente de realizar una ofertanumérico
Nota: • La probabilidad de respuesta debe ser un "alza", es decir, la probabilidad de que el clientemuestre esa conducta cuando de otro modo no lo hubiera hecho. Si existe alguna posibilidadde que el cliente muestre la conducta deseada sin emprender la acción, esto debe modelarse
Portrait Miner 7.1308
OfferROI
utilizando el modelo de "alza" o, si eso falla, se debe restar la posibilidad de la respuesta conacción de la posibilidad sin la acción.
• El valor de la respuesta debe ser un ingreso neto que ignora el costo de la acción de marketingy el costo del cumplimiento de la respuesta del cliente.
También consulte
ActionROI en la página 306
ActionROIAnnualized en la página 307
OfferROIAnnualized en la página 309
RetentionActionROI en la página 310
RetentionActionROIAnnualized en la página 311
RetentionOfferROI en la página 313
RetentionOfferROIAnnualized en la página 314
OfferROIAnnualizedObjetivo: Estimar el múltiplo anual de rentabilidad de la inversión por cliente al hacer una oferta diseñadapara generar una respuesta definitiva de un cliente.
SintaxisOfferROIAnnualized(ResponseProbability, ValueOfResponse, CostOfOffer,CostOfFulfilment, DaysToROI)
Argumentos
DescripciónNombreTipo
La probabilidad estimada de queun cliente responda a la acción
ResponseProbabilitynumérico
mostrando algún tipo de conductade respuesta.
El valor estimado de la respuestade un cliente a una acción demarketing (si ocurre)
ValueOfResponsenumérico
El costo estimado de una acción(ya sea que el cliente respondao no)
CostOfOffernumérico
El costo estimado delcumplimiento de una respuesta
CostOfFulfilmentnumérico
positiva (cero si no hay costo decumplimiento (adicional))
309Guía de referencia del comando de creación de datos y TML
Capítulo 25: Funciones de rentabilidad de la inversión
DescripciónNombreTipo
El número de días que serequerirá para lograr un ROIdeterminado.
DaysToROInumérico
Resultado
DescripciónTipo
El ROI múltiple anualizado estimado por cliente derealizar una oferta
numérico
Nota: • La probabilidad de respuesta debe ser un "alza", es decir, la probabilidad de que el clientemuestre esa conducta cuando de otro modo no lo hubiera hecho. Si existe alguna posibilidadde que el cliente muestre la conducta deseada sin emprender la acción, esto debe modelarseutilizando el modelo de "alza" o, si eso falla, se debe restar la posibilidad de la respuesta conacción de la posibilidad sin la acción.
• El valor de la respuesta debe ser un ingreso neto que ignora el costo de la acción de marketingy el costo del cumplimiento de la respuesta del cliente.
También consulte
ActionROI en la página 306
ActionROIAnnualized en la página 307
OfferROI en la página 308
RetentionActionROI en la página 310
RetentionActionROIAnnualized en la página 311
RetentionOfferROI en la página 313
RetentionOfferROIAnnualized en la página 314
RetentionActionROIObjetivo: Estimar (en dinero) la contribución de rentabilidad de la inversión por cliente al tomar medidasdiseñadas para prevenir desgastes. Se asume que la acción tiene un costo fijo, sin importar si seconserva al cliente o no, y si el cliente "acepta" o no la oferta.
Sintaxis RetentionActionROI(SaveProbability, NetRevenueAtRisk, CostOfAction)
Argumentos
DescripciónNombreTipo
La probabilidad estimada de queel cliente se "conservará" (para
SaveProbabilitynumérico
Portrait Miner 7.1310
RetentionActionROI
DescripciónNombreTipo
el período en consideración)como resultado de la acciónemprendida
El ingreso neto estimado que seperderá si el cliente no se
NetRevenueAtRisknumérico
conserva durante el período enconsideración
El costo estimado de una acción(ya sea que el cliente respondao no)
CostOfActionnumérico
Resultado
DescripciónTipo
Calcular la contribución al ROI (dinero) por clientede una acción diseñada para evitar el desgaste.
numérico
Nota: • Decir que se ha "conservado" un cliente significa que "se evitó la pérdida de un cliente cuandode lo contrario se hubiera perdido". Este valor es el negativo del alza en la tasa de desgasteproducida por el modelo de alza. Alternativamente, puede calcularse como P(desgaste|sinacción) - P(desgaste|con acción).
• El ingreso neto en riesgo debe ser un ingreso neto que ignora el costo de la acción diseñadapara evitar el desgaste.
También consulte
ActionROI en la página 306
ActionROIAnnualized en la página 307
OfferROI en la página 308
OfferROIAnnualized en la página 309
RetentionActionROIAnnualized en la página 311
RetentionOfferROI en la página 313
RetentionOfferROIAnnualized en la página 314
RetentionActionROIAnnualizedObjetivo: Estimar la contribución anual de rentabilidad de la inversión por cliente al tomar medidasdiseñadas para prevenir desgastes. Se asume que la acción tiene un costo fijo, sin importar si seconserva al cliente o no, y si el cliente "acepta" o no la oferta.
311Guía de referencia del comando de creación de datos y TML
Capítulo 25: Funciones de rentabilidad de la inversión
Sintaxis RetentionActionROIAnnualized(SaveProbability, NetRevenueAtRisk,CostOfAction, DaysToROI)
Argumentos
DescripciónNombreTipo
La probabilidad estimada de queel cliente se "conservará" (para
SaveProbabilitynumérico
el período en consideración)como resultado de la acciónemprendida
El ingreso neto estimado que seperderá si el cliente no se
NetRevenueAtRisknumérico
conserva durante el período enconsideración
El costo estimado de una acción(ya sea que el cliente respondao no)
CostOfActionnumérico
El número de días que serequerirá para lograr un ROIdeterminado.
DaysToROInumérico
Resultado
DescripciónTipo
La contribución estimada al ROI anualizado porcliente de una acción diseñada para evitar eldesgaste.
numérico
Nota: • Decir que se ha "conservado" un cliente significa que "se evitó la pérdida de un cliente cuandode lo contrario se hubiera perdido". Este valor es el negativo del alza en la tasa de desgasteproducida por el modelo de alza. Alternativamente, puede calcularse como P(desgaste|sinacción) - P(desgaste|con acción).
• El ingreso neto en riesgo debe ser un ingreso neto que ignora el costo de la acción diseñadapara evitar el desgaste.
También consulte
ActionROI en la página 306
ActionROIAnnualized en la página 307
OfferROI en la página 308
OfferROIAnnualized en la página 309
RetentionActionROI en la página 310
RetentionOfferROI en la página 313
Portrait Miner 7.1312
RetentionActionROIAnnualized
RetentionOfferROIAnnualized en la página 314
RetentionOfferROIObjetivo: Estimar la rentabilidad de la inversión por cliente al hacer una oferta diseñada para prevenirdesgastes. Una oferta, a diferencia de una acción, tiene un costo diferente si es aceptada por el clienteque si no es aceptada.
Sintaxis RetentionOfferROI(SaveProbability, ResponseProbability,NetRevenueAtRisk, CostOfOffer, CostOfFulfilment)
Argumentos
DescripciónNombreTipo
La probabilidad estimada de queel cliente se "conservará" (para
SaveProbabilitynumérico
el período en consideración)como resultado de la acciónemprendida
La probabilidad estimada de queel cliente responda a la oferta
ResponseProbabilitynumérico
El ingreso neto estimado que seperderá si el cliente no se
NetRevenueAtRisknumérico
conserva durante el período enconsideración
El costo estimado de una oferta(ya sea que el cliente respondao no)
CostOfOffernumérico
El costo estimado de obtener unarespuesta positiva a la oferta.
CostOfFulfilmentnumérico
Resultado
DescripciónTipo
El ROI estimado por cliente de una oferta diseñadapara evitar el desgaste
numérico
Nota: • Decir que se ha "conservado" un cliente significa que "se evitó la pérdida de un cliente cuandode lo contrario se hubiera perdido". Este valor es menos el alza en la tasa de desgasteproducido por el modelo de alza. Alternativamente, puede calcularse como P(desgaste|sinacción) - P(desgaste|con acción).
• El ingreso neto en riesgo debe ser un ingreso neto que ignora el costo de la acción diseñadapara evitar el desgaste.
313Guía de referencia del comando de creación de datos y TML
Capítulo 25: Funciones de rentabilidad de la inversión
También consulte
ActionROI en la página 306
ActionROIAnnualized en la página 307
OfferROI en la página 308
OfferROIAnnualized en la página 309
RetentionActionROI en la página 310
RetentionActionROIAnnualized en la página 311
RetentionOfferROIAnnualized en la página 314
RetentionOfferROIAnnualizedObjetivo: Estimar la rentabilidad anual de la inversión por cliente al hacer una oferta diseñada paraprevenir desgastes. Una oferta, a diferencia de una acción, tiene un costo diferente si es aceptada porel cliente que si no es aceptada.
Sintaxis RetentionOfferROIAnnualized(SaveProbability, ResponseProbability,NetRevenueAtRisk, CostOfOffer, CostOfFulfilment, DaysToROI)
Argumentos
DescripciónNombreTipo
La probabilidad estimada de queel cliente se "conservará" (para
SaveProbabilitynumérico
el período en consideración)como resultado de la acciónemprendida
La probabilidad estimada de queel cliente responda a la oferta
ResponseProbabilitynumérico
El ingreso neto estimado que seperderá si el cliente no se
NetRevenueAtRisknumérico
conserva durante el período enconsideración
El costo estimado de una oferta(ya sea que el cliente respondao no)
CostOfOffernumérico
El costo estimado de obtener unarespuesta positiva a la oferta.
CostOfFulfilmentnumérico
El número de días que serequerirá para lograr un ROIdeterminado.
DaysToROInumérico
Portrait Miner 7.1314
RetentionOfferROIAnnualized
Resultado
DescripciónTipo
El ROI anualizado por cliente estimado de unaoferta diseñada para evitar el desgaste.
numérico
Nota: • Decir que se ha "conservado" un cliente significa que "se evitó la pérdida de un cliente cuandode lo contrario se hubiera perdido". Este valor es menos el alza en la tasa de desgasteproducido por el modelo de alza. Alternativamente, puede calcularse como P(desgaste|sinacción) - P(desgaste|con acción).
• El ingreso neto en riesgo debe ser un ingreso neto que ignora el costo de la acción diseñadapara evitar el desgaste.
También consulte
ActionROI en la página 306
ActionROIAnnualized en la página 307
OfferROI en la página 308
OfferROIAnnualized en la página 309
RetentionActionROI en la página 310
RetentionActionROIAnnualized en la página 311
RetentionOfferROI en la página 313
315Guía de referencia del comando de creación de datos y TML
Capítulo 25: Funciones de rentabilidad de la inversión
Capítulo 26Funciones diversas
En esta sección:
• dblookup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .318• member . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .319• rankOrder, rankOrderApprox . . . . . . . . . . . . . . . . . . . . . .321• rankOrderMean, rankOrderApproxMean . . . . . . . . . . . .322• rownum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .323
dblookupObjetivo: Buscar valores en una tabla de referencias (guardada como enfoque).
Sintaxis dblookup(d, k, f, x)
Argumentos
DescripciónNombreTipo
El nombre de ruta de la tabla debúsqueda
dcadena
El nombre del campo clave en latabla de búsqueda
kcadena
El nombre de otro campo en latabla de búsqueda
fcadena
El valor de búsquedaxcomo campo k
Resultado
DescripciónTipo
El valor y en el campo f de la tabla d, para elregistro indexado por el valor x presente en elcampo clave k
como campo f
Portrait Miner 7.1318
dblookup
Nota: • Sólo debe utilizar esta función para tablas de búsqueda pequeñas. Si la tabla de búsquedaes de un tamaño comparable a una tabla de clientes o de transacciones, debe considerarrealizar una unión.
• Si el valor de búsqueda no está presente en el campo clave, se devuelve el valor nulo.• Si el valor de búsqueda se presenta más de una vez en el campo clave, se utiliza el primer
valor.• El espacio en blanco posterior se corta del valor de búsqueda, pero no de los valores del
campo clave en la tabla de búsqueda. Esto puede generar un comportamiento inesperado siel campo clave en la tabla de búsqueda incluye valores con espacios en blanco posteriores.
• Para la compatibilidad con versiones anteriores, puede colocar un prefijo en el nombre de rutade la tabla de búsqueda con la cadena focus:.
Ejemplo
En un enfoque, la tienda en la que un cliente realiza sus compras frecuentes está registrada en el campoPopularShop. Otro enfoque stores.ftr incluye una tabla de búsqueda que describe las instalacionesen cada tienda: En este enfoque, StoreCode es el campo clave, y el campo HasFuel indica si cadatienda tiene una estación de gasolina. La tienda 105 tiene una estación de gasolina, las tiendas 299 y204 no, y así sucesivamente; la tienda 189 no está en la tabla de búsqueda. Para derivar un campo quemarca si la tienda favorita de cada cliente tiene una estación de gasolina:
dblookup("focus:stores.ftr","StoreCode", "HasFuel", PopularShop)
PopularShop
1105
0299
0204
null189
memberObjetivo: Determinar la pertenencia a un conjunto.
Sintaxis member(x, , , ...)
Argumentos
DescripciónNombreTipo
El valor que será comprobadoxentero, real, fecha, o cadena
Los elementos del conjunto, , ...como x
Resultado
319Guía de referencia del comando de creación de datos y TML
Capítulo 26: Funciones diversas
DescripciónTipo
1 (true) if x está en el conjunto ; de locontrario 0 (false)
entero
Nota: • Solo se pueden utilizar valores literales (números, cadenas o fechas) para la lista de elementosdel conjunto.
• En general, es más eficiente utilizar la función miembro que una disyunción de pruebas deigualdad. Por ejemplo, la expresión strmember(F, "a", "b", "c") es más rápida deevaluar que F = "a" or F = "b" or F = "c".
• Para buscar compatibilidad hacia atrás, puede utilizar strmember en vez de member cuandolos argumentos sean cadenas.
• Los espacios en blanco al final de las cadenas no son ignorados.
Ejemplos
Para utilizar los dos primeros caracteres de un campo StateCode para identificar clientes de la costaEste u Oeste:
miembro (substr (StateCode, 0, 1),"CA", "OR", WA")
StateCode
1OR009
1CA043
0UT005
1WA027
Para marcar clientes con números telefónicos de 10 dígitos que tengan los códigos de área de Edimburgo(131) o Glasgow (141) (determinando los tres primeros dígitos utilizando el operador div [consulteOperadores aritméticos en la página 195]):
si es miembro (TelNo div 10000000,131, 141) entonces "Edim/Glas" si nonulo
TelNo
Edim/Glas1312204491
null1753833999
null1611234567
Edim/Glas1417654321
También consulteDivisión de agregaciones: la cláusula by en la página 156
Portrait Miner 7.1320
member
rankOrder, rankOrderApproxObjetivo: Identificar el orden de un valor dentro de una lista de valores.
Sintaxis
rankOrder (x, , , ...)
rankOrderApprox (x, , , ...)
Argumentos
DescripciónNombreTipo
El valor que debe graduarsexentero, real, fecha, o cadena
La lista de valores para comparar, , ...como x
Resultado
DescripciónTipo
La posición de la primera ocurrencia de x dentrode la lista de valores obtenidos mediante la
entero
clasificación de , , ... en orden descendente (dela última a la primera para las fechas; en ordenalfabético inverso para las cadenas)
Si x no aparece en la lista, rankOrder devuelvenulo, mientras que rankOrderApprox devuelve laposición de x dentro de la lista de valoresobtenidos mediante la clasificación de x, , , ...en orden descendente.
Nota: • Cuando el valor que debe graduarse aparece exactamente una vez en la lista de valores,rankOrder, rankOrderApprox, rankOrderMean y rankOrderApproxMean dan todos el mismoresultado.
• Cuando el valor que debe graduarse aparece más de una vez en la lista de valores,rankOrderApprox da el mismo resultado que rankOrder.
• Cuando el valor que debe graduarse no aparece en la lista de valores, rankOrderApprox dael mismo resultado que rankOrderApproxMean.
• Para las cadenas, "orden alfabético" significa el orden natural de la representación de loscaracteres subyacentes.
Ejemplos
rankOrder(6.74, 6.74, 1.99, 0.00, 9.27) es igual a 2.
rankOrderApprox(6.74, 1.99, 0.00, 9.27) es igual a 2.
Para verificar la graduación en un año del número de llamadas de un cliente en el 4º trimestre:
321Guía de referencia del comando de creación de datos y TML
Capítulo 26: Funciones diversas
rankOrder(CallsQ4, CallsQ1, CallsQ2, CallsQ3, CallsQ4)
Para verificar la graduación en el mes 5 del número de llamadas de un cliente con respecto a los cuatromeses anteriores:
RankOrderApprox(CallsM5, CallsM1, CallsM2, CallsM3, CallsM4)
También consulterankOrderMean, rankOrderApproxMean en la página 322
rankOrderMean, rankOrderApproxMeanObjetivo: Identificar la graduación de un valor dentro de una lista de valores, o su graduación promediosi aparece más de una vez.
Sintaxis rankOrderMean(x, , , ...)
rankOrderApproxMean(x, , , ...)
Argumentos
DescripciónNombreTipo
El valor que debe graduarsexentero, real, fecha, o cadena
La lista de valores para comparar, , ...como x
Resultado
DescripciónTipo
La clasificación media de x dentro de la lista devalores obtenidos mediante la clasificación de ,
real
, ... en orden descendente (de la última a laprimera para las fechas; en orden alfabético inversopara las cadenas)
Si x no aparece en la lista, rankOrderMeandevuelve nulo, mientras querankOrderApproxMean devuelve la posición dex dentro de la lista de valores obtenidos mediantela clasificación de x, , , ... en orden descendente.
Nota: • Cuando el valor a jerarquizar aparece exactamente una vez en la lista de valores, rankOrder,rankOrderApprox, rankOrderMean y rankOrderApproxMean todas dan el mismoresultado.
• Cuando el valor que debe graduarse aparece más de una vez en la lista de valores,rankOrderApproxMean da el mismo resultado que rankOrderMean.
Portrait Miner 7.1322
rankOrderMean, rankOrderApproxMean
• Cuando el valor que debe graduarse no aparece en la lista de valores, rankOrderApproxMeanda el mismo resultado que rankOrderApprox.
• Para las cadenas, "orden alfabético" significa el orden natural de la representación de loscaracteres subyacentes.
Ejemplos
rankOrderMean(6.74, 6.74, 1.99, 6.74, 9.27) es igual a 2.5.
rankOrderApproxMean(6.74, 1.99, 6.74, 9.27, 6.74) es igual a 2.5.
También consulterankOrder, rankOrderApprox en la página 321
rownumObjetivo: Mostrar el número de cada fila en una tabla.
Sintaxis rownum()
Argumentos Ninguno
Resultado
DescripciónTipo
Un número de índice de 1 al número de registrosen la tabla
entero
Sólo se puede usar esta función en una derivación de Decision Studio, en el archivo de derivaciónpara qsderive o la ventana Derivar campos equivalente en el archivo seguidor para qstracko en un archivo de selecciones para qsselect.
Nota:
Ejemplos Para agregar una columna de índice a un conjunto de datos de registro N, con los valores:
rownum()Identificación
1AZ195
2DI539
3JD974
4BY643
323Guía de referencia del comando de creación de datos y TML
Capítulo 26: Funciones diversas
Capítulo 27Rangos
En esta sección:
• bin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .326• Boolean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .327• DayFrom, WeekFrom, MonthFrom, YearFrom . . . . . . . .328• DayMultipleFrom, WeekMultipleFrom, MonthMultipleFrom,
YearMultipleFrom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .328• DayMultipleNumBins, WeekMultipleNumBins,
MonthMultipleNumBins, YearMultipleNumBins . . . . . . .329• DayMultiplePrePost, WeekMultiplePrePost,
MonthMultiplePrePost, YearMultiplePrePost . . . . . . . . .330• DayMultipleTo, WeekMultipleTo, MonthMultipleTo,
YearMultipleTo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .331• DayMultipleWidth, WeekMultipleWidth, MonthMultipleWidth,
YearMultipleWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .332• DayPrePost, WeekPrePost, MonthPrePost, YearPrePost .333• DayRange, WeekRange, MonthRange, YearRange . . . .334• DayTo, WeekTo, MonthTo, YearTo . . . . . . . . . . . . . . . . . .335• EqualRange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .336• EqualRangeWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .337• NegativeNonNegative . . . . . . . . . . . . . . . . . . . . . . . . . . . .337• PreDuringPost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .338• PrePost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .339• Sign . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .340
binObjetivo: Obtener un índice de rangos correspondientes a un valor.
Sintaxis bin(binning, x)
Argumentos
DescripciónNombreTipo
Una creación de rangos connombre, con valores de
binningrangos
parámetro (que deben ser valoresliterales) en paréntesis si serequiere
Un valor compatible con lacreación de rangos
xentero, real, fecha, o cadena
Resultado
DescripciónTipo
El índice de rango del rango en el que está xentero
Nota: • Los índices de rango son enteros positivos. Para una creación de rangos numéricos con nrangos nominales (numerados de 2 a n + 1), los rangos de final inferior y superior se numeranen 1 y n + 2 respectivamente, mientras que los rangos nulos y sin clasificar se enumeran enn + 3 y n + 4.
• Esta función no está disponible en Decision Studio. No obstante, si x es un campo y b es elrango primario asociado con x, se puede obtener el mismo resultado utilizando segindex:
segindex() by x
Ejemplos
Dividir las agregaciones con la creación de rangos iguales EqualRange en el campo Amount, esto dacomo resultado una agregación segmentada en ocho (cuatro rangos internos entre valores de montode 20 y 100 dos rangos de fin, un rango nulo y un rango sin clasificar):create totalPointsByAmountBands :=sum(PointsRedeemed) by bin(EqualRange(20, 100, 4), Amount);
Agregaciones divididas en ocho segmentos basadas en la creación de rangos de campaña PrePost,que comienza en mayo de 1999, y con agregados del mes anterior y posterior a la campaña:create totalSpendPrePostMayCampaign_ := sum(Amount) bybin(PrePost(todate(19990401), todate(19990501),todate(19990601)), PurchaseDate);
También consulte
Portrait Miner 7.1326
bin
Boolean en la página 327
DayFrom, WeekFrom, MonthFrom, YearFrom en la página 328
DayMultipleFrom, WeekMultipleFrom, MonthMultipleFrom, YearMultipleFrom en la página 328
DayMultipleNumBins, WeekMultipleNumBins, MonthMultipleNumBins, YearMultipleNumBins enla página 329
DayMultiplePrePost, WeekMultiplePrePost, MonthMultiplePrePost, YearMultiplePrePost en lapágina 330
DayMultipleTo, WeekMultipleTo, MonthMultipleTo, YearMultipleTo en la página 331
DayMultipleWidth, WeekMultipleWidth, MonthMultipleWidth, YearMultipleWidth en la página 332
DayPrePost, WeekPrePost, MonthPrePost, YearPrePost en la página 333
DayRange, WeekRange, MonthRange, YearRange en la página 334
DayTo, WeekTo, MonthTo, YearTo en la página 335
EqualRange en la página 336
EqualRangeWidth en la página 337
NegativeNonNegative en la página 337
PreDuringPost en la página 338
PrePost en la página 339
Sign en la página 340
División de agregaciones: la cláusula by en la página 156
BooleanObjetivo:Valores booleanos de rangos [consulte Datos booleanos en la página 185].
Parámetros Ninguno
Resultado
ValoresÍndice de rangos
false1
true2
nulo [Consulte El valor null en la página 184]3
sin clasificar4
327Guía de referencia del comando de creación de datos y TML
Capítulo 27: Rangos
DayFrom, WeekFrom, MonthFrom, YearFromObjetivo: Valores de fecha de rangos en un número específico de períodos (días, meses o años)posteriores a una fecha dada.
Parámetros
DescripciónNombreTipo
El comienzo de la porciónperiódica de la creación derangos
a ("start_date")fecha
El número de períodos (días,semanas, meses o años) en la
n ("num_bins")entero
porción periódica de la creaciónde rangos.
Resultado
ValoresÍndice de rangos
fechas anteriores a "a"; el rango de extremo inferior1
los períodos consecutivos n posteriores a "a"2, ..., n + 1
períodos de fechas n después de a y posteriores;el rango de extremo superior
n + 2
nulo [Consulte El valor null en la página 184]n + 3
sin clasificarn + 4
También consulte
DayRange, WeekRange, MonthRange, YearRange en la página 334
DayTo, WeekTo, MonthTo, YearTo en la página 335
DayMultipleFrom, WeekMultipleFrom,MonthMultipleFrom, YearMultipleFrom
Objetivo: Valores de fecha de rango en un número específico de períodos después de una fecha dada,donde cada período es un número específico de días, semanas, meses o años.
Parámetros
Portrait Miner 7.1328
DayFrom, WeekFrom, MonthFrom, YearFrom
DescripciónNombreTipo
El comienzo de la porciónperiódica de la creación derangos
a ("start_date")fecha
El número de unidades (días,semanas, meses, o años) en unperíodo
m ("width")entero
El número de rangos en laporción periódica de la creaciónde rangos
n ("num_bins")entero
Resultado
ValoresÍndice de rangos
fechas anteriores a "a"; el rango de extremo inferior1
los períodos consecutivos n (cada uno de munidades) posteriores a "a"
2, ..., n + 1
fechas n x unidades de m después de a yposteriores; el rango de extremo superior
n + 2
nulo [Consulte El valor null en la página 184]n + 3
sin clasificarn + 4
También consulte
DayMultiplePrePost, WeekMultiplePrePost, MonthMultiplePrePost, YearMultiplePrePost en lapágina 330
DayMultipleTo, WeekMultipleTo, MonthMultipleTo, YearMultipleTo en la página 331
DayMultipleNumBins, WeekMultipleNumBins,MonthMultipleNumBins, YearMultipleNumBins
Objetivo: Valores de fecha de rangos en aproximadamente el número de períodos especificados entredos fechas dadas, donde el período es un múltiplo fijo de la unidad (día, semana, mes o año).
Parámetros
DescripciónNombreTipo
El comienzo de la porciónperiódica de la creación derangos
a ("start_date")fecha
329Guía de referencia del comando de creación de datos y TML
Capítulo 27: Rangos
DescripciónNombreTipo
El final de la porción periódica dela creación de rangos
b ("end_date")fecha
El número objetivo de períodos(múltiplos de un día, una semana,
n ("num_bins")entero
un mes o un año) en la porciónperiódica de la creación derangos.
Resultado
ValoresÍndice de rangos
fechas anteriores a "a"; el rango de extremo inferior1
períodos entre a y b2, ..., N - 3
fechas b y posteriores; el rango de extremosuperior
N - 2
nulo [Consulte El valor null en la página 184]N - 1
sin clasificarn
Nota: • Estas creaciones de rangos son como la creación de rangos DayRange, WeekRange,MonthRange, and YearRange [consulte DayRange, WeekRange, MonthRange, YearRangeen la página 334] , excepto por el hecho de que un período puede incluir una o más unidades(días, semanas, meses o años) para arrojar aproximadamente el número objetivo de rangos.
• Cuando un período es de dos o más unidades, el rango N - 3 puede ser más corto que losrangos 2 a N - 4.
También consulteDayMultipleWidth, WeekMultipleWidth, MonthMultipleWidth, YearMultipleWidth en la página 332
DayMultiplePrePost, WeekMultiplePrePost,MonthMultiplePrePost, YearMultiplePrePost
Objetivo: Valores de fecha de rango en números específicos de rangos y después de una fecha dereferencia dada, donde cada rango es un múltiplo dado de la unidad (día, semana, mes o año).
Parámetros
DescripciónNombreTipo
La fecha de referencia para lacreación de rangos
a ("ref_date")fecha
Portrait Miner 7.1330
DayMultiplePrePost, WeekMultiplePrePost, MonthMultiplePrePost, YearMultiplePrePost
DescripciónNombreTipo
El número de rangos antes de lafecha de referencia y después deella
m ("width")entero
El número de unidades (días,semanas, meses, o años) encada rango
n ("num_bins")entero
Resultado
ValoresÍndice de rangos
fechas anteriores a n x unidades m antes de a; elrango de extremo inferior
1
los períodos consecutivos n (cada uno de munidades) anteriores a "a"
2, ..., n + 1
los períodos consecutivos n (cada uno de munidades) posteriores a "a"
n + 2, ..., 2n + 1
fechas n x unidades de m después de a yposteriores; el rango de extremo superior
2n + 2
nulo [Consulte El valor null en la página 184]2n + 3
sin clasificar2n + 4
También consulte
DayMultipleFrom, WeekMultipleFrom, MonthMultipleFrom, YearMultipleFrom en la página 328
DayMultipleTo, WeekMultipleTo, MonthMultipleTo, YearMultipleTo en la página 331
DayPrePost, WeekPrePost, MonthPrePost, YearPrePost en la página 333
PreDuringPost en la página 338
PrePost en la página 339
DayMultipleTo, WeekMultipleTo, MonthMultipleTo,YearMultipleTo
Objetivo: Valores de fecha de rango en un número específico de períodos anteriores a una fecha dada,donde cada período es un número específico de días, semanas, meses o años.
Parámetros
331Guía de referencia del comando de creación de datos y TML
Capítulo 27: Rangos
DescripciónNombreTipo
El final de la porción periódica dela creación de rangos
b ("end_date")fecha
El número de unidades (días,semanas, meses, o años) en unperíodo
m ("width")entero
El número de rangos en laporción periódica de la creaciónde rangos
n ("num_bins")entero
Resultado
ValoresÍndice de rangos
fechas anteriores a n x unidades m antes de a; elrango de extremo inferior
1
los períodos consecutivos n (cada uno de munidades) anteriores a "a"
2, ..., n + 1
fechas a y posteriores; el rango de extremosuperior
n + 2
nulo [Consulte El valor null en la página 184]n + 3
sin clasificarn + 4
También consulte
DayMultipleFrom, WeekMultipleFrom, MonthMultipleFrom, YearMultipleFrom en la página 328
DayMultiplePrePost, WeekMultiplePrePost, MonthMultiplePrePost, YearMultiplePrePost en lapágina 330
DayMultipleWidth, WeekMultipleWidth,MonthMultipleWidth, YearMultipleWidth
Objetivo: Valores de fecha de rangos en períodos entre dos fechas dadas, donde el período es unmúltiplo específico de la unidad (día, semana, mes o año).
Parámetros
DescripciónNombreTipo
El comienzo de la porciónperiódica de la creación derangos
a ("start_date")fecha
Portrait Miner 7.1332
DayMultipleWidth, WeekMultipleWidth, MonthMultipleWidth, YearMultipleWidth
DescripciónNombreTipo
El final de la porción periódica dela creación de rangos
b ("end_date")fecha
El número de unidades (días,semanas, meses, o años) en unperíodo
m ("width")entero
Resultado
ValoresÍndice de rangos
fechas anteriores a "a"; el rango de extremo inferior1
períodos entre a y b2, ..., N - 3
fechas b y posteriores; el rango de extremosuperior
N - 2
nulo [Consulte El valor null en la página 184]N - 1
sin clasificarn
Nota: • Estas creaciones de rangos son como la creación de rangos DayRange, WeekRange,MonthRange, and YearRange [consulte DayRange, WeekRange, MonthRange, YearRangeen la página 334] , excepto por el hecho de que un período puede ser de una o más unidades(días, semanas, meses o años).
• Cuando un período es de dos o más unidades, el rango N - 3 puede ser más corto que losrangos 2 a N - 4.
También consulteDayMultipleNumBins, WeekMultipleNumBins, MonthMultipleNumBins, YearMultipleNumBins enla página 329
DayPrePost, WeekPrePost, MonthPrePost,YearPrePost
Objetivo: Valores de fecha de rango en números de períodos específicos (días, semanas, meses oaños) anteriores a una fecha de referencia dada y posteriores a ella.
Parámetros
DescripciónNombreTipo
La fecha de referencia para lacreación de rangos
a ("ref_date")fecha
333Guía de referencia del comando de creación de datos y TML
Capítulo 27: Rangos
DescripciónNombreTipo
El número de períodos (días,semanas, meses o años) para los
m ("before")entero
que deben crearse rangos antesde la fecha de referencia.
El número de períodos para losque deben crearse rangos
n ("after")entero
después de la fecha dereferencia.
Resultado
ValoresÍndice de rangos
fechas anteriores a períodos de m antes de a; elrango de extremo inferior
1
los períodos consecutivos m anteriores a "a"2, ..., m + 1
los períodos consecutivos n posteriores a "a"m + 2, ..., m + n + 1
períodos de fechas n después de a y posteriores;el rango de extremo superior
m + n + 2
nulo [Consulte El valor null en la página 184]m + n + 3
sin clasificarm + n + 4
También consulte
DayMultiplePrePost, WeekMultiplePrePost, MonthMultiplePrePost, YearMultiplePrePost en lapágina 330
PreDuringPost en la página 338
PrePost en la página 339
DayRange, WeekRange, MonthRange, YearRangeObjetivo: Valores de fechas de rango en períodos (días, semanas, meses o años) entre dos fechasdadas.
Parámetros
DescripciónNombreTipo
El comienzo de la porciónperiódica de la creación derangos
a ("start_date")fecha
Portrait Miner 7.1334
DayRange, WeekRange, MonthRange, YearRange
DescripciónNombreTipo
El final de la porción periódica dela creación de rangos
b ("end_date")fecha
Resultado
ValoresÍndice de rangos
fechas anteriores a "a"; el rango de extremo inferior1
períodos (días, semanas, meses o años) entre ay b
2, ..., N - 3
fechas b y posteriores; el rango de extremosuperior
N - 2
nulo [Consulte El valor null en la página 184]N - 1
sin clasificarn
Nota: • Si hay menos de un período completo entre a y b, el rango 2 contiene fechas entre a (incluido)y b (excluido).
• Si no hay un número exacto de períodos entre a y b (pero hay como mínimo un períodocompleto), el rango que precede inmediatamente a b se alarga para darle lugar al exceso.
También consulte
DayFrom, WeekFrom, MonthFrom, YearFrom en la página 328
DayTo, WeekTo, MonthTo, YearTo en la página 335
DayTo, WeekTo, MonthTo, YearToObjetivo: Valores de fecha de rangos en un número específico de períodos (días, meses o años)anteriores a una fecha dada.
Parámetros
DescripciónNombreTipo
El final de la porción periódica dela creación de rangos
b ("end_date")fecha
El número de períodos (días,semanas, meses o años) en la
n ("num_bins")entero
porción periódica de la creaciónde rangos.
Resultado
335Guía de referencia del comando de creación de datos y TML
Capítulo 27: Rangos
ValoresÍndice de rangos
fechas anteriores a n períodos antes de b; el rangode extremo inferior
1
los períodos consecutivos n anteriores a "b"2, ..., n + 1
fechas b y posteriores; el rango de extremosuperior
n + 2
nulo [Consulte El valor null en la página 184]n + 3
sin clasificarn + 4
También consulte
DayFrom, WeekFrom, MonthFrom, YearFrom en la página 328
DayRange, WeekRange, MonthRange, YearRange en la página 334
EqualRangeObjetivo: Los valores numéricos de rangos en un número especificado de intervalos de igual ancho.
Parámetros
DescripciónNombreTipo
El extremo inferior de la porciónde igual rango de la creación derangos
a ("from")real
El extremo superior de la porciónde igual rango de la creación derangos
b ("to")real
El número de rangos en laporción de igual rango de lacreación de rangos
n ("num_bins")entero
Resultado
ValoresÍndice de rangos
; el rango de extremo inferior1
[a, a + (b - a)/n), ..., [b - (b - a)/n, b)2, ..., n + 1
; el rango de extremo superiorn + 2
null [Consulte El valor null en la página 184]n + 3
sin clasificarn + 4
Portrait Miner 7.1336
EqualRange
También consulteEqualRangeWidth en la página 337
EqualRangeWidthObjetivo: Valores numéricos de rangos en intervalos de un ancho específico.
Parámetros
DescripciónNombreTipo
El extremo inferior de la porciónde igual rango de la creación derangos
a ("from")real
El extremo superior de la porciónde igual rango de la creación derangos
b ("to")real
El ancho de rangos en la porciónde igual rango de la creación derangos
r ("width")real
Resultado
ValoresÍndice de rangos
; el rango de extremo inferior1
rangos de igual ancho y ancho aproximado r2, ..., N - 3
el rango de extremo superiorN - 2
nulo [Consulte El valor null en la página 184]N - 1
sin clasificarn
Si a - b no es múltiplo exacto de r, se usa una aproximación de r, de modo que los rangos entrea y b sean del mismo ancho.
Nota:
También consulteEqualRange en la página 336
NegativeNonNegativeObjetivo: Valores numéricos de rango de acuerdo con el signo, agrupando 0 con los valores positivos.
337Guía de referencia del comando de creación de datos y TML
Capítulo 27: Rangos
Parámetros Ninguno
Resultado
ValoresÍndice de rangos
; es decir, valores negativos1
; es decir, valores no negativos2
nulo [Consulte El valor null en la página 184]3
sin clasificar4
También consulteSign en la página 340
PreDuringPostObjetivo: Valores de fecha de rangos en períodos pre-campaña, durante la campaña y post-campaña.
Parámetros
DescripciónNombreTipo
El comienzo del período depre-campaña
a ("pre_date")fecha
El comienzo de la campañab ("campaign_start_date")fecha
El final de la campañac ("campaign_end_date")fecha
El final del período post-campañad ("post_date")fecha
Resultado
ValoresÍndice de rangos
fechas anteriores a "a"; el rango de extremo inferior1
Fechas entre a (incluido) y b (excluido)2
fechas entre b (incluido) and c (excluido)3
fechas entre c (incluido) and d (excluido)4
fechas d y posteriores; el rango de extremosuperior
5
nulo [Consulte El valor null en la página 184]6
sin clasificar7
También consulte
Portrait Miner 7.1338
PreDuringPost
DayMultiplePrePost, WeekMultiplePrePost, MonthMultiplePrePost, YearMultiplePrePost en lapágina 330
DayPrePost, WeekPrePost, MonthPrePost, YearPrePost en la página 333
PrePost en la página 339
PrePostObjetivo: Valores de fecha de rangos en períodos pre-campaña and post-campaña.
Parámetros
DescripciónNombreTipo
El comienzo del período depre-campaña
a ("pre_date")fecha
La fecha de la campañab ("campaign_date")fecha
El final del período post-campañac ("post_date")fecha
Resultado
ValoresÍndice de rangos
fechas anteriores a "a"; el rango de extremo inferior1
Fechas entre a (incluido) y b (excluido)2
fechas entre b (incluido) and c (excluido)3
fechas c y posteriores; el rango de extremosuperior
4
nulo [Consulte El valor null en la página 184]5
sin clasificar6
También consulte
DayMultiplePrePost, WeekMultiplePrePost, MonthMultiplePrePost, YearMultiplePrePost en lapágina 330
DayPrePost, WeekPrePost, MonthPrePost, YearPrePost en la página 333
PreDuringPost en la página 338
339Guía de referencia del comando de creación de datos y TML
Capítulo 27: Rangos
SignObjetivo: Valores numéricos de rango de acuerdo con el signo.
Parámetros Ninguno
Resultado
ValoresÍndice de rangos
; es decir, valores negativos1
02
; es decir, valores positivos3
nulo [Consulte El valor null en la página 184]4
sin clasificar5
También consulteNegativeNonNegative en la página 337
Portrait Miner 7.1340
Sign
Capítulo 28XML en Portrait Miner
En esta sección:
• XML en Portrait Miner . . . . . . . . . . . . . . . . . . . . . . . . . . . .342• Especificación de metadatos para qsimportmetadata . .342• Especificación de agregación para qsmeasure . . . . . . .349• Especificación de derivación para qsderive . . . . . . . . .351• Especificación de selección para qsselect . . . . . . . . . .352• Especificación de tabulación cruzada para qsxt . . . . . .353• Especificación de mapeo del nombre de campo para
qsrenamefields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .356• Especificación del árbol de decisión para
qsdecisiontree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .357• Especificación de creación de un cuadro de mando para
qsscorecard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .359• Especificaciones de creación de rangos . . . . . . . . . . . .361• valores de atributo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .368
XML en Portrait MinerPara permitir el intercambio sencillo de resultados con otras aplicaciones, XML se utiliza en todo PortraitMiner, de acuerdo con la definición de esquema XML de Portrait Miner, http://www.quadstone.com/xml
Todas las entradas en XML a los comandos de creación de datos de Portrait Miner (y a cualquierfunción de Portrait Miner que se implemente a través de los comandos de creación de datos de PortraitMiner) se deben ingresar en el espacio de nombre de Portrait Miner,http://support.portraitsoftware.com. La manera más sencilla de garantizarlo es incluir el atributoxmlns="http://support.portraitsoftware.com" en el elemento de raíz del documento XML.
Los archivos XML creados por Portrait Miner incluyen automáticamente el atributo opcionalschemaLocation que señala esquemas en http://www.quadstone.com/xml/qs6.0A. Si utiliza uneditor que reconoce los esquemas para crear los archivos XML, podrá acceder a estos esquemasdirectamente desde Portrait Miner en:<pmhome>/server/qs6.0A/integration/schemas
(<pmhome> es el directorio de instalación de Portrait Miner). También encontrará ejemplos de cómoprocesar estos archivos XML en:<pmhome>/server/qs6.0A/etc/xslt
También consulte
Especificación de agregación para qsmeasure en la página 349
Especificaciones de creación de rangos en la página 361
Especificación de tabulación cruzada para qsxt en la página 353
Especificación del árbol de decisión para qsdecisiontree en la página 357
Especificación de derivación para qsderive en la página 351
Especificación de mapeo del nombre de campo para qsrenamefields en la página 356
Especificación de metadatos para qsimportmetadata en la página 342
Especificación de creación de un cuadro de mando para qsscorecard en la página 359
Especificación de selección para qsselect en la página 352
Especificación de metadatos para qsimportmetadata
metadata
DescripciónValorRequerido
El enfoque raízelementofocus
Portrait Miner 7.1342
XML en Portrait Miner
Ejemplos
Los ejemplos describen los metadatos para la importación.<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://www.quadstone.com/xml"><focus><comment>This focus was created for the Retail Analysisproject.</comment>
</focus></metadata>
focus
DescripciónValorOpcional
nombre del subenfoquepredeterminado
atributo del nombre del enfoquelaunch
Nombre de un subenfoqueatributo del nombre del enfoquename
Nombre del campo objetivoatributo del nombre de campoobjective
Nombre del campo particiónatributo del nombre de campopartition
Comentario del enfoqueelementocomment
Historial del enfoqueelementohistory
Campos a los cuales importar losmetadatos
elementofield
Definiciones de subenfoqueselementofocus
El atributo launch sólo puede aparecer en el enfoque raíz. Todos los demás subenfoquesdeben contar con un atributo de name.
Nota:
Ejemplo Describir el enfoque raíz.<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://www.quadstone.com/xml"><focus><comment>This focus was created for the Retail Analysisproject.</comment></focus>
</metadata>
field en metadatos
DescripciónValorRequerido
Nombre del campo que se estádefiniendo
atributo del nombre de camponame
nombre del campo al que se hacereferencia
atributo del nombre de camporef
343Guía de referencia del comando de creación de datos y TML
Capítulo 28: XML en Portrait Miner
DescripciónValorOpcional
Tipo de datos que representaneste campo
consultar tipo de campotype
Extensión de la representaciónde secuencia
atributo del enterolength
Si este campo es candidato parael análisis
atributo binarioanalysis
Si este campo es de exportaciónatributo binarioexport
Comentario del campoelementocomment
El campo creación de rangoselementobinning
Expresión FDL de derivación decampo
elementofdl
Campo selección de registroelementorecordselection
Nota: • Cuando se está definiendo un campo, por ejemplo como una derivación, es necesario contarcon un atributo name . Cuando se hace referencia al campo, por ejemplo para su inclusión enun subenfoque, es necesario contar con un atributo ref.
• length y type son atributos que solamente pueden utilizarse para definir un campo (cuandoel atributo name se ha asignado).
Ejemplos Describir un campo de secuencia:<field name="HomePostCode" type="string" length="8"/>
Describir un candidato para análisis:<field name="TimeAtAddressMonths" type="integer" analysis="true"/>
También consulte
Especificaciones de creación de rangos en la página 361
fdl
DescripciónValorRequerido
Expresión FDL que describe laderivación de campo
textocontent
DescripciónValorOpcional
La semilla numérica para elgenerador de números aleatorios
atributo del enteroseed
Ejemplos<fdl>mode(Store)</fdl><fdl>if PaymentMethod = "CA" then Amount else 0
Portrait Miner 7.1344
fdl
</fdl><fdl seed="123">rndUniform()</fdl>
comment
DescripciónValorRequerido
Descripción en texto delcomentario
textocontent
o
DescripciónValorRequerido
Un comentario recibe el formatoXHTML
atributo binarioxhtml
Descripción en texto con formatodel comentario, que puede
elemento de la secuenciadiv
contener cualquier marca XHTMLque esté permitida para apareceren el elemento <div>
Cuando se utiliza el atributo xhtml, siempre lleva el valor true.Nota:
Ejemplos
Agregar un comentario a un enfoque:<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://www.quadstone.com/xml"><focus><comment>This focus was created for the Retail Analysisproject.</comment>
</focus></metadata>
Agregar un comentario con formato a un enfoque:<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://www.quadstone.com/xml"><focus><comment xhtml="true">
<div>This focus was created for theRetail Analysis project.<br/>An audit is available on the<a href="http://intranet.company.com/audits">intranet</a>.
</div></comment>
</focus></metadata>
345Guía de referencia del comando de creación de datos y TML
Capítulo 28: XML en Portrait Miner
historyEl historial del enfoque es un único elemento del historial que contiene una serie de elementos defuncionamiento que no está vacía. Cada elemento de funcionamiento es texto sin formato que representaun único comando de creación de datos de Portrait Miner aplicado al enfoque.
DescripciónValorRequerido
Una acción en particular delhistorial
elementos de la secuenciaoperation
Ejemplo
Describe el historial de todas las acciones del enfoque:
<history><operation>qsimportflat -input DB.fdd -outputDB.ftr</operation><operation>qsupdate -from template.ftr -toDB.ftr</operation>
</history>
recordselection
DescripciónValorOpcional
Selección del registro numéricoelementonumeric
Selección de la fecha de registroelementodate
Selección del registro categóricoelementocategorical
El elemento recordselection toma uno de los subelementos numeric, date, o category.Nota:
Ejemplos
Selección de rango entero entre -2677 (incluido) y 16808 (excluido) y excluyendo los Nulos:
<field name="Income" type="integer"><recordselection><numeric nullhandling="exclude"><range min="-2677" minisincluded="true" max="16808"maxisincluded="false"/></numeric>
</recordselection></field>
Portrait Miner 7.1346
history
numeric
DescripciónValorRequerido
Especificar de qué manera laselección de registro manipulalos valores nulos
consultar nullhandlingnullhandling
DescripciónValorOpcional
Especificar la selección de rangonumérico
elementorange
El elemento numeric acepta múltiples subelementos de range .Nota:
Ejemplo
Eliminar la selección de un campo existente y cualquier selección Nula:<field name="Age"><recordselection><numeric nullhandling="nomention"/>
</recordselection></field>
date
DescripciónValorRequerido
Especificar de qué manera laselección de registro manipulalos valores nulos
consultar nullhandlingnullhandling
DescripciónValorOpcional
Especificar la selección de fechade rango
elementorange
El elemento date acepta múltiples subelementos de range.Nota:
Ejemplo
Selección de rango de fecha, sólo disponible con objetivos inclusivos, y fechas especificadas en unformato fijo:<field name="DefaultDate"><recordselection><date nullhandling="nomention"><range min="1940-01-03T16:22:46Z"max="1948-05-19T00:29:17Z"/><range min="1956-04-01T20:35:25Z"max="1973-09-01T04:48:59Z"/>
347Guía de referencia del comando de creación de datos y TML
Capítulo 28: XML en Portrait Miner
<range min="1981-03-15T16:54:52Z"max="2002-08-22T01:11:34Z"/><range min="2012-09-08T01:19:24Z"max="2029-12-08T05:32:51Z"/>
</date></recordselection>
</field>
categorical
DescripciónValorRequerido
Especificar de qué manera laselección de registro manipulalos valores nulos
consultar nullhandlingnullhandling
Especificar si la otra categoría seselecciona o se deselecciona.
consultar otherstatusotherstatus
DescripciónValorOpcional
Los valores de las categorías enla selección
elementoselect
El elemento categorical acepta múltiples subelementos select.Nota:
Ejemplo
Una selección categórica que utiliza otherstatus para deseleccionar cualquier campo que no hayasido mencionado explícitamente, por ejemplo, seleccionar únicamente las categorías D y E:<field name="Lifestage"><recordselection><categorical nullhandling="selected" otherstatus="deselected"><select status="selected" value="D"/><select status="selected" value="E"/>
</categorical></recordselection>
</field>
Quitar la selección de un campo categórico:<field ref="Lifestage"><recordselection><categorical nullhandling="selected"otherstatus="selected">
</categorical></recordselection>
</field>
Portrait Miner 7.1348
categorical
range
DescripciónValorOpcional
Rango mínimo de la selección deregistro
atributo numérico o de fechamin
Rango máximo de la selecciónde registro
atributo numérico o de fechamax
Incluir este valor en el rangomínimo
atributo binariominisincluded
Incluir este valor en el rangomáximo
atributo binariomaxisincluded
El elemento range requiere al menos un atributo min y uno max.Nota:
select
DescripciónValorRequerido
Nombre de la categoríaatributo de secuenciavalue
Incluir o excluir de la selecciónconsultar estadostatus
Especificación de agregación para qsmeasure
aggregations
DescripciónValorRequerido
Definiciones del campoelementosfield
Ejemplo
Describe la creación de dos nuevos agregados:<?xml version="1.0" encoding="UTF-8"?><aggregations xmlns="http://www.quadstone.com/xml">
<field name="mostCommonStore" context="aggregation"><fdl>mode(Store)</fdl>
</field><field name="averageSpendInStore_" context="aggregation">
<fdl>mean(Amount)</fdl><by>StoreSplitFunction(Store)</by>
</field></aggregations>
349Guía de referencia del comando de creación de datos y TML
Capítulo 28: XML en Portrait Miner
field en agregados
DescripciónValorRequerido
Nombre del campo que serácreado
atributo del nombre de camponame
Ya sea que este campo seautilizado en un archivo de
consultar medir contextocontext
agregación, de estadística o derastreo
Expresión FDL que describe laagregación
elementofdl
DescripciónValorOpcional
Tipo de datosdel campo queserá creado
consultar tipo de campotype
Extensión de uncampo desecuencia
atributo del enterolength
Si este campoes creado en el
atributo binariotemporary
enfoque desalida
La funciónsplit-by
elemento de la secuenciaby
Filtro de registrode la expresiónFDL
elemento de la secuenciawhere
Valorpredeterminado
elemento de la secuenciadefault
de laagregación
Ejemplos
Describe un campo con la agregación mode en el campo Store:<field name="mostCommonStore" context="aggregation"><fdl>mode(Store)</fdl></field>
Describe con la agregación mean en el campo Amount, dividida por función StoreSplitFunction:<field name="averageSpendInStore_" context="aggregation"><fdl>mean(Amount)</fdl>
Portrait Miner 7.1350
field en agregados
<by>StoreSplitFunction(Store)</by></field>
Especificación de derivación para qsderive
derivations
DescripciónValorRequerido
Definiciones del campoelementosfield
Ejemplo
Describir un conjunto de tres derivaciones:<?xml version="1.0" encoding="UTF-8"?><derivations xmlns="http://www.quadstone.com/xml">
<field name="TransMonth"><fdl>month(PurchaseDate)</fdl>
</field><field name="CashRecd">
<fdl>if PaymentMethod = "CA" then Amount else 0</fdl></field><field name="Random">
<fdl seed="123">rndUniform()</fdl></field>
</derivations>
field en derivaciones
DescripciónValorRequerido
Nombre del campo que serácreado
atributo del nombre de camponame
Expresión FDL que describirá elcampo que será creado
elementofdl
DescripciónValorOpcional
Tipo de datos del campo que serácreado
consultar tipo de campotype
Extensión de un campo desecuencia
atributo del enterolength
Ejemplos
351Guía de referencia del comando de creación de datos y TML
Capítulo 28: XML en Portrait Miner
Describir un campo utilizando una función incorporada:<field name="TransMonth"><fdl>month(PurchaseDate)</fdl></field>
Describir un campo utilizando una simple instrucción de control:<field name="CashRecd"><fdl>if PaymentMethod = "CA" then Amount else 0</fdl></field>
Describir un campo aleatorio con una semilla específica:<field name="Random"><fdl seed="123">rndUniform()</fdl></field>
Especificación de selección para qsselect
selections
DescripciónValorOpcional
Campos para crear estaselección
elementosfield
Ejemplo
Describir una selección aleatoria:<xml version="1.0" encoding="UTF-8"?><selections xmlns="http://www.quadstone.com/xml"?>
<field name="random" context="selection"><fdl seed="12345678">rndUniform() \< 0.1</fdl>
</field></selections>
field en selecciones
DescripciónValorRequerido
Nombre del campo que serácreado
atributo del nombre de camponame
Expresión FDL que describe laselección de registros.
Debe generar un entero con valorcero o un resultado
elementofdl
Este campo es para ser utilizadocon qsselect
selectioncontext
Portrait Miner 7.1352
Especificación de selección para qsselect
Ejemplo
Describir una selección aleatoria:<field name="random" context="selection"><fdl seed="12345678">rndUniform() \< 0.1</fdl></field>
Especificación de tabulación cruzada para qsxt
crosstabset
DescripciónValorRequerido
Tabulaciones cruzadas que seevaluarán
elementoscrosstab
DescripciónValorOpcional
Si el conjunto de tabulacionescruzadas representa un perfil, en
atributo binarioprofile
lugar de representar unatabulación cruzada
descripción del conjunto detabulaciones cruzadas
elemento de la secuenciadescription
Ejemplo
Describir un único conjunto de tabulaciones cruzadas:<?xml version="1.0" encoding="UTF-8"?><crosstabset xmlns="http://www.quadstone.com/xml"><description>No Description</description><crosstab indexscheme="compact1">
<description>No Description</description><specification>
<field name="Age"/><field name="Gender"/><function name="count"/><function name="mode">
<parameter>MaritalStatus</parameter></function>
</specification></crosstab></crosstabset>
353Guía de referencia del comando de creación de datos y TML
Capítulo 28: XML en Portrait Miner
crosstab
DescripciónValorRequerido
Esquema de clasificaciónutilizado en esta tabulacióncruzada
compact1indexscheme
Especificación de la tabulacióncruzada
elementospecification
DescripciónValorOpcional
Descripción de la tabulacióncruzada
elementos de la secuenciadescription
Ejemplo
Describir un único conjunto de tabulaciones cruzadas:<?xml version="1.0" encoding="UTF-8"?><crosstabset xmlns="http://www.quadstone.com/xml">
<description>No Description</description><crosstab indexscheme="compact1">
<description>No Description</description><specification>
<field name="Age"/><field name="Gender"/><function name="count"/><function name="mode">
<parameter>MaritalStatus</parameter></function>
</specification></crosstab>
</crosstabset>
specification en la tabulación cruzada
DescripciónValorRequerido
Funciones que se utilizarán comomediciones de tabulacionescruzadas
elementosfunction
DescripciónValorOpcional
Campos que se utilizarán comodesgloses de segmentación
elementosfield
Ejemplo
Portrait Miner 7.1354
crosstab
Describir una tabulación cruzada de los campos Age y Gender con medidas count() ymode(MaritalStatus):<specification>
<field name="Age"/><field name="Gender"/><function name="count"/><function name="mode">
<parameter>MaritalStatus</parameter></function>
</specification>
function
DescripciónValorRequerido
Identifica el nombre de la medidaatributo del nombre de camponame
DescripciónValorOpcional
Identifica el parámetro de campopara la función
atributo del nombre de campoparameter
Ejemplos
Describir una función sin parámetros:<function name="count"/>
Describir una función con un único parámetro MaritalStatus:<function name="mode"><parameter>MaritalStatus</parameter></function>
field en la tabulación cruzada
DescripciónValorRequerido
Nombre del campo que seutilizará en la tabulación cruzada
atributo del nombre de camponame
Ejemplo
Especificar el campo Age para su uso en la tabulación cruzada:<field name="Age"/>
355Guía de referencia del comando de creación de datos y TML
Capítulo 28: XML en Portrait Miner
Especificación de mapeo del nombre de campo paraqsrenamefields
mappingset
DescripciónValorRequerido
Mapeo de los nombres de campoelementosmap
Ejemplo
Describir el cambio de nombre de tres campos:<?xml version="1.0" encoding="UTF-8"?><mappingset xmlns="http://www.quadstone.com/xml">
<map><name>StartDate</name><alias>Initialized</alias>
</map><map>
<name>Age</name><alias>CurrentAge</alias>
</map><map>
<name>Gender</name><alias>Sex</alias>
</map></mappingset>
map
DescripciónValorRequerido
Nombre del elemento cuyonombre será cambiado
elemento de nombre de camponame
Nuevo nombre del campoelemento de nombre de campoalias
Ejemplo
Cambiar nombre de campo de StartDate a Initialized:<map>
<name>StartDate</name><alias>Initialized</alias>
</map>
Portrait Miner 7.1356
Especificación de mapeo del nombre de campo para qsrenamefields
Especificación del árbol de decisión paraqsdecisiontree
decisiontree
DescripciónValorRequerido
Especificación de creación delárbol de decisiones
elementospecification
Ejemplo
Describir una especificación para crear el árbol de decisiones con el campo objetivo Age y tres candidatospara el análisis. Como resultado se crea un nuevo campo PredictedAge:<?xml version="1.0" encoding="UTF-8"?><decisiontree xmlns="http://www.quadstone.com/xml">
<specification nlevels="3"><objectivefield>
<field name="Age"/></objectivefield><analysiscandidates>
<field name="Gender"/><field name="MaritalStatus"/><field name="HomeOwner"/>
</analysiscandidates><resultfield>
<field name="PredictedAge"/></resultfield>
</specification></decisiontree>
specification en el árbol de decisión
DescripciónValorRequerido
Profundidad del árbol porconstruir
atributo del enteronlevels
Campo objetivoelemento de nombre de campoobjectivefield
Candidatos para el análisiselemento nombres de campoanalysiscandidates
Nombre del campo creado pararesultados
elemento de nombre de camporesultfield
DescripciónValorOpcional
Restricciones en la creación delárbol de decisiones
elementosplitconstraints
357Guía de referencia del comando de creación de datos y TML
Capítulo 28: XML en Portrait Miner
DescripciónValorOpcional
Campo k-way splitelemento de nombre de campokwaysplitfield
Campo de particiónelemento de nombre de campopartitionfield
Metodología deprueba/capacitación que seutilizará
elementotesttrain
Ejemplo
Describir una especificación para crear el árbol de decisiones con el campo objetivo Age y tres candidatospara el análisis. Como resultado se crea un nuevo campo PredictedAge:<specification nlevels="3"><objectivefield>
<field name="Age"/></objectivefield><analysiscandidates>
<field name="Gender"/><field name="MaritalStatus"/><field name="HomeOwner"/>
</analysiscandidates><resultfield>
<field name="PredictedAge"/></resultfield></specification>
Nota: • Si el elemento <partitionfield> está vacío, qsdecisiontree ignorará toda particiónexistente antes de crear el árbol.
• Si el elemento <kwaysplitfield> está vacío, qsdecisiontree ignorará toda k-way splitexistente antes de crear el árbol.
splitconstraints
DescripciónValorRequerido
Tamaño mínimo de la poblaciónde un segmento
atributo del enterominpopsize
Tamaño mínimo del segmento depoblación tratado
atributo del enterominpopsizetreated
Tamaño mínimo del segmento depoblación controlado
atributo del enterominpopsizecontrol
DescripciónValorOpcional
La combinación de funciones seutiliza para seleccionar de quémanera se elige la división final
consultar combinar funcionescombiningfunction
Portrait Miner 7.1358
splitconstraints
Nota: • Cuando se asigna un elemento partitionfield tanto minpopsizetreated comominpopsizecontrol son atributos splitconstraint válidos. De lo contrario, sólo debeconfigurarse el atributo minpopsize.
• El atributo combiningfunction sólo debe utilizarse cuando está definido el elementokwaysplitfield.
testtrain
DescripciónValorRequerido
Proporción de registros, númeroentre cero y uno, que se utilizará
atributo realthreshold
para capacitar la creación delárbol de decisiones
Campo aleatorio que define ladivisión de pruebas ycapacitaciones
elemento de nombre de camponamefield
Ejemplo<testtrain threshold="0.5">
<field name="randomField"/></testtrain>
Especificación de creación de un cuadro de mandopara qsscorecard
scorecard
DescripciónValorRequerido
Especificación para la creaciónde un cuadro de mando
elementospecification
Ejemplo
Describir una especificación para crear tarjetas de puntuación con el campo objetivo Age y tres candidatospara el análisis. Como resultado se crea un nuevo campo PredictedAge:<?xml version="1.0" encoding="UTF-8"?><scorecard xmlns="http://www.quadstone.com/xml">
<specification modeltype="value" nfields="2" iscontinuous="true"><objectivefield>
<field name="Age"/></objectivefield><analysiscandidates>
359Guía de referencia del comando de creación de datos y TML
Capítulo 28: XML en Portrait Miner
<field name="Gender"/><field name="MaritalStatus"/><field name="HomeOwner"/>
</analysiscandidates><resultfield>
<field name="PredictedAge"/></resultfield>
</specification></scorecard>
specification en cuadro de mando
DescripciónValorRequerido
Crea un cuadro de mandoobjetivo y continuo, sin que
atributo binarioiscontinuous
importe la configuración demodeltype
Qué tipo de modelo (binario)crear (ignorado si
consultar tipos de modelomodeltype
iscontinuous es verdadero);si no está configurado, crear unacuadro de mando objetivocontinuo
Cantidad de campos en el cuadrode mando creado
atributo del enteronfields
Campo objetivoelemento de nombre de campoobjectivefield
Candidatos para el análisiselemento nombres de campoanalysiscandidates
Nombre del campo de resultadoscreado
elemento de nombre de camporesultfield
DescripciónValorOpcional
Umbral que si los candidatos parael análisis superan, quedan
atributo realcorrelationthreshold
excluidos por tener demasiadacorrelación con el objetivo
Metodología deprueba/capacitación que seutilizará
elementotesttrain
Ejemplo<specification modeltype="value" nfields="2" iscontinuous="true">
<objectivefield><field name="Age"/>
</objectivefield><analysiscandidates>
Portrait Miner 7.1360
specification en cuadro de mando
<field name="Gender"/><field name="MaritalStatus"/><field name="HomeOwner"/>
</analysiscandidates><resultfield>
<field name="PredictedAge"/></resultfield>
</specification>
Especificaciones de creación de rangos
binning
DescripciónValorOpcional
Nombre de la creación de rangosatributo de secuencianame
Creación de rangos numéricoselementonumeric
Creación de rangos de fechaelementodate
Creación de rangos geográficoselementogeographic
Creación de rangos categóricaelementocategorical
El elemento binning lleva solo uno de los subelementos numeric, date, geographicalcategorical.
Nota:
Ejemplos
Agregar una creación de rangos numérica al campo LoanAmount:<field name="LoanAmount">
<binning name="LoanAmount-1"><numeric targetnbins="10" style="equalwidth"/>
</binning></field>
Agregar una creación de rangos categórica al campo Gender:<field name="Gender">
<binning name="Gender-1"><categorical>
<categories><category name="male" levelname="unnamed node"><category name="1" levelname="base categories"
value="1"/></category>
<category name="female"><category name="2" value="2"/></category>
</categories></categorical>
</binning></field>
361Guía de referencia del comando de creación de datos y TML
Capítulo 28: XML en Portrait Miner
Agregar una creación de rangos de campos geográficos al campo StateCode:<field name="StateCode">
<binning><geographic>
<maplocation>/home/data/maps/us.mif</maplocation></geographic>
</binning></field>
numeric
DescripciónValorOpcional
Cantidad necesaria de rangosatributo del enterotargetnbins
Ajustar automáticamente lacantidad de rangos para crear
atributo binarioadjustnbins
límites claros entre rangos. Valorpredeterminado: true.
Si la creación de rangos en uncampo de valor real debe tenerlímites con números enteros
atributo binarioforcewholenumbered
Tipo de creación de rangosaplicada
consultar estilo de rangostyle
Visualización de la creación derangos
consultar visualización decreación de rangos
binning
Definición de rango del límiteinferior. De manera
elementominendparam
predeterminada, los rangos deigual ancho utilizan endbinsauto, mientras que igualpoblación no utiliza none
Definición de rango del límitesuperior. De manera
elementomaxendparam
predeterminada, los rangos deigual ancho utilizan endbinsauto, mientras que igualpoblación no utiliza non
Límites de rangos para el estilode creación de rangos definidopor el usuario
elementoboundaries
Ejemplo
Portrait Miner 7.1362
numeric
Agregar una creación de rangos numéricos de igual población con diez rangos a un campo:<binning name="LoanAmount-1">
<numeric targetnbins="10" style="equalwidth"/></binning>
date
EfectoOpcional
Cantidad necesaria de rangosatributo del enterotargetnbins
Período de la creación de rangosconsultar período de fechabinby
Qué rango de fecha crear ydesde qué período de fecha
consultar referencia de fechareference
Cantidad de períodos de tiempopara un rango
atributo del enterobinwidth
Tipo de creación de rangosaplicada
consultar estilo de rangostyle
Como se deben visualizar losrangos
consultar visualización decreación de rangos
binning
Definición de rango del límiteinferior. De manera
elementominendparam
predeterminada, los rangos deigual ancho utilizan endbinsautomáticos, mientras queigual población no utilizaninguno
Definición de rango del límitesuperior. De manera
elementomaxendparam
predeterminada, los rangos deigual ancho utilizan endbinsautomáticos, mientras queigual población no utilizaninguno
Límites de rangos para el estilode creación de rangos definidopor el usuario
elementoboundaries
Ejemplo
Crear una fecha de rangos, por cuatrimestres, a partir del 1 de marzo de 1992.<date display="equalwidth" binwidth="1" binby="quarter"reference="auto" style="equalwidth"><minendparam type="fixed">
<boundary>1992-03-01T00:00:00Z</boundary></minendparam>
363Guía de referencia del comando de creación de datos y TML
Capítulo 28: XML en Portrait Miner
<maxendparam type="none"/><boundaries endbins="low">
<boundary>1992-03-01T00:00:00Z</boundary><boundary>1992-04-01T00:00:00Z</boundary><boundary>1992-07-01T00:00:00Z</boundary><boundary>1992-10-01T00:00:00Z</boundary><boundary>1993-01-01T00:00:00Z</boundary><boundary>1993-04-01T00:00:00Z</boundary><boundary>1993-07-01T00:00:00Z</boundary><boundary>1993-10-01T00:00:00Z</boundary><boundary>1994-01-01T00:00:00Z</boundary><boundary>1994-04-01T00:00:00Z</boundary><boundary>1994-07-01T00:00:00Z</boundary><boundary>1994-10-01T00:00:00Z</boundary><boundary>1995-01-01T00:00:00Z</boundary><boundary>1995-04-01T00:00:00Z</boundary>
</boundaries></date>
categorical
DescripciónValorRequerido
Descripción dela jerarquía dela categoría
elementocategories
Ubicación delarchivo que
elemento de archivohierarchylocation
contiene ladescripción dejerarquía de lacategoría
Cantidad decategorías porcrear
elementoselectn
Solamente es necesario uno de estos elementos para definir una creación de rangos categórica.Nota:
Ejemplo Describir una creación de rangos categórica:<binning name="Gender-1">
<categorical><categories>
<category name="male" levelname="unnamed node"><category name="1" levelname="base categories"value="1"/>
</category><category name="female">
<category name="2" value="2"/></category>
</categories></categorical>
</binning>
Portrait Miner 7.1364
categorical
categories
DescripciónValorRequerido
Una categoría en la jerarquíaelementoscategory
Ejemplo
Describir la jerarquía categórica:<binning name="Gender-1">
<categorical><categories>
<category name="male" levelname="unnamed node"><category name="1" levelname="base categories"value="1"/>
</category><category name="female">
<category name="2" value="2"/></category>
</categories></categorical>
</binning>
category
DescripciónValorRequerido
Nombre de la categoríaatributo de secuencianame
Valor de esta categoríanumérico, fecha o atributo de lasecuencia
value
Descripción de una subcategoríaelementoscategory
DescripciónValorOpcional
Nombre del nivel de la jerarquíacategórica, necesario solamente
atributo de secuencialevelname
en la primera categoría de cadaconjunto
Nota: • Un elemento category tiene un valor de value o bien un elemento de category.• Todas las categorías deben recurrir a la misma profundidad.
Ejemplos
Describa el mapeo de categorías entre el valor del campo y la etiqueta:<category name="female">
<category name="1" value="1"/></category>
365Guía de referencia del comando de creación de datos y TML
Capítulo 28: XML en Portrait Miner
Describa la agrupación en categorías de varios valores de campo en una sola etiqueta:<category name="InArrears">
<category name="2" value="2"/><category name="6" value="6"/><category name="14" value="14"/><category name="15" value="15"/><category name="18" value="18"/><category name="25" value="25"/></category>
selectn
DescripciónValorRequerido
Cantidad de categorías por crearatributo del enteron
DescripciónValorOpcional
Cantidad mínima de registros encada categoría
atributo del enteromincatsize
geographic
DescripciónValorRequerido
Ubicación del archivo de mapaelemento de archivomaplocation
Ejemplo
Agregar una creación de rangos de campos geográficos al campo StateCode:<geographic>
<maplocation>/home/data/maps/us.mif</maplocation></geographic>
minendparam
DescripciónValorOpcional
Tipo de fin del estilo de rangosconsultar fin estilo de rangostype
Valor fijo de fin de estilo derangos
elementoboundary
Ejemplo
Describe rangos con el fin más bajo del estilo de rangos en el valor 18 :<binning name="Age-1">
<numeric targetnbins="10" style="equalwidth"><minendparam type="fixed">
<boundary falls="right">18.0</boundary>
Portrait Miner 7.1366
selectn
</minendparam></numeric>
</binning>
maxendparam
DescripciónValorOpcional
Tipo de fin del estilo de rangosconsultar fin estilo de rangostype
Valor fijo de fin de estilo derangos
elementoboundary
Ejemplo
Describe rangos con el fin más alto del estilo de rangos establecido automáticamente por Portrait Miner:<binning name="Age-1">
<numeric targetnbins="10" style="equalpopulation"><maxendparam type="auto"/>
</numeric></binning>
boundaries
DescripciónValorOpcional
Qué fines de estilo de rangosestán habilitados
consultar fin de estilo de rangosendbins
Definición del límite de rangoselementosboundary
Ejemplo
Definir los límites de rangos definidos por el usuario:<binning name="Age-1">
<numeric style="userdefined"><boundaries endbins="both">
<boundary falls="right">20.0</boundary><boundary falls="right">30.0</boundary><boundary falls="right">40.0</boundary>
</boundaries></numeric>
</binning>
boundary
DescripciónValorRequerido
Valor del límitenumérico o fechacontent
367Guía de referencia del comando de creación de datos y TML
Capítulo 28: XML en Portrait Miner
DescripciónValorOpcional
Tipo de límiteconsultar fin estilo de rangostype
El límite es inclusivo o exclusivoconsultar inclusión de límitesfalls
Los valores de fecha deben suministrarse de manera estándar, con el formatoAAAA-MM-DDTHH:MM:SSZ.
Nota:
Ejemplo
Definir el límite que incluye el valor 20:<boundary falls="right">20.0</boundary>
Definir el límite que no incluye el valor 20:<boundary falls="left">30.0</boundary>
Definir un límite de fecha:<boundary>1992-03-01T00:00:00Z</boundary>
valores de atributoValoresNombre
nomention | include | include_only |exclude | selected | deselected
nullhandling
selected | deselectedstatus
selected | deselectedotherstatus
integer | real | string | date |unknown | numeric
field type
none | auto | fixedend bin style
equalpopulation | equalwidth |userdefined
bin style
none | both | high | lowend bins
izquierda | derechaboundary inclusion
equalwidth | compactendsbinning display
auto | hora | minuto | segundo | día| semana | mes | cuatrimestre | año |década | siglo
date period
auto | minend | maxenddate reference
Portrait Miner 7.1368
valores de atributo
ValoresNombre
aggregation | statistic | trackermeasure context
unused | mean | meanlessstddev |meanlesssqrtstddev | min
combining function
risk | response | churn | satisfaction| dissatisfaction
model types
369Guía de referencia del comando de creación de datos y TML
Capítulo 28: XML en Portrait Miner
Índice
(data-build command) 106* (operador FDL) 195%, mod (operador FDL) 195
AAbrir conectividad de base de datos (ODBC) 32
crear o modificar con qsdbaccess 32abs (función FDL) 278acerca de diagramas de ferrocarriles 148Acerca del Asistente de scorecard 118ActionROI (función FDL) 306ActionROIAnnualized (función FDL) 307addcenturies, addcenturiescountbackwards (funcionesFDL) 223adddays (función FDL) 224addhours (función FDL) 224addminutes (función FDL) 225addmonths, addmonthscountbackwards (funcionesFDL) 226addseconds (función FDL) 228addweeks (función FDL) 229addyears, addyearscountbackwards (funciones FDL)230adición 195
operador FDL 195agregación 66
utilizando qsmeasure 66agregación de registros 66
utilizando qsmeasure 66agregación de un campo 152
en un archivo de agregaciones TML 152análisis de la cesta de mercado mediante qsruleminer129analizar un documento QMML mediante qsqmmledit134and (operador FDL) 198any (función de agregación) 162, 165
en mediciones y derivaciones 162
archivo de descripción de datos planos 40, 137creación a partir de archivo plano medianteqsgenfdd 40crear elementos desde QMML mediante qslt 137
archivo de enfoque 94, 95, 96, 113copiar mediante qscopy (copia independiente) 94copiar mediante qslink (copia enlazada) 95eliminación con qsremove 96mover/renombrar con qsmove 95ver tamaños de archivo y dependencias medianteqsinfo 113
archivo de texto 40, 42creación de metadata mediante qsgenfdd 40importación utilizando qsimportflat 42
archivo plano 40, 42, 44creación a partir de un enfoque medianteqsexportflat 44creación de metadata mediante qsgenfdd 40importación utilizando qsimportflat 42
argumentos de función (FDL) 192asignación de un valor a una variable 190
en FDL 190asignación de variables (FDL) 190atributos de funciones (FDL) 194auditar un enfoque 102
con enfoque 102automatización de creaciones de datos 28
utilizando qsbuild 28
Bbin (función FDL) 326Boolean (creación de rangos) 327borrar un archivo de enfoque 96
mediante qsremove 96búsqueda 318
de valores en una tabla de referencias 318búsqueda de tabla de referencia 318
Ccadena 218, 254, 255, 256, 257, 258, 259, 260, 261,
262, 263, 265buscar subcadenas utilizando FDL 255buscar una cadena al final utilizando FDL 254buscar una cadena en el inicio utilizando FDL 260codificación soundex 259convertir un campo a 218eliminar espacios en blanco con FDL 265extracción de una cadena de la posición de inicioo final utilizando FDL 263extraer una subcadena de acuerdo a la posicióny longitud utilizando FDL 257extraer una subcadena final con FDL 258extraer una subcadena inicial utilizando FDL 256largo 261substitute 262
cambiar el nombre de un archivo de enfoque 95mediante qsmove 95
cambiar el nombre de un campo 75mediante qsrenamefields 75
campo 63, 152agregación en un archivo de agregaciones TML152derivación en una archivo de derivaciones,rastreos, selecciones o agregaciones TML 152derivar mediante qsderive 63
campo de marca 212crear desde una selección 212
campos 75renombrar mediante qsrenamefields 75
ceil (función FDL) 278clamp (función FDL) 208clase de carácter 268
en una expresión regular en FDL 268clasificar registros en un enfoque 62
utilizando qssort 62cláusula default (TML) 154cláusula where (TML) 154coincidencia de cadena 268
en FDL 268coincidencia de patrones 268
en FDL 268comandos de creación de datos 16, 21
acerca de 16opciones estándar de la línea de comandos 21
comandos de creación de datos de Portrait Miner16, 21
acerca de 16opciones estándar de la línea de comandos 21
combinación de enfoques 90mediante qsmerge 90
combinar registros 90mediante qsmerge 90
comentarios 186en FDL 186
compatibilidad 185de tipos de datos en FDL 185
compatibilidad de tipos 185en FDL 185
compatibilidad de tipos de datos 185en FDL 185
compilar un documento QMML mediante qsqmmledit134concat (función FDL) 254cond (función FDL) 208conexión con base de datos 32
crear o modificar con qsdbaccess 32Conexión de base de datos del usuario 32
crear o modificar con qsdbaccess 32confintlower (función de agregación) 162, 165
en mediciones y derivaciones 162confintupper (función de agregación) 162, 166
en mediciones y derivaciones 162conjunto de datos de Excel 48, 50, 107
creación a partir de un enfoque medianteqsexportstat 50descripción mediante qsdescribestat 107Importación mediante qsimportstat 48
conjunto de datos SAS 48, 50, 107creación a partir de un enfoque medianteqsexportstat 50descripción mediante qsdescribestat 107importación mediante qsimportstat 48
conjunto de datos SPSS 48, 50, 107creación de un mediante qsexportstat 50Descripción mediante qsdescribestat 107importación mediante qsimportstat 48
conjunto de reglas 134agregar o eliminar elementos de un documentoQMML mediante qsqmmledit 134
conversión de tipos de datos 186en FDL 186
convertir un archivo de metadata 140mediante qsqsfmtosas 140
convertir un archivo QMML 139mediante qsqmml2sas 139mediante qsqmml2sql 139
convertir un campo 216, 217, 218a entero 217a real 217a una cadena 218a una fecha 216
copia enlazada de un archivo de enfoque 95mediante qslink 95
Portrait Miner 7.1372
copiar metadata de enfoque 82mediante qsupdate 82
copiar un archivo de enfoque 94, 95mediante qscopy (copia independiente) 94mediante qslink (copia enlazada) 95
cos (función FDL) 279count (función de agregación) 162, 167
en mediciones y derivaciones 162countcenturies (función FDL) 231countdays (función FDL) 231counthours (función FDL) 232countminutes (función FDL) 233countnonnull/countnonnulls (función de agregación)
162, 167en mediciones y derivaciones 162
countnull/countnulls (función de agregación) 162, 168
en mediciones y derivaciones 162countseconds (función FDL) 234countunique (función de agregación) 162, 169
en mediciones y derivaciones 162countuniquenonnull (función de agregación) 162,
169en mediciones y derivaciones 162
countweeks (función FDL) 235countwholecenturies, countwholecenturiesbackwards(funciones FDL) 236countwholedays (función FDL) 237countwholehours (función FDL) 238countwholeminutes (función FDL) 238countwholemonths, countwholemonthsbackwards(función FDL) 239countwholeseconds (función FDL) 241countwholeweeks (función FDL) 242countwholeyears, countwholeyearsbackwards(funciones FDL) 243countyears (función FDL) 244creación de 33
enfoque a partir de una tabla de base de datosutilizando qsimportdb 33
crear reglas de asociación mediante qsruleminer 129crear un cuadro de mando 119
mediante qsscorecardwizard (copia vinculada)119
crear un enfoque 52a partir de datos en otro enfoque medianteqsimportfocus 52
cuadro de mando 109, 126cómo crear una foto de modelo con qsscsnapshot109creación mediante qsscorecard 126
Ddatos booleanos 185
en FDL 185datos de texto 184
en FDL 184datos de tiempo 184
en FDL 184day (función FDL) 245DayFrom (creación de rangos) 328DayMultipleFrom (creación de rangos) 328DayMultipleNumBins (creación de rangos) 329DayMultiplePrePost (creación de rangos) 330DayMultipleTo (creación de rangos) 331DayMultipleWidth (creación de rangos) 332dayofweek (función FDL) 245DayPrePost (creación de rangos) 333DayRange (creación de rangos) 334DayTo (creación de rangos) 335dblookup (función FDL) 318deciles 177
en FDL 177definición de parámetros de las creaciones de datos
28con qsbuild 28
definiciones de función (FDL) 192delimitadores 270
en una expresión regular de FDL 270dependencias entre enfoques 113
ver mediante qsinfo 113derivación de un campo 152
en un archivo de derivaciones, rastreos,selecciones o agregaciones TML 152
derivar 70un campo mediante qstrack 70
derivar un campo 63, 70mediante qsderive 63mediante qstrack 70
desigualdad 196operador FDL 196
desviación estándar de un campo 178distribución binomial 300distribución de Poisson 303distribución exponencial 301distribución gamma 302distribución normal 302div (operador FDL) 195división 195
operador FDL 195documento QMML 134, 137
editar o compilar elementos mediante qsqmmledit134transformar elementos mediante qslt 137visualizar elementos mediante qsqmmlview 134
373Guía de referencia del comando de creación de datos y TML
duplicar registros 90eliminar elementos mediante qsmerge 90
Eeditar un documento QMML mediante qsqmmledit 134eliminar un archivo de enfoque 96
mediante qsremove 96endswith (función FDL) 254enfoque 16, 42, 44, 48, 62, 90
clasificar registros utilizando qssort 62creación a partir de un archivo plano utilizandoqsimportflat 42eliminar registros duplicados mediante qsmerge90enfoque partir de un archivo SAS u otro conjuntode datos creado por terceros medianteqsimportstat 48exportación a un archivo plano medianteqsexportflat 44solo lectura 16
enfoque de plantilla 82en qsupdate 82
enfoque de solo lectura 16entero 217
convertir un campo a 217EqualRange (creación de rangos) 336EqualRangeWidth (creación de rangos) 337espacio en blanco 265
eliminar con FDL 265estadística 158
evaluación de un archivo de estadística TML 158estadística de enfoque 158
evaluación en un archivo de estadísticas TML158
evaluación condicional en FDL 187, 208, 209uso de expresiones if y case 187uso de la función cond 208uso de la función iff 209
exp (función FDL) 279exportación 50, 78
de comentarios a un archivo XML a partir de unenfoque 78de metadata de un enfoque a un archivo XML 78de metadata desde un enfoque hacia un archivoXML 78de un enfoque a un archivo SAS u otro conjuntode datos creado por terceros medianteqsexportstat 50
exportación de datos 50a un archivo SAS u otro conjunto de datos creadopor terceros mediante qsexportstat 50
exportar datos 37, 38, 44a un archivo plano mediante qsexportflat 44a una tabla de base de datos utilizando qsdbinsert37a una tabla de base de datos utilizandoqsdbupdate 38
exportar metadata de un enfoque a un archivo XML78expresión aritmética 186
en FDL 186expresión básica 186
en FDL 186expresión case 189
en FDL 189expresión case (FDL) 189expresión if 188
en FDL 188expresión if (FDL) 188expresión lógica 186
en FDL 186expresión regular 268, 272, 273, 274
composición 268probando una cadena para encontrar unacoincidencia 272reemplazar la primera subcadena que coincide274reemplazo de todas las subcadenas quecoinciden 273
expresión, lista de expresiones 186en FDL 186
extracción de secuencias mediante qsruleminer 129extraer de un archivo de archivo mediante qsunzip 98
FFDL 137, 182, 184, 186, 187, 190, 192, 195, 196,
198, 199, 206, 268acerca de 182coincidencia de cadena 268expresión, lista de expresiones 186expresiones if y case 187funciones 192, 199
definidas por el usuario 192incorporadas 199
operadores 195, 196, 198aritméticos 195lógicos 198relacionales 196
palabras reservadas 206prioridad 199
de operadores 199tipos de datos 184
Portrait Miner 7.1374
FDL (continuado)transformar elementos desde o hacia QMMLmediante qslt 137variables 190
fecha 216convertir un campo a 216
Field Derivation Language 182consulte FDL 182
filtrado de registros 154en un archivo de agregaciones TML 154
find (función FDL) 255first (función de agregación) 162, 170
en mediciones y derivaciones 162floor (función FDL) 280focus!describing using qsdescribe qsdescribe 106formato de fecha 55
Para archivos planos y expresiones FDL 55Foto de modelo 108
descomprimir con qshtmlunpack 108función 186, 192, 199
en FDL 186, 199aplicación 186incorporada 199
en FDL!defining 192funciones de agregación 162
para usar en mediciones y derivaciones 162funciones de división 156
para desglosar agregaciones 156
Ggmt2edt (función FDL) 246guardar un archivo de enfoque 97
mediante qsarchive 97
Hhour (función FDL) 246
Iidentificador 186
en FDL 186identificador estadístico 186
en FDL 186iff (función FDL) 209ifnull (función FDL) 210igualdad 196
operador FDL 196importación 78
de comentarios a un enfoque desde un archivoXML 78
importación (continuado)de metadata a un enfoque a partir de un archivoXML 78de metadata a un enfoque desde un archivo XML78
importación de datos 42, 48a partir de un archivo plano utilizando qsimportflat42a partir de un archivo SAS u otro conjunto dedatos creado por terceros mediante qsimportstat48
importación de metadata desde un archivo XML a unenfoque 78importar datos 33, 52
de un enfoque existente mediante qsimportfocus52de una tabla de base de datos utilizandoqsimportdb 33
importar metadata de un enfoque a otro 82mediante qsupdate 82
inicialización de una variable 190en FDL 190
inicialización y asignación de variables 190en FDL 190
instrucción create (TML) 152instrucción de calcular (TML) 158instrucción temporary (TML) 152isnull (función FDL) 211isselected (función FDL) 212
Jjerarquía de rangos categóricos 142
crear un mapa de categorías mediante qsmapgen142
Llargo de una cadena 261last (función de agregación) 162, 171
en mediciones y derivaciones 162left (función FDL) 256letra 264, 265
mayúscula 265convertir una cadena a 265
minúscula 264convertir una cadena a 264
letra mayúscula 265convertir una cadena a 265
literal de cadena 186en FDL 186
literal de fecha 186en FDL 186
375Guía de referencia del comando de creación de datos y TML
literal numérico 186en FDL 186
log (función FDL) 280log10 (función FDL) 281logbase (función FDL) 281
Mmagnitud de un número 278mapa de categorías 142
crear una jerarquía de rangos categóricosmediante qsmapgen 142
match (función FDL) 272max (función de agregación) 162
en mediciones y derivaciones 162max (función de agregación). 171max, maxnonnull (funciones FDL multi-argument). 282mayor a (o igual a) 196
operadores FDL 196mean (función de agregación) 162, 172
en mediciones y derivaciones 162mean, meannonnull ( funciones FDL multi-argument)283median (función de agregación) 162, 173
en mediciones y derivaciones 162medición 66
utilizando qsmeasure 66medición de transacciones 66
utilizando qsmeasure 66member (función FDL) 319menor a (o igual a) 196
operadores FDL 196menos 195
operador FDL 195metadata 40, 82
copiar de un enfoque a otro mediante qsupdate82creación de metadata de archivo plano medianteqsgenfdd 40
mid (función FDL) 257min (función de agregación) 162, 173
en mediciones y derivaciones 162min, minnonnull (funciones FDL multi-argument) 283minúsculas 264
convertir una cadena a 264minute (función FDL) 247mod, % (operador FDL) 195mode (función de agregación) 162, 174
en mediciones y derivaciones 162modelo 109
cómo crear una foto de modelo con qsdtsnapshoto qsscsnapshot 109
moderatio (función de agregación) 162, 175en mediciones y derivaciones 162
month (función FDL) 248MonthFrom (creación de rangos) 328MonthMultipleFrom (creación de rangos) 328MonthMultipleNumBins (creación de rangos) 329MonthMultiplePrePost (creación de rangos) 330MonthMultipleTo (creación de rangos) 331MonthMultipleWidth (creación de rangos) 332MonthPrePost (creación de rangos) 333MonthRange (creación de rangos) 334MonthTo (creación de rangos) 335mover un archivo de enfoque 95
mediante qsmove 95muestreo 292, 293, 294, 295, 296, 297
bidireccional estratificado 296partición 293
en subpoblaciones de tamañoaproximadamente igual 293
prueba/capacitación 292, 297mediante el uso de testTrainSplit 297uso de numericTestTrainSplit 292
prueba/capacitación/validación 292, 297mediante el uso denumericTestTrainValidateSplit 292mediante el uso de testTrainValidateSplit 297
selección de un número exacto de registros 294selección de un porcentaje exacto de registros295
muestreo bidireccional estratificado 296multiplicación 195
operador FDL 195
NNegativeNonNegative (creación de rangos) 337normalizar valores de campo 284normalize (función FDL) 284not (operador FDL) 198now (función FDL) 248numericTestTrainSplit (función FDL) 292numericTestTrainValidateSplit (función FDL) 292número aleatorio 300, 301, 302, 303, 304
con distribución binomial 300con distribución de Poisson 303con distribución exponencial 301con distribución gamma 302con distribución normal 302con distribución uniforme en un intervalo 304simula tirar una moneda al aire 301
número aleatorios 300en FDL 300
Portrait Miner 7.1376
número de índice 177, 326para un rango 326para un segmento de tabulación cruzada 177
nvl (función FDL) 210
OOfferROI (función FDL) 308OfferROIAnnualized (función FDL) 309operadores 195, 196, 198, 270
aritméticos 195en FDL 195
en una expresión regular en FDL 270lógicos 198
en FDL 198relacionales 196
en FDL 196operadores aritméticos 195
en FDL 195operadores lógicos 198
en FDL 198operadores relacionales 196
en FDL 196or (operador FDL) 198
Ppalabras reservadas 149, 206
FDL 206TML 149
percentage (función de agregación) 162, 175en derivaciones 162
percentagerate (función de agregación) 162, 176en derivaciones 162
Perfil y Auditoría 108descomprimir con qshtmlunpack 108
plan de creación de datos 28con qsbuild 28
por cláusula (TML) 156pow (función FDL) 285PreDuringPost (creación de rangos) 338PrePost (creación de rangos) 339prioridad de operadores 199
en FDL 199probar la pertenencia a un conjunto 319product, productnonnull (funciones FDL) 285promedio 172, 283
de una lista de números 283de valores en un campo 172
prueba/capacitación 292, 297mediante el uso de numericTestTrainValidateSplit292mediante el uso de testTrainSplit 297
prueba/capacitación (continuado)mediante el uso de testTrainValidateSplit 297uso de numericTestTrainSplit 292
Qqsarchive (comando de creación de datos) 97, 98qsaudit 102
crear un Perfil y Auditoría con qsaudit 102qsaudit (comando de creación de datos) 102qsbuild (comando de creación de datos) 28qscopy (comando de creación de datos) 94qsdbaccess (comando de creación de datos) 32qsdbcreatetable 35qsdbinsert 37qsdbupdate 38qsdecisiontree (comando de creación de datos) 125qsderive (comando de creación de datos) 63qsdescribelicense (comando de creación de datos)114qsdescribestat (comando de creación de datos) 107qsdtsnapshot (comando de creación de datos) 109qsexportflat 44qsexportmetadata (comando de creación de datos)78qsexportstat (comando de creación de datos) 50qsgenfdd 40qshtmlunpack (comando de creación de datos) 108qsimportdb 33qsimportflat 42qsimportfocus 52qsimportmetadata (comando de creación de datos)78qsimportstat (comando de creación de datos) 48qsinfo (comando de creación de datos) 113qsjoin (comando de creación de datos) 86qslink (comando de creación de datos) 95qslt (comando de creación de datos) 137qsmapgen (comando de creación de datos) 142qsmeasure (comando de creación de datos) 66qsmerge (comando de creación de datos) 90qsmove (comando de creación de datos) 95qsqmml2sas (comando de creación de datos) 139qsqmmledit (comando de creación de datos) 134qsqmmltosql (comando de creación de datos) 139qsqmmlview (comando de creación de datos) 134qsqsfmtosas (comando de creación de datos) 140qsremove (comando de creación de datos) 96qsruleminer (comando de creación de datos) 129qsscorecard (comando de creación de datos) 126qsscorecardwizard (comando de creación de datos)119qsscsnapshot (comando de creación de datos) 109
377Guía de referencia del comando de creación de datos y TML
qsselect (comando de creación de datos) 73qssettings (comando de creación de datos) 102qssort (comando de creación de datos) 62qstrack (comando de construcción de datos) 70qsupdate (comando de creación de datos) 82qsxt (comando de creación de datos) 112
Rraíz cuadrada de un número 288rango de carácter 268
en una expresión regular en FDL 268rangos 156
para desglosar agregaciones 156rankOrder (función FDL) 321rankOrderApprox (función FDL) 321rankOrderApproxMean (función FDL) 322rankOrderMean (función FDL) 322rastrear cambios de estado 70
mediante qstrack 70rastreo de cambio de estado 70
mediante qstrack 70real 217
convertir un campo a 217realizar un perfil de un enfoque 102
con qsaudit 102redondear a enteros 278
redondear hacia arriba 278redondear a un entero 286
redondeo hasta el entero más cercano 286redondear un entero 280
redondear hacia abajo 280referencia inversa 270
en una expresión regular en FDL 270regla 134
agregar elementos a un documento QMMLmediante qsqmmledit 134
relación 186en FDL 186
renombrar un archivo de enfoque 95mediante qsmove 95
replace (función FDL) 212replaceall (función FDL) 273replacefirst (función FDL) 274resto 195
operador FDL 195restricción de un numero a un intervalo 208RetentionActionROI (función FDL) 310RetentionActionROIAnnualized (función FDL) 311RetentionOfferROI (función FDL) 313RetentionOfferROIAnnualized (función FDL) 314retorno de la inversión 308
con OfferROI 308
right (función FDL 258rndBinomial (función FDL) 300rndBool (función FDL) 301rndExp (función FDL) 301rndGamma (función FDL) 302rndNormal (función FDL) 302rndPoisson (función FDL) 303rndUniform (función FDL) 304ROI 306, 307, 309, 310, 311, 313, 314
con ActionROI 306con ActionROIAnnualized 307con OfferROIAnnualized 309con RetentionActionROI 310con RetentionActionROIAnnualized 311con RetentionOfferROI 313con RetentionOfferROIAnnualized 314
round (función FDL) 286rownum (función FDL) 323
SsampleEqualSize (función FDL) 293sampleExactNumber (función FDL) 294sampleExactPercentage (Función FDL) 295sampleStratified (Función FDL) 296second (función FDL) 249segindex (función de agregación) 162, 177
en derivaciones 162seguimiento de dependencia en creaciones de datos
28con qsbuild 28
selección 212crear un campo de marca 212
selección de registros 73mediante qsselect 73
seleccionar registros 73mediante qsselect 73
semilla 300para generación de números aleatorios en FDL
300sobre 300
sgn (función FDL) 287Sign (binning) 340significance (función de agregación) 162, 177
en derivaciones 162signum (signo) de un número 287sin (función FDL) 287soundex (función FDL) 259sqrt (función FDL) 288startswith (función FDL) 260stdev (función de agregación) 162, 178
en mediciones y derivaciones 162strlen (función FDL) 261
Portrait Miner 7.1378
strmember (función FDL) 261substitute (función FDL) 262substr (función FDL) 263sum (función de agregación) 162, 179
en mediciones y derivaciones 162sum, sumnonnull (funciones FDL multi-argument) 288sustracción 195
operador FDL 195
Ttabla de base de datos 33, 35, 37, 38
actualizar la base de datos utilizando qsdbupdate38crear con qsdbcreatetable 35importar utilizando qsimportdb 33insertar datos utilizando qsdbinsert 37
tabulación cruzada 112crear elementos aplicando una especificaciónmediante qsxt 112
tan (función FDL) 289testTrainSplit (función FDL) 297testTrainValidateSplit (función FDL) 297texto 254, 255, 256, 257, 258, 260, 263, 265
buscar una cadena al final utilizando FDL 254buscar una cadena en el inicio utilizando FDL 260buscar subcadenas utilizando FDL 255eliminar espacios en blanco con FDL 265extraer una cadena de la posición de inicio y finalutilizando FDL 263extraer una subcadena de acuerdo a la posicióny longitud utilizando FDL 257extraer una subcadena final con FDL 258extraer una subcadena inicial utilizando FDL 256
tipo date 184en FDL 184
tipo entero 184en FDL 184
tipo real 184en FDL 184
tipo smallinteger 184en FDL 184
tipo string 184en FDL 184
tipos de datos 184en FDL 184
tipos de datos numéricos 184en FDL 184
TML 148, 149, 162acerca de 148funciones de agregación 162palabras reservadas 149
todate (función FDL) 216
today (función FDL) 249tointeger (función FDL) 217tolower (función FDL) 264toreal (función FDL) 217tostring (función FDL) 218toupper (función FDL) 265Transaction Measurement Language 148
consulte TML 148trim (función FDL) 265
Uunión de enfoques 86
mediante qsjoin 86unir cadenas 254unir campos 86
mediante qsjoin 86
Vvalor absoluto de un número 278valor literal 186
en FDL 186valor null 184, 210, 211
en FDL 184prueba para 211reemplazo con ifnull o nvl 210
valores falso y verdadero 185en FDL 185
variable global 190en FDL 190
variable local 190en FDL 190
variable state 190en FDL 190
variance (función de agregación) 162, 179en mediciones y derivaciones 162
WWeekFrom (creación de rangos) 328WeekMultipleFrom (creación de rangos) 328WeekMultipleNumBins (creación de rangos) 329WeekMultiplePrePost (creación de rangos) 330WeekMultipleTo (creación de rangos) 331WeekMultipleWidth (creación de rangos) 332weekofyear (función FDL) 250WeekPrePost (creación de rangos) 333WeekRange (creación de rangos) 334WeekTo (creación de rangos) 335
379Guía de referencia del comando de creación de datos y TML
XXML 137
cambiar el formato para obtener legibilidad 137XML en Portrait Miner 342
Yyear (función FDL) 251
YearFrom (creación de rangos) 328YearMultipleFrom (creación de rangos) 328YearMultipleNumBins (creación de rangos) 329YearMultiplePrePost (creación de rangos) 330YearMultipleTo (creación de rangos) 331YearMultipleWidth (creación de rangos) 332YearPrePost (creación de rangos) 333YearRange (creación de rangos) 334YearTo (creación de rangos) 335
Portrait Miner 7.1380