Bucle para encontrar el valor máximo para cada valor únicoHola,
Estoy intentando iterar sobre cada valor de X e Y y guardar el valor máximo de rn en la columna MaxValue.
Esto es lo que intenté pero algo no parece correcto. ¿Algún consejo?
Names Default To Here( 1 );
// Assuming your data table is named 'dt'
dt = Current Data Table();
// Create a new column "MaxValue" and initialize with a large negative number
// Loop through unique Barcode values
// Loop through rows
dt << begin data table();
// Loop through rows
For( i = 1, i <= N Rows( dt ), i++,
currentBarcode = dt:Barcode[i];
// Find the location of the maximum rn value for the current Barcode
maxRNRow = Max( dt:rn[dt:Barcode[i] == currentBarcode] );
// Check if the maxRNRow is not 0 (meaning there is at least one matching Barcode)
If( maxRNRow != 0,
// Update "MaxValue" column with the max rn value for the current Barcode
dt:MaxValue[i] = dt:rn[maxRNRow]
);
);
dt << end data table();
Automatización y secuencias de comandosRe: Bucle para encontrar el valor máximo para cada valor únicoPruebe esto en su lugar.
Col Max( :rn, :Y, :X )
editar
Para ser más claro, establezca la fórmula para :MaxValue en
Col Max( :rn, :Barcode )
Re: Bucle para encontrar el valor máximo para cada valor únicoAquí no se necesitan bucles. puedes hacer lo que @mmarchandTSI sugerido y usar Col Max con byvar, puede usar Resumir para calcular los valores máximos y luego crear una nueva columna usando esos o puede crear una tabla de resumen y unirla (o más bien actualizarla) a su tabla con el valor máximo. También los mensajes de inicio/fin son
dt << Begin Data Update;
dt << End Data Update;
Re: Bucle para encontrar el valor máximo para cada valor único@mmarchandTSI Col max solo funciona con la columna: Código de barras. El problema es que algunas tablas no tienen la columna Código de barras, así que estoy tratando de ver si puedo usar las coordenadas X e Y para asignar el valor máximo de rn en
Re: Bucle para encontrar el valor máximo para cada valor únicoPuedes agregar más de un byvar.
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
dt << New Column("Maximum Value for Each Age and Sex Group",
Formula(Col Maximum(:height, :age, :sex))
);

Col máx()
Re: Bucle para encontrar el valor máximo para cada valor únicoBien, entonces la primera fórmula que publiqué funcionará para lo que estás haciendo, como @jthi aludido a.