Variables de valor de término dinámico de configuración recordada del perfilador bivariadoHola a todos,
Realmente agradecería alguna ayuda con algunos scripts.
Estoy trabajando en un script de ajuste bivariado que toma dos columnas de un cuadro de diálogo de columnas. Quiero cargar un generador de perfiles que ya tiene cargadas algunas configuraciones recordadas. El problema que tengo es que no puedo encontrar la forma correcta de referenciar/sustituir el nombre de la columna dentro del valor del término del generador de perfiles. En el código de ejemplo a continuación, he dejado las referencias codificadas a la columna y el script funciona, pero necesito que el script sea flexible con diferentes nombres de columna. He encontrado un usuario con un problema similar, pero no he tenido éxito al adaptar la solución que le funcionó a mi ejemplo, consulte Generador de perfiles: El uso de variables en el script de valor de término no funciona . Mi experiencia hasta la fecha con la escritura de expresiones y la sustitución de términos se ha limitado a columnas de fórmula, por lo que este problema ha sido un poco excesivo para mí.
Cualquier ayuda para corregir este problema sería muy apreciada.
Atentamente,
Cathal
New Table( "Example",
Add Rows( 10 ),
New Column( "X",
Numeric,
"Continuous",
Format( "Best", 15 ),
Set Values( [20, 40, 60, 80, 100, 120, 140, 160, 180, 200] )
),
New Column( "Y",
Numeric,
"Continuous",
Format( "Best", 15 ),
Set Values( [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] )
)
);
// Open dialog to select columns
dlg = Column Dialog(
colX = Col List( "X",
Min Col( 1 ),
Max Col( 1 ),
),
colY = Col List( "Y",
Min Col( 1 ),
Max Col( 1 ),
),
);
// Store list of selected columns
Eval List( Remove( dlg, -1 ) );
// Launch platform: Bivariate
report = Bivariate(
Y( colY[1] ) ,
X( colX[1] ),
Fit Polynomial( 1,
{Profiler(
1,
Confidence Intervals( 1 ),
Term Value( "X"n( 30, Lock( 0 ), Show( 1 ) ) ), // Need to replace with dynamic reference
Remember Settings( "1-Month", Differences Report( 0 ) ),
Term Value( "X"n( 60, Lock( 0 ), Show( 1 ) ) ), // Need to replace with dynamic reference
Remember Settings( "2-Months" ),
Term Value( "X"n( 90, Lock( 0 ), Show( 1 ) ) ), // Need to replace with dynamic reference
Remember Settings( "3-Months", Differences Report( 1 ) ),
Term Value( "X"n( 90, Lock( 0 ), Show( 1 ) ) ) // Need to replace with dynamic reference
)}
)
);
Automatización y scriptingRe: Variables de valor de término dinámico de la configuración recordada del perfilador bivariadoCreo que algo como esto podría funcionar.
Names Default To Here(1);
dt = New Table("Example",
Add Rows(10),
New Column("X",
Numeric,
"Continuous",
Format("Best", 15),
Set Values([20, 40, 60, 80, 100, 120, 140, 160, 180, 200])
),
New Column("Y",
Numeric,
"Continuous",
Format("Best", 15),
Set Values([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
)
);
dlg = Column Dialog(
colX = Col List("X", Min Col(1), Max Col(1), ),
colY = Col List("Y", Min Col(1), Max Col(1), ),
);
Eval List(Remove(dlg, -1));
report = Eval(Substitute(
Expr(dt << Bivariate(
Y(colY[1]),
X(colX[1]),
Fit Polynomial(
1,
{Profiler(
1,
Confidence Intervals(1),
Term Value(_x_(30, Lock(0), Show(1))),
Remember Settings("1-Month", Differences Report(0)),
Term Value(_x_(60, Lock(0), Show(1))),
Remember Settings("2-Months"),
Term Value(_x_(90, Lock(0), Show(1))),
Remember Settings("3-Months", Differences Report(1)),
Term Value(_x_(90, Lock(0), Show(1)))
)}
)
)),
Expr(_x_), Name Expr(AsColumn(dt, colX[1]));
));
Re: Variables de valor de término dinámico de la configuración recordada del perfilador bivariadoEso funciona perfectamente. ¡Gracias Jarmo!