Recorrer las filas de una columna para encontrar el recuento generalIntentando encontrar el número de recuentos de la entrada actual en una columna. La siguiente función funciona pero parece lenta. ¿Alguna sugerencia para mejorar el tiempo de ejecución del script?
JMP14, JMP16
Mi propuesta: inicialmente pienso construir una matriz asociativa agregando las entradas de: ColName como "Clave" y aumentando el valor (Valor++) cuando se duplica una entrada, es decir, una clave duplicada o si es una entrada nueva, agregando una clave separada con el valor establecido en 1. Sería una mejor manera. Luego, puede recorrer las filas para encontrar el número de "Valor" correspondiente.
Automatización y secuencias de comandosRe: Recorrer las filas de una columna para encontrar el recuento total¿Existe alguna razón específica por la que desea recorrer las filas? Lo más probable es que puedas usar la tabla Tabular o Resumen para realizar una tarea similar.

Resumen + tabla de pila

Re: Recorrer las filas de una columna para encontrar el recuento totalAquí hay un par de formas de hacer lo que creo que quieres.
Names Default To Here( 1 );
dt = Current Data Table();
Summarize( dt, items = by( :colName ) );
countOfUniqueValues = N Items( items );
// or
countOfUniqueValues = N Items( Associative Array( :colName ) << get keys );
Re: Recorrer las filas de una columna para encontrar el recuento totalEstoy resumiendo (dt_summary) la tabla de datos más grande (dt) que me da el número de filas para cada entrada particular en la columna: ColName.
dt_summary = dt << Summary( Group( :ColName ), Freq( "None" ), Weight( "None" ) );
Ahora quiero recorrer las filas de la tabla original (dt) y obtener el número de filas de la tabla de resumen para la fila actual para verificar si hay más de 10 (ocurrencias).
Tabla resumen (agrupar por altura):

Entonces, digamos que estoy en la primera fila, la altura es 59 y las ocurrencias son 2, quiero completar esa información en la tabla de datos actual (dt) en una nueva columna (height_qty).
Re: Recorrer las filas de una columna para encontrar el recuento totalLa solución más simple es simplemente fusionar la tabla de resumen en la tabla original usando el
Tablas => Actualizar
plataforma
names default to here(1);
dt =
// Open Data Table: Big Class.jmp
// → Data Table( "Big Class" )
Open( "$SAMPLE_DATA/Big Class.jmp" );
dt_summary = dt << Summary( invisible, Group( :height ), Freq( "None" ), Weight( "None" ) );
dt_summary:N Rows << set name("height_qty");
dt << Update(
With( dt_summary ),
Match Columns( :height = :height )
);
close( dt_summary, nosave );Re: Recorrer las filas de una columna para encontrar el recuento totalRealmente aprecio tu rápida ayuda, Jim. Funcionó como se esperaba y el tiempo de ejecución se redujo de casi un minuto a ~2 segundos.