¿Calcular Col Mean () para un subconjunto de filas en JSL Script?Hola comunidad JMP,
¿Cuál es la sintaxis adecuada en JSL para calcular la media de la columna (u otras estadísticas) para una variable definida? subconjunto de filas? En una tabla de datos, solo puedo usar la fórmula "Col Mean (: Columna de datos,: Columna de agrupación)", pero en un script JSL esto no parece ser un uso correcto.
Es de destacar que estoy pensando en usar la fuerza bruta usando una estructura "Para cada fila", pero eso parece bastante ineficiente en la evaluación de más de 200 columnas con 1000 filas.
Gracias por su ayuda.
TS
Re: Calcular Col Mean () para un subconjunto de filas en JSL Script?Creo que la forma más simple y eficiente de hacer esto es usar
Tablas==>Resumen
Esto creará una tabla de datos muy rápido, desde la cual puede obtener sus estadísticas para su JSL, o si necesita volver a tener las estadísticas en la tabla de datos original, una simple actualización con coincidencia lo hará.Manejar 200 columnas y 1000 filas no es un problema en absoluto.A continuación se muestra un ejemplo simple que ilustrará cómo hacer esto.
names default to here(1);
dt=Open("$SAMPLE_DATA/semiconductor capability.jmp");
colNamesLIst = dt << get column names(continuous);
dtStats = dt << Summary(invisible,
Group( :SITE ),
Mean( colNamesList ),
Freq( "None" ),
Weight( "None" ),
Link to original data table(0)
);
dt << Update(
With( dtStats ),
Match Columns( :SITE = :SITE )
);
close( dtStats, nosave );Re: Calcular Col Mean () para un subconjunto de filas en JSL Script?Hola comunidad JMP,
Esto es lo que se me ocurrió usando la estructura "Para cada fila":
Names Default to Here (1);
dt = Current Data Table ();
ALL_MEAN = Col Mean (:DATA);
MAX_MEAN = -1000;
For Each Row (
if (MAX_MEAN < Col Mean(:DATA, :GROUP,:SGROUP), MAX_MEAN = Col Mean(:DATA, :GROUP,:SGROUP))
);
Show (ALL_MEAN);
Show (MAX_MEAN);
¿Alguna idea para hacer esto más eficiente?
Gracias,
TS