Funciona a través de las iteraciones cuando se hace lo siguiente, pero en realidad no se resume por el grupo:
dt = Tabla de datos actuales ();
N = N Col(dt);
matriz_emp = {};
Para( i = 1, i <= N, i++,
colname = Column( i ) << getname();If( Comienza con( :Column( i ) << getname(), "9" ),
Insertar en(emp_array,:Column( i ) << getname() )));
Para( m = 1, m <= N elementos(emp_array), m++,
a= emp_matriz[m];
Tabla de datos ("Extracción del contador de funciones") << Resumen (
Grupo( :Nombre("a") ),
NORTE,
Subgrupo (:INTERFACE_BIN_119325),
Frecuencia( "Ninguno"),
Peso ("Ninguno")
)
);
Si alguien pudiera señalar cómo está funcionando mal, ¡sería muy apreciado!
¿Cómo puedo iterar correctamente sobre los nombres de las columnas para producir tablas de resumen agrupadas por cada una?Hola,
Estoy escribiendo un script en jsl para buscar encabezados de columnas, encontrar aquellos que comienzan con el número 9 y luego generar una tabla de resumen a partir de un gran conjunto de datos agrupados por esas columnas. Actualmente, mi código funciona para la primera columna, pero parece detenerse después de eso. ¡Cualquier ayuda sería apreciada!
dt = Current Data Table();
N = N Col( dt );
For( i = 1, i <= N, i++,
colname = Column( i ) << getname();
If( Starts With( :Column( i ) << getname(), "9" ),
Data Table( "Func Counter pull" ) << Summary(
Group( :Column( i ) << getname() ),
N,
Subgroup( :INTERFACE_BIN_119325 ),
Freq( "None" ),
Weight( "None" )
)
)
;
);
Funciona a través de las iteraciones cuando se hace lo siguiente, pero en realidad no resume por grupo:
dt = Current Data Table();
N = N Col( dt );
emp_array = {};
For( i = 1, i <= N, i++,
colname = Column( i ) << getname();
If( Starts With( :Column( i ) << getname(), "9" ),
Insert Into( emp_array, :Column( i ) << getname() )
);
);
For( m = 1, m <= N Items( emp_array ), m++,
a = emp_array[m];
Data Table( "Func Counter pull" ) << Summary(
Group( :Name( "a" ) ),
N,
Subgroup( :INTERFACE_BIN_119325 ),
Freq( "None" ),
Weight( "None" )
);
);
Si alguien pudiera señalar cómo va mal alguno de ellos, ¡se lo agradecería mucho!
Automatización y secuencias de comandosCombinación y limpieza de datosIngeniería de Calidad y ProcesosRe: ¿Cómo itero correctamente sobre los nombres de las columnas para producir tablas de resumen agrupadas por cada una?El principal problema con el que se encontraba era que la función Column() tiene un elemento opcional que se puede especificar que apunta a la referencia de la tabla de datos para configurar la tabla de la que obtener la columna.Si no se especifica, apunta a la tabla de datos actualmente activa.Dado que la plataforma Resumen crea una nueva tabla de datos, es a esa nueva tabla a la que apunta, en lugar de a la original a la que desea que apunte.El siguiente código proporciona referencias específicas.
names default to here(1);
dt = Current Data Table();
N = N Col( dt );
For( i = 1, i <= N, i++,
colname = Column( dt, i ) << getname();
If( Starts With( As Column( dt, i ) << getname(), "9" ),
dt << Summary(
Group( colname ),
N,
Subgroup( :INTERFACE_BIN_119325 ),
Freq( "None" ),
Weight( "None" )
)
);
);
Re: ¿Cómo itero correctamente sobre los nombres de las columnas para producir tablas de resumen agrupadas por cada una?Tiene sentido, muchas gracias!