Automatisieren Sie die (Skript-)Optimierung für „jede Zeile“ mit Custom ProfilerHallo, ich habe einen Kunden @Solvay, der Custom Profiler verwendet.
Sein Ziel ist es, jede Zeile durchzugehen, deren Leistung unter der Spezifikation liegt, die Faktorwerte abzurufen, die Faktoren zu sperren, auf die er keine Kontrolle hat, und die Leistung mithilfe der Faktoren zu optimieren, auf die er Kontrolle hat, und dann die neuen Einstellungen und die erwartete Leistung zu speichern .
Dies kann manuell erfolgen, leider speichert das Log den entsprechenden Code nicht.
Da er über eine große Datentabelle verfügt, würde er den Prozess gerne skripten, um ihn zu automatisieren.
Kennt jemand den entsprechenden Code?
Hinweis: Ich schätze, dies sollte in den nächsten Tagen in der JMP-Community erscheinen.
Emmanuel
Betreff: Automatisieren Sie die (Skript-)Optimierung für „jede Zeile“ mithilfe des benutzerdefinierten ProfilersDanke euch beiden 
Betreff: Automatisieren Sie die (Skript-)Optimierung für „jede Zeile“ mithilfe des benutzerdefinierten ProfilersIch habe mit der Idee herumgespielt, so etwas zu machen.
Names Default To Here( 1 );
// comment out the nexct line if the script is pasted into a table
dt = Open( "AutoProfiler Tiretread.jmp" );
// uncomment the next line if the script is pasted into a table
//dt=current data table();
//This is where your profiler script goes
obj = dt << Profiler(
Y(
:Pred Formula ABRASION,
:Pred Formula MODULUS,
:Pred Formula ELONG,
:Pred Formula HARDNESS
),
Profiler(
1,
Term Value(
SILICA( 1.25, Lock( 0 ), Show( 1 ) ),
SILANE( 50, Lock( 0 ), Show( 1 ) ),
SULFUR( 2.25, Lock( 0 ), Show( 1 ) )
),
Simulator(
1,
Factors(
SILICA << Random( Normal( 1.25, 0.3266 ) ),
SILANE << Random( Normal( 50, 6.532 ) ),
SULFUR << Random( Normal( 2.25, 0.3266 ) )
),
Automatic Histogram Update( 1 )
)
)
);
//your profiler goes above here
obj << Simulator( 1 );
obj2 = obj << Get Simulator;
obj2 << Automatic Histogram Update( 1 );
For( i = 1, i <= N Rows( dt ), i++,
obj << Set to Data in Row( i );
obj << Remember Settings(Column(1)[i]); //"Column(1)[i]" is the firtst column of the table, ith row
);//end of for loop
obj<<DISPATCH></DISPATCH>
Es führt den Profiler aus und speichert die Einstellungen für alle Zeilen in der Tabelle. Ihr Kunde müsste die Fehlerzeilen unterteilen und dann ein Skript wie dieses ausführen.

Betreff: Automatisieren Sie die (Skript-)Optimierung für „jede Zeile“ mithilfe des benutzerdefinierten ProfilersAnstatt (zusätzlich?) Schleifen zu verschachteln und „Mazimisieren und Erinnern“ zu verwenden, gibt es auch die Meldung „Für jeden Rasterpunkt maximieren“, die untersucht werden könnte.
Betreff: Automatisieren Sie die (Skript-)Optimierung für „jede Zeile“ mithilfe des benutzerdefinierten ProfilersHier ist ein Skript, um dies zu tun, indem nur eine Variable gesperrt wird. Um mehrere Variablen schrittweise zu sperren, müssen Sie weitere For-Schleifen verschachteln:
dt = open ("$SAMPLE_DATA\Body Fat.jmp");
dt << New Column ("Formula", Set Formula (109.665262588823 + 0.329339426252964 * :"Weight (lbs)"n +
-1.47623913006859 * :"Height (inches)"n + -0.492211525467987 *
:"Neck circumference (cm)"n + -1.41262250197006 *
:"Wrist circumference (cm)"n + (:"Height (inches)"n
-70.1488095238095) * ((:"Height (inches)"n - 70.1488095238095) *
-0.0306978267773712) + (:"Height (inches)"n - 70.1488095238095) * ((
:"Neck circumference (cm)"n - 37.9920634920635) * -0.121564139238233)
+ (:"Neck circumference (cm)"n - 37.9920634920635) * ((
:"Neck circumference (cm)"n - 37.9920634920635) * -0.127296845579246)));
dt:Formula << Set Property ("Response Limits", {Goal( Match Target ), Lower (20, .05), Middle (25, 1), Upper (30, .05)});
prof = dt << Profiler ( Y(:Formula));
for (i = 60, i <= 74, i++,
prof << Term Value ("Height (inches)" (i, Lock (1)) );
prof << Maximize and Remember;
);