Hola a todos,
Estoy trabajando en un script en el que me gustaría usar una cadena como nombre de columna y usar ese nombre de columna en una fórmula, vea a continuación:
dt = Open( "$SAMPLE_DATA/Cities.jmp" );
//example column
dt << New Column("klaatu barada nikto", formula(3));
//suppose we don't know what exactly will be in 'a' as it is controlled by a for loop etc.
a = Concat Items( {"klaatu", "barada", "nikto"}, " " );
//can we get another column to take 'a' as an input?
dt << New Column("Gort", formula(column(a)*:Y));Sin embargo, cuando uso esto, no ve "klaatu barada nikto" como una columna válida, a pesar de que la creamos antes.
En otras publicaciones, he visto que la función column () se puede usar para asignar una cadena a una columna y la he usado de esta manera antes, pero en esta instancia no funciona. Todo lo que terminamos es esto:

¿Sabe alguien una solución para esto? ¡Gracias por cualquier ayuda de antemano!
Mira esto Inserte una expresión en otra usando Eval Insert, Eval Expr, Parse y Substitute
dt = Open( "$SAMPLE_DATA/Cities.jmp" );
//example column
dt << New Column("klaatu barada nikto", formula(3));
//suppose we don't know what exactly will be in 'a' as it is controlled by a for loop etc.
a = Concat Items( {"klaatu", "barada", "nikto"}, " " );
//can we get another column to take 'a' as an input?
Eval(EvalExpr(dt << New Column("Gort", numeric, formula(ascolumn(expr(a))*:Y))));¡Fantástico! Muchas gracias por tu ayuda.