Fórmula eficienteOye,
Tengo una tabla de big data (~ 30 millones de filas * 20 columnas) y esta prueba Pasa / No pasa hace que JMP se atasque.
La PC es Windows 10 de 64 bits, i7-4770 @ 3.4Ghz, SSD y 32GB DDR3 1600Mhz.
El JSL es:
cctable << New Column( "New status", Character, Nominal, Formula( If( :result < :L | :result > :H, "Fail", "Pass" ) ) );
¿Puede ser más eficiente? ¿Hay una mejor opción en JMP para hacerlo?
Gracias,
Hago
Re: fórmula eficiente¡Gracias!
Lo haré.
Aunque lo que más ayudó fue la tabla de 1M * 100 en lugar de 80M * 5
Re: fórmula eficiente
Mi prueba tarda 15 segundos en crear la tabla y 15 segundos en agregar la columna adicional. Estoy usando << runFormulas para hacer que la fórmula se evalúe inmediatamente en lugar de esperar el tiempo de inactividad.
start = Tick Seconds();
dt = New Table( "Untitled",
Add Rows( 30e6 ),
New Column( "L", Numeric, "Continuous", Format( "Best", 12 ), Formula( Random Integer( 1, 9 ) ) ),
New Column( "result", Numeric, "Continuous", Format( "Best", 12 ), Formula( Random Integer( 1, 9 ) ) ),
New Column( "H", Numeric, "Continuous", Format( "Best", 12 ), Formula( Random Integer( 1, 9 ) ) )
);
dt<<RUNFORMULAS> :H, "Fail", "Pass" ) ) );
dt << runformulas;
stop = Tick Seconds();
Show( "add", stop - start, N Rows( dt ) );</RUNFORMULAS>
"crear";
parada - inicio = 12,8833333333605;
N filas (dt) = 30000000;
"añadir";
detener - iniciar = 12.6833333332906;
N filas (dt) = 30000000;
Fórmula agregada
Re: fórmula eficienteGracias, pero la "Nueva columna (... ) "El comando lleva tiempo y todo se atasca también.
Intentaré usar actualizar / unirme
Si usted (o alguien más
) tiene otra idea, me alegrará escucharla.
Gracias.
Re: fórmula eficienteHola,
No use fórmulas de columna con una tabla de este tipo.
Intente ejecutar un cálculo con JSL y pegue los resultados.
Consulte la tabla adjunta y un script que utilicé.
Saludos,
Tom.