Comment transmettre des variables au paramètre X dans Fit Life by X ?Salut tout le monde,
I need to dynamically pass variables to the X parameter in the fit life by x function. The first part of my code generates the analysis report as expected, but the second part only brings up the startup window without a report.
Voici à quoi ressemble mon code :
Names Default To Here(1);
dt = Open( "$sample_data/big class.jmp" );
x_var = "sex";
y_var = "weight";
obj1 = dt << Fit Life by X(
Distribution( Weibull ),
Nested Model Tests( Location and Scale ),
Y( Eval(y_var) ),
X( :sex ),
);
wait(2);
obj2 = dt << Fit Life by X(
Distribution( Weibull ),
Nested Model Tests( Location and Scale ),
Y( :weight ),
X( Eval(x_var) ),
);
Quelqu'un a-t-il rencontré ce problème ou sait comment transmettre correctement les variables au paramètre X ?
Merci!
Automatisation et scriptsAnalyse de fiabilitéRe : Comment transmettre des variables au paramètre X dans Fit Life by X ?Veuillez consulter ce qui suit.
Parce que "Relation" est manquant, les codes tentent de faire la meilleure estimation basée sur X. Mais à l'endroit où les codes vérifient X, X n'est pas encore une colonne valide, dans ce cas. Ainsi, en fournissant des informations complètes, les codes n’ont pas besoin de tomber dans le piège.
Names Default To Here(1);
dt = Open( "$sample_data/big class.jmp" );
x_var = "sex";
y_var = "weight";
obj1 = dt << Fit Life by X(
Distribution( Weibull ),
Relationship( Location and Scale ),
Nested Model Tests( Location and Scale ),
Y( Eval(y_var) ),
X( :sex ),
);
wait(2);
obj2 = dt << Fit Life by X(
Distribution( Weibull ),
Relationship( Location and Scale ),
Nested Model Tests( Location and Scale ),
Y( :weight ),
X( Eval(x_var) ),
);
Re : Comment transmettre des variables au paramètre X dans Fit Life by X ?Cela semble nécessiter un peu plus de travail pour contourner ce problème, car le forçage "normal" ne fonctionnera pas.
Names Default To Here(1);
dt = Open("$sample_data/big class.jmp");
x_var = "sex";
y_var = "weight";
myexpr = EvalExpr(dt << Fit Life by X(
Distribution( Weibull ),
Nested Model Tests( Location and Scale ),
Y( :weight ),
X(Expr(NameExpr(AsColumn(dt, x_var)))),
));
show(myexpr);
obj = Eval(myexpr);
Un des cas extrêmement rares où je dirais d'utiliser Eval(Parse()) (analyse maléfique) mais cela semble fonctionner
Names Default To Here(1);
dt = Open("$sample_data/big class.jmp");
x_var = "sex";
y_var = "weight";
obj2 = Eval(Parse(Eval Insert("\[dt << Fit Life by X(
Distribution(Weibull),
Nested Model Tests(Location and Scale),
Y(:weight),
X(:^x_var^)
)]\")));Re : Comment transmettre des variables au paramètre X dans Fit Life by X ?Cette anomalie semble être un bug. L’argument Nested Model Tests n’est pas reconnu dans le second cas. Veuillez signaler ce problème au support technique JMP ( support@jmp.com ) afin qu'il puisse être enregistré comme défaut et suivi.
Re : Comment transmettre des variables au paramètre X dans Fit Life by X ?Oh, c'est exactement la bonne réponse. Merci beaucoup!
Re : Comment transmettre des variables au paramètre X dans Fit Life by X ?Il s'agit également d'une autre solution de contournement. Merci!