Ersetzen mehrerer Zeilenwert aus einer Spalte funktioniert nicht richtigHallo JMP-Community,
Ich habe ein Problem aufgetreten, das ziemlich seltsam ist. Hier ist mein Code:
dt_temp = data table("aaaa");
dt_temp << Summary( Group( :Column1,:Column2), Freq( "None" ), Weight( "None" ),output table name( "summary" ) );
data table("summary") << select where (:N rows >= 2 & !contains(:Column1,"AA") & !contains(:Column1,"BB") );
rows = dt_temp << get selected rows;
dt_temp:Column3[rows] = "";
//Column(dt_temp, "Column3")[rows] = "";
Wenn ich diesen Code ausführe, haben sogar die Zeilen einen Wert wie [10, 11, 20, 21], aber das Endergebnis von column3 ist anders. Es ersetzt andere Zeilen (sagen wir Zeile 1, 5, ...) anstelle von Zeilen in ausgewählten Zeilen.
Könnten Sie mir helfen, dieses Problem zu lösen?
SkriptingBetreff: Ersetzen mehrerer Zeilenwerte aus einer Spalte funktioniert nicht richtigVersuchen Sie, Werte in der ursprünglichen Datentabelle oder in der Übersichtstabelle zu ersetzen? Das scheint bei mir ganz gut zu funktionieren:
Names Default To Here(1);
dt_temp = Open("$SAMPLE_DATA/Big Class.jmp");
dt_temp << Summary(Group(:age, :sex), Freq("None"), Weight("None"), output table name( "summary" ));
data table("summary") << Select Where(:N Rows >= 3 & !Contains(:sex, "M"));
rows = dt_temp << Get Selected Rows;
show(dt_temp:name[rows]);
dt_temp:name[rows] = "";
show(dt_temp:name[rows]);Betreff: Ersetzen mehrerer Zeilenwerte aus einer Spalte funktioniert nicht richtigHallo Jarmo,
Danke für deinen Vorschlag, aber bei mir scheint er nicht zu funktionieren.
Zur Verdeutlichung möchte ich die Werte in der Originaltabelle basierend auf der Bedingung der Übersichtstabelle ersetzen.
Ich habe auch versucht, Ihren Code auszuführen, und hier ist das Ergebnis:
Ausgewählte Zeilen aus der Übersichtstabelle:

Ausgewählte Zeilen aus der Haupttabelle. Es wurden 15 Zeilen ausgewählt, aber es wurden nur die ersten Zeilen jeder Gruppe ersetzt:

Betreff: Ersetzen mehrerer Zeilenwerte aus einer Spalte funktioniert nicht richtigWelche JMP-Version verwenden Sie? Ich verwende 15.2.1 und mein Beispiel scheint für mich gut zu funktionieren:

Betreff: Ersetzen mehrerer Zeilenwerte aus einer Spalte funktioniert nicht richtigIch verwende Jmp Pro 12.2.0, 64-Bit-Version. Protokolldatei für Ihre Referenz:

Obwohl die Protokolldatei mit der Zeilennummer (-1) nicht ungültig ist, aber wenn ich Zeilen anzeigt, gibt es keine solche Zeile.
Betreff: Ersetzen mehrerer Zeilenwerte aus einer Spalte funktioniert nicht richtigBasierend auf Abonnement von Datentabellen die Art und Weise, wie ich die Zellenwerte festlege, könnte in JMP13 verfügbar geworden sein.
Ich werde versuchen, Schleifen zu vermeiden, aber ich habe keinen Zugriff auf eine ältere Version von JMP als 15, daher bin ich mir nicht sicher, ob dies auch funktioniert:
Names Default To Here(1);
dt_temp = Open("$SAMPLE_DATA/Big Class.jmp");
dt_summary = dt_temp << Summary(Group(:age, :sex), Freq("None"), Weight("None"), output table name( "summary" ));
dt_summary << Select Where(:N Rows >= 3 & !Contains(:sex, "M"));<BR />
//get rows which should be set to empty
rows = dt_temp << Get Selected Rows;
//get all values in name column
colValues = dt_temp:name << get values;
show(colValues);
//set selected rows in the colValues list to ""
colValues[rows] = "";
show(colValues);
dt_temp:name << Set Values(colValues);