Atributos de columna de grupo estandarizadoHola. Soy nuevo en los scripts jsl.
Desde el menú de ayuda de secuencias de comandos, puedo transformar los atributos de las columnas, pero ¿cómo lo hago para todas las columnas del grupo?
Es demasiado complicado escribir las 20 columnas una por una y tengo muchas columnas agrupadas.
Sé que es fácil usar atributos estandarizados sin secuencias de comandos, pero estoy tratando con tablas unidas que se actualizan con frecuencia y no es productivo hacerlo todo el tiempo.
dt << Transformar columna ("A");
dt:A << Tipo de datos (Numérico);
dt:A << Tipo de modelado( "Continuo" );
Intenté cambiar de columna a grupo de columnas, pero no parece funcionar.
Automatización y secuencias de comandosRe: Atributos de columna de grupo estandarizadoCreo que esto hará lo que necesitas:
Names Default To Here( 1 );
dt = Current Data Table();
colNames = dt << get column group( "the group's name" );
For Each( {col},
colNames, Column( dt, col ) << Data Type( Numeric ) << Modeling Type( Continuous )
);
Por favor use el
al ingresar a JSL.Permite a los lectores examinar más fácilmente el JSL.
Re: Atributos de columna de grupo estandarizadoPuede utilizar Estandarizar atributos como punto de partida y modificar el script que crea según sea necesario.
Tengo columnas como esta y deseo cambiar la altura y el peso a columnas de tipo carácter.

Estandarizar atributos me dará un script como este (del registro mejorado)
// Standardize column attributes
Local({old dt = Current Data Table()},
Current Data Table(Data Table("Big Class"));
For Each({col, index}, {:height, :weight},
col << Data Type(Character) << Set Modeling Type("Nominal")
);
Current Data Table(old dt);
);
Siguiente índice de secuencias de comandos de búsqueda para el grupo de columnas (o algo similar)

después de una pequeña modificación (cambio el tipo de datos y el tipo de modelado a numérico)
// Standardize column attributes
Local({old dt = Current Data Table()},
Current Data Table(Data Table("Big Class"));
For Each({col, index}, old dt << get column group("height etc."),
col << Data Type(Numeric) << Set Modeling Type("Continuous")
);
Current Data Table(old dt);
);
Si no conoce el nombre del grupo de columnas, volverá al índice de secuencias de comandos.

Re: Atributos de columna de grupo estandarizado¡Gracias!
¿Cómo obtengo el registro mejorado? ¿Está disponible en JMP 16? Aún no he actualizado
Re: Atributos de columna de grupo estandarizadoGracias
La próxima vez usaré
Probé el script pero en su lugar recibí esta alerta. ¿Qué debo hacer?

Re: Atributos de columna de grupo estandarizadoSí, se agregó en JMP16 y cada versión desde entonces puede capturar más acciones (y JMP17 tiene un generador de flujo de trabajo).
Re: Atributos de columna de grupo estandarizadoEse script también usa For Each, que también se agregó en JMP16. Tendrías que convertirlo en un bucle For que se vería así
Local({old dt = Current Data Table()},
Current Data Table(Data Table("Big Class"));
collist = old dt << get column group("height etc.");
For(i = 1, i <= N Items(collist), i++,
col = collist[i];
col << Data Type(Numeric) << Set Modeling Type("Nominal");
);
Current Data Table(old dt);
);
Dependiendo de dónde se esté ejecutando el script, también podría limpiarse (al menos en mi opinión) un poco a algo como esto
Names Default To Here(1);
dt = Current Data Table();
// dt = Open(); // use this if possible
collist = dt << get column group("height etc.");
For(i = 1, i <= N Items(collist), i++,
col = collist[i];
col << Data Type(Numeric) << Set Modeling Type("Continuous");
);