Modellskript in DOE-Tabelle verwenden, aber Antworten ändernHallo,
Ich habe 10 verschiedene DOE-Tabellen und jede hat das DOE-Modellskript. Ich möchte, dass das vorhandene Modellskript in jeder Tabelle verwendet wird und mit einer anderen Antwortspalte ausgeführt wird (oder indem :Y im Modellskript ersetzt wird).
Angenommen, eine der DOE-Tabellen ist dt und es werden zwei Spalten zur gleichen Tabelle hinzugefügt, die die neuen Antworten (Y) für die Studie darstellen: col1 und col2. Diese Antworten sind nicht im Modellskript enthalten.
Wie kann ich den folgenden Abschnitt im Skript ändern, sodass er die Eingabespalte übernimmt und das vorhandene Modellskript darauf ausführt? Ist das möglich? Oder muss ich manuell in jede DOE-Tabelle gehen und das „Modell“-Skript mit den beiden Antworten aus Spalte1 und Spalte2 ändern?
Modell = dt << Eigenschaft abrufen("Modell");
Einfügen in (Modell, Ausdruck (Ausführen));
Eval(Modell);
Erweiterte statistische ModellierungAutomatisierung und SkriptingVersuchsplanungMassenanpassungQualitäts- und ProzesstechnikBetreff: Verwenden Sie das Modellskript in der DOE-Tabelle, ändern Sie jedoch die AntwortenWerfen Sie einen Blick auf 'RemoveFrom()' mit 'Help > Scripting Index'. Wenn ich das richtig verstehe, könnte man auch verwenden:
NamesDefaultToHere(1);
modelScript = Expr(Fit Model(Effects(:A, :B, :A * :B, ), Y( :Y )));
RemoveFrom(modelScript, 2); // Remove the current response definition
InsertInto(modelScript, Expr(Y(:New Y))); // Add the updated response definition
InsertInto(modelScript, Expr(Run)); // Add the 'Run' directive
Print(modelScript);
Betreff: Verwenden Sie das Modellskript in der DOE-Tabelle, ändern Sie jedoch die AntwortenHallo Jan,
Ich habe es. Sehen Sie sich einfach das "Model" in der Custom RSM.jmp an, die Sie hier gezeigt haben. Y(:Y) ist das erste Argument unter Modell anpassen. während das Modell in meiner DOE-Tabelle das zweite (oder in diesem Fall letzte) Argument ist. Ich denke, mit RemoveFrom (modelscript, 1) wird das erste Argument in meinem "Model", das Effect ist, entfernt. Ich habe die 1 in -1 geändert und es funktioniert jetzt.
Vielen Dank für Ihre Hilfe, jetzt kann ich eine Schleife durch alle verschiedenen DOE-Tabellen aktivieren.
Betreff: Verwenden Sie das Modellskript in der DOE-Tabelle, ändern Sie jedoch die AntwortenHallo Jan,
Die folgende Zeile entfernt tatsächlich alles (alle Effekte) im DOE-"Modell"-Skript.
RemoveFrom (Modellskript, 1)
Unten ist ein Beispiel für das Modell, das erstellt wird, wenn ich ein DOE entwerfe. Wie auch immer, um das : Y durch ein Skript zu entfernen und zu ersetzen?
Fit Model(
Effects(
:A, :B, :A * :B,
),
Y( :Y )
);
Betreff: Verwenden Sie das Modellskript in der DOE-Tabelle, ändern Sie jedoch die AntwortenBitte finden Sie einen Weg:
NamesDefaultToHere(1);
// Example table with saved DOE script
dt = Open("$SAMPLE_DATA/Design Experiment/Custom RSM.jmp");
// Make a new response column with different (random) values
Eval(Column(dt, "Y") << getScript);
Column(dt, "Y 2") << setName("New Y");
Column(dt, "New Y") << setFormula(RandomNormal(0,1));
// Use the saved script with the new response column . . .
modelScript = dt << getScript("Model"); // Get the saved script
RemoveFrom(modelScript, 1); // Remove the current response definition
InsertInto(modelScript, Expr(Y(:New Y))); // Add the updated response definition
InsertInto(modelScript, Expr(Run)); // Add the 'Run' directive
modelScript; // Run the modified script
(Nicht sicher warum, aber 'SubstituteInto()' hatte einige Probleme).</CODE><CODE class=" language-jsl">