Rufen Sie die vereinfachte Vorhersageformel per Skript abHallo, ich bin ziemlich neu im JMP-Skript, aber ich versuche, die Koeffizienten der Vorhersageformel aus angepassten Modellen zu ermitteln.
Es gibt bereits viele Beiträge, die beschreiben, wie man die Vorhersageformel in Skripten erhält, aber ich möchte die Formel nach der Anwendung von „Vereinfachen“ in der JMP-Schnittstelle.
Spalten speichern ==>Vorhersageformel ==>Formel aus der Datentabelle öffnen ==>Wählen Sie im roten Dreieck-Popup-Menü des Gleichungseditors die Option „Vereinfachen“.

Mein Idealbild besteht darin, die vereinfachten Formelkoeffizienten in einer neuen Datentabelle zu erhalten, ähnlich wie bei einem Rechtsklick in „Parameterschätzungen“ ==> „In (kombinierte) Datentabelle umwandeln“.

Ich habe den Code zum Erstellen des angepassten Modells, weiß aber nicht, wie ich die vereinfachte Funktion einbinden und wieder in einer neuen Tabelle speichern kann.
dt = Open( "$SAMPLE_DATA/Tiretread.jmp" );
obj = dt << Fit Model(
Y( :ABRASION ),
Effects(
:SILICA & RS, :SILANE & RS, :SILICA * :SILICA, :SILICA * :SILANE,
:SILANE * :SILANE
),
Personality( "Standard Least Squares" ),
Emphasis( "Effect Screening" ),
Run(
Profiler(
1,
Confidence Intervals( 1 ),
Desirability Functions( 1 ),
ABRASION << Response Limits(
{Lower( 100, 0.066 ), Middle( 150, 0.5 ),
Upper( 200, 0.9819 ), Goal( "Maximize" ), Importance( 0.25 )}
),
Term Value(
SILICA( 1.2, Lock( 0 ), Show( 1 ) ),
SILANE( 50, Lock( 0 ), Show( 1 ) )
)
),
:ABRASION << {Summary of Fit( 0 ), Analysis of Variance( 0 ),
Parameter Estimates( 1 ), Effect Details( 0 ), Sorted Estimates( 0 ),
Plot Actual by Predicted( 1 ), Plot Regression( 0 ),
Plot Residual by Predicted( 1 ), Plot Studentized Residuals( 1 ),
Plot Effect Leverage( 0 ), Plot Residual by Normal Quantiles( 0 ),
Box Cox Y Transformation( 1 )}
),
SendToReport(
Dispatch(
{"Response ABRASION"},
"Parameter Estimates",
OutlineBox,
{Close( 0 )}
)
)
);
Ich freue mich, wenn jemand mit Erfahrung helfen kann!
DatenzugriffBetreff: Vereinfachte Vorhersageformel per Skript abrufenSie können den Ausdruck auch direkt analysieren. Weitere Informationen zu den Funktionen Head(), N Args() und Arg() finden Sie in der JMP-Hilfe oder im Skriptindex. Sie durchlaufen den Ausdruck als Baum oder verknüpfte Liste.
Betreff: Vereinfachte Vorhersageformel per Skript abrufenIn dem Beispiel, das ich angegeben habe, bleibt es als Ausdruck übrig. Ich denke, Sie müssen es zuerst in einen String konvertieren mit:
simplified_formula_str = Char(simplified_formula);
Und von dort aus beginnen Sie mit der Analyse in Listen. Für das Parsen könnten Ihnen die folgenden Funktionen den Einstieg erleichtern: Words(), Substitute() (und Regex, wenn Sie wissen, wie man es verwendet). Weitere Funktionen finden Sie im Scripting Index:

Nachdem Sie eine Werteliste erstellt haben, können Sie Werte festlegen verwenden, um der Datentabelle Werte hinzuzufügen:
Names Default To Here(1);
intercept_list = {"Intercept", "SILICA"};
estimate_list = [123, 1];
New Table("Untitled",
Add Rows(2),
Compress File When Saved(1),
New Column("Term", Character, "Nominal", Set Values(intercept_list)),
New Column("Estimate",
Numeric,
"Continuous",
Format("Best", 12),
Set Values(estimate_list)
)
);
Betreff: Vereinfachte Vorhersageformel per Skript abrufen@jthi
Danke!
Das erste ist genau das, was ich will.
Aber ich möchte eine neue Tabelle erstellen, die die Koeffizienten und Variablen aus der vereinfachten Formel wie der „In Datentabelle umwandeln“ zeigt.
Wenn Sie die ursprüngliche Funktion „In Datentabelle umwandeln“ verwenden, wird eine Tabelle erstellt, die die Koeffizienten der „nicht vereinfachten“ enthält.
Da die vereinfachte Formel nun gespeichert wurde, gibt es eine Möglichkeit, sie in eine Tabelle umzuwandeln (nicht den Vorhersagewert, sondern nur die Koeffizienten und Variablen)?
Ich habe versucht, es zu analysieren oder in eine Matrix oder Tabelle umzuwandeln, aber bisher funktioniert keines davon.
(Ich bin mir nicht sicher, welchen Typ das Formelobjekt hat ... Text?)
Betreff: Vereinfachte Vorhersageformel per Skript abrufenDie vereinfachte Formel erhalten Sie etwa so:
col_formula = Expr(Column(dt, "Pred Formula ABRASION") << Get Formula);<BR />simplified_formula = Expr(Simplify Expr(col_formula));
Und Sie können ein Skript für die Datentabelle „Umwandeln in eine Datentabelle aus dem Fit-Modell“ erstellen:
dt_new = ((obj << report)["Parameter Estimates"])[TableBox(1)]<< Make Into Data Table;
Sehen Sie sich den Scripting Index an, um eine gute Quelle für JSL-Scripting zu finden.