So erhalten Sie den AUC-WertIch versuche, den AUC-Wert aus der Ausgabe der logistischen Regression abzurufen und ihn in eine Tabelle zu schreiben. Bisher gibt mein Skript einen leeren Wert anstelle von 0,62937 zurück, wie in der Ausgabe unten gezeigt. Die Datentabelle wird korrekt erstellt und der Befehl „Fit Model“ wird ausgeführt. Gibt es einen Fehler in der letzten Zeile? Ich folge einem Beispiel in einem anderen Beitrag in diesem Forum, vermute aber, dass meine ältere Version von JMP (Version 9.0) ein Problem sein könnte.
Names Default To Here( 1 );
// Open data table
dt = Open( "sample.jmp" );
// Create an output data table for the results
MyTable = New Table( "Results", New Column( "AUC" ) );
// Add a new row to the output data table
MyTable << Add Rows( 1 );
// Run Fit Model
MyResult = dt << Fit Model(Y( :case ),Effects( :weight ),Personality( Nominal Logistic ),Run(Positive Level( "1" ),Likelihood Ratio Tests( 1 ),ROC Curve( 1 ),));
// Add the AUC to the data table by grabbing it from the display report output
MyTable:AUC = (Report( MyResult )["Receiver Operating Characteristic"][Number Col Box( 1 )] << get [1]);


Automatisierung und SkripterstellungBetreff: So erhalten Sie den AUC-WertDer Eintrag für die AUC sieht nicht wie eine Number Col Box() aus.Welche Version von JMP verwenden Sie und auf welchem Betriebssystem läuft es?
Es sieht eher aus wie ein Textfeld.
Wenn ich verschiedene JMP-Versionen verwende, wird mir das von Ihnen angezeigte AUC-Format nicht angezeigt.
Betreff: So ermitteln Sie den AUC-WertIch verwende JMP9.0.0 unter Windows 11. Wenn ich die letzte Zeile ändere in:
MyTable:AUC = (Report( MyResult )["Receiver Operating Characteristic"][TextBox(6)] << get text );
Anschließend wird als Ergebnis für die Variable „AUC“ der String „Area Under Curve =" zurückgegeben. Hier ist ein Teil der Baumstruktur. Es ist dieser Wert in NumberBox(1), den ich extrahieren möchte.

Betreff: So erhalten Sie den AUC-WertVersuchen Sie, das abschließende „)“ vor die Teilzeichenfolgenreferenz „[1]“ zu verschieben.
:AUC = (Report( MyResult )["Receiver Operating Characteristic"][Number Col Box( 1 )] << get )[1];
Betreff: So erhalten Sie den AUC-WertDanke für deine Hilfe, Txnelson! Letztendlich hat Folgendes funktioniert:
Names Default To Here( 1 );
// Open data table
dt = Open( "sample.jmp" );
// Create an output data table for the results
MyTable = New Table( "Results", New Column( "AUC" ) );
// Add a new row to the output data table
MyTable << Add Rows( 1 );
// Run Fit Model
MyResult = dt << Fit Model(Y( :case ),Effects( :weight ),Personality( Nominal Logistic ),Run(Positive Level( "1" ),Likelihood Ratio Tests( 1 ),ROC Curve( 1 ),));
// Add the AUC to the data table by grabbing it from the display report output
MyTable:AUC = (Report( MyResult )["Receiver Operating Characteristic"][numberbox(1)] << get text);