Enregistrement automatique des équations de prédiction dans le tableau de donnéesSalut tout le monde,
J'utilise l'outil de modèle d'ajustement pour créer des équations d'ajustement pour un certain sous-ensemble de données que je voudrais ensuite appliquer à un ensemble plus large et mesurer la valeur RMS entre la valeur prédite et la valeur réelle. J'ai 231 échantillons uniques (étiquetés RunID) et dans chaque échantillon, j'ai 2 canaux différents que j'évalue. Cela conduit à 436 équations d'ajustement au total. J'utilise l'outil Ajuster le modèle pour créer les 436 équations et je peux parcourir manuellement chaque sortie et enregistrer chacune des équations dans une colonne du tableau de données. Je copie et colle ensuite la formule de cette colonne dans mon ensemble de données plus large et mesure le "prédit par rapport au réel". Je voudrais ne pas insérer manuellement les équations et il semble qu'il y ait quelques solutions qui ont été postées ici et ici , mais je n'arrive pas à faire fonctionner l'un ou l'autre.
Voici ce que j'ai :
Version JMP : 16
J'essaie de prédire le Zoffset à partir des positions Xoffset et Yoffset, donc je devrais obtenir une équation pour chaque combinaison "RunID/Channel".
Lorsque j'exécute le script ci-dessous, j'obtiens ceci:

Je ne faisais que copier les approches liées ci-dessus, mais il doit y avoir quelque chose de différent dans mon code qui ne correspond pas tout à fait.
obj = Fit Model(
Y(:ZOffset),
By(:RunID, :Channel Only Location),
Effects(
:XOffset, :XOffset * :XOffset, :XOffset * :XOffset * :XOffset, :YOffset, :YOffset * :YOffset,
:YOffset * :YOffset * :YOffset, :XOffset * :YOffset
),
Personality("Standard Least Squares"),
Emphasis("Minimal Report"),
Run(
:ZOffset << {Summary of Fit(1), Analysis of Variance(1), Parameter Estimates(1), Lack of Fit(0), Scaled Estimates(0),
Plot Actual by Predicted(0), Plot Regression(0), Plot Residual by Predicted(0), Plot Studentized Residuals(0),
Plot Effect Leverage(0), Plot Residual by Normal Quantiles(0), Box Cox Y Transformation(0)}
)
);
obj << (Fit[1] << Save Prediction Formula);ScriptRe : Enregistrement automatique des équations de prédiction dans le tableau de donnéesCher @rlangsner , en plus de Jarmo, veuillez notifier que le retour du modèle d'exécution est une liste en cas d'utilisation d'un groupe par, voir l'exemple ci-dessous.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
obj = dt << fit model( Y( :weight ), effects( :age, :height ), Personality( "Standard Least Squares" ));
mod1 = obj << run;
mod1 << prediction formula;
obj_by = dt << fit model( Y( :weight ), by( :sex ), effects( :age, :height ), Personality( "Standard Least Squares" ) );
mod2 = obj_by << run;
For Each( {value}, mod2, value << prediction formula );Re : Enregistrement automatique des équations de prédiction dans le tableau de donnéesSalut Jarmo,
Merci. J'ai mis à jour le scripto en disant simplement "obj <

Re : Enregistrement automatique des équations de prédiction dans le tableau de donnéesVous devrez peut-être utiliser un message différent. Vérifiez les options que vous obtenez dans le menu du triangle rouge

Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Animals.jmp");
obj = dt << Fit Model(
Y(:miles),
Effects(:species, :subject[:species] & Random, :season, :species * :season),
Personality(Standard Least Squares),
Run(
:ZOffset << {Summary of Fit(1), Analysis of Variance(1), Parameter Estimates(1), Lack of Fit(0), Scaled Estimates(0),
Plot Actual by Predicted(0), Plot Regression(0), Plot Residual by Predicted(0), Plot Studentized Residuals(0),
Plot Effect Leverage(0), Plot Residual by Normal Quantiles(0), Box Cox Y Transformation(0)}
)
);
obj << Prediction Formula;