¿Es posible cambiar el nombre de todas las columnas de una tabla desde una lista?Hola. Me pregunto si hay una manera de cambiar el nombre de todas las columnas de una tabla desde una lista sin utilizar un bucle For. Tengo tablas con ~10k columnas y usar un bucle For lleva mucho más tiempo de lo que me gustaría.
Detalles:
JMP Pro 16.2.0
Mac OS Big Sur 11.6.6
He examinado la función Recodificar nombres de columnas... (Cols > Nombres de columnas > Recodificar nombres de columnas...). En el cuadro de diálogo que aparece, puedo seleccionar el triángulo rojo hacia abajo y Avanzado > Aplicar asignación desde tabla.... Suponiendo que tengo una tabla con los nombres de las columnas originales y nuevas, esto parece funcionar bien. Sin embargo, no parece haber una manera de escribir esto.
También intenté transponer la tabla, agregar una nueva columna con los nuevos nombres de columna y luego volver a transponer usando la nueva columna como etiquetas. Esto también funciona, pero es demasiado lento para mesas de mi tamaño.
¿Alguien conoce otra forma inteligente de hacer esto sin utilizar un bucle For?
La personalización en masaRe: ¿Es posible cambiar el nombre de todas las columnas de una tabla desde una lista?Gracias jthi. Sí, tengo que admitir que usar un bucle For es mucho más rápido de lo que recuerdo. Lo probé hace mucho tiempo y recuerdo que pensé que era demasiado lento. Debería haberlo intentado de nuevo antes de preguntar...
Re: ¿Es posible cambiar el nombre de todas las columnas de una tabla desde una lista?Siento que cambiar el nombre de las columnas con bucles no debería llevar tanto tiempo.
Names Default To Here(1);
dt = New Table("test", invisible);
For(i = 1, i <= 10000, i++,
dt << New Column(Char(i*10), values(1::10000))
);
col_names = As List((1::10000)`);
wait(1);
start = HP Time();
For Each({col_name, idx}, col_names,
Column(dt, idx) << Set Name(char(col_name));
);
Show((HP Time() - start) / 1e6);Re: ¿Es posible cambiar el nombre de todas las columnas de una tabla desde una lista?Una forma interactiva de hacer esto es copiar todos los nombres de las nuevas columnas en el búfer de pegado.

Luego seleccione todas las columnas del Panel de columnas en su tabla de datos.Te sugiero que uses CNTL/a para seleccionarlos todos.

Y luego use CNTL/v para pegar desde el búfer de pegado a los nombres de las columnas
