Bucle en el gráfico de variabilidad: problema al hacer referencia a un miembro de la lista en lugar de usar su valor explícitamenteHola
Estoy recorriendo el gráfico de variabilidad para analizar diferentes parámetros, cada uno representado por una columna. Los nombres de las columnas se almacenan en una lista. Aquí está el fragmento de código
tetser = {a list of 100 column names in string format};<BR />For( i = 1, i <= 100 , i++,
Variability Chart(
Y( tester[i]),
Model( "Crossed" ),
X( :Operators, :Parts ),
Analysis Type( "Choose best analysis (EMS REML or Bayesian)" ),
Variability Analysis(
tester[i], <U><EM><STRONG>/* PROBLEM HAPPENS ON THIS LINE*/</STRONG></EM></U>
MSA Metadata( tester[i] ( Lower Tolerance( LTU[i] ), Upper Tolerance( UTU[i] ), Tolerance Range( UTU[i]-LTU[i] ) ) ),
Gauge RR( 6 ),
"Gauge R&R Report"n( 1 )
)
);El problema es: cuando ejecuto el código, aparece este error porque estoy usando tetser[i] como el nombre de la columna dentro de la función Análisis de variabilidad (...). Si lo cambio a la cadena del nombre de la columna (en lugar de hacer referencia a él mediante la indexación), funciona bien. Estoy mostrando la línea donde creo que ocurre el error en el código anterior. ¿Podría ayudarme con la solución o dirigirme al archivo de Ayuda?

secuencias de comandosRe: Bucle en el gráfico de variabilidad: problema al hacer referencia a un miembro de la lista en lugar de usar su valor explícitamenteCreo que el gráfico se está dibujando antes de que JMP intente evaluar qué tester[i] es en realidad, y una vez que lo hace, la plataforma del gráfico de Variabilidad no sabe nada sobre la ventana del script que lo inició.Puede evitar esto diciéndole a JMP que evalúe la expresión antes de iniciar la plataforma, como se describe en Inserte una expresión en otra utilizando Eval Insert, Eval Expr, Parse y Substitute.
Por ejemplo:
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Variability Data/2 Factors Crossed.jmp" );
cols = dt << get column references;
cols = cols[1]
for each({c, i}, cols,
Eval( Eval Expr(
Variability Chart(
Y( Expr( c ) ),
Model( "Crossed" ),
X( :Operator, :"part#"n ),
Analysis Type( "Choose best analysis (EMS REML or Bayesian)" ),
Variability Analysis(
Expr( cols[i] ), /* PROBLEM HAPPENS ON THIS LINE*/
MSA Metadata( tester[i] ( Lower Tolerance( LTU[i] ), Upper Tolerance( UTU[i] ), Tolerance Range( UTU[i]-LTU[i] ) ) ),
Gauge RR( 6 ),
"Gauge R&R Report"n( 1 )
)
)
) )
);