¿Cómo acelerar las operaciones de la tabla de datos (por ejemplo, apilar, dividir, ...)?A menudo necesito apilar tablas muy grandes con millones de filas, realizar alguna operación y luego dividir la tabla.
¿Qué opciones hay para acelerar todo esto además de trabajar con tablas de datos "invisibles" en el código jsl?
Estoy familiarizado con el comando Iniciar/Finalizar actualización de datos , sin embargo no estoy seguro de que sea relevante aquí o tenga alguna mejora con respecto a las tablas invisibles.
Automatización y scriptingRe: ¿Cómo acelerar las operaciones de la tabla de datos (por ejemplo, apilar, dividir, ...)?Invisible (o privado) son buenos puntos de partida y luego depende mucho de tus mesas; a veces incluso podrás evitar dividir/apilar.
Re: ¿Cómo acelerar las operaciones de la tabla de datos (por ejemplo, apilar, dividir, ...)?Mi objetivo es fusionar columnas que representan la misma columna, es decir, quiero fusionarlas. Adjunto una tabla de ejemplo donde cada columna (edad, peso y altura) se distribuye en dos columnas. El objetivo es fusionar cada par de columnas.
Originalmente, apilaría las columnas, cortaría la parte relevante (Edad/Peso/Altura) y luego volvería a dividirlas, sin embargo, esto se convierte en un problema con tablas de datos muy grandes.
Re: ¿Cómo acelerar las operaciones de la tabla de datos (por ejemplo, apilar, dividir, ...)?
¿Has probado ¿Constructor de consultas?
Perdón, entendí mal la pregunta. No creo que el Generador de consultas sea útil en este caso.
Re: ¿Cómo acelerar las operaciones de la tabla de datos (por ejemplo, apilar, dividir, ...)?Names Default To Here(1);
dt = Open("$DOWNLOADS/example_input.jmp");
valid_cols = 4;
m = dt[0,0];
r = Transform Each({vals}, m,
nonmissing = Where(!IsMissing(vals));
vals[nonmissing];
);
dt[0, 1::valid_cols] = r;
dt << Delete Columns(valid_cols::N Cols(dt));
Re: ¿Cómo acelerar las operaciones de la tabla de datos (por ejemplo, apilar, dividir, ...)?Y si así es como se ven realmente los datos
- Seleccione sus columnas "duplicadas"
- Crea un subconjunto con ellos + la columna Id (quizás tengas que crear uno si aún no tienes uno)
- Eliminar filas que tengan valores faltantes
- Cambie el nombre de sus columnas para que sean iguales en ambas tablas (+eliminar columnas adicionales)
- Utilice Actualizar en la tabla original con la columna ID
- Cerrar el subconjunto