JSL-Keep-Befehl, um gewünschte Variablen beizubehalten und unerwünschte Variablen zu löschen?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ich suche nach einem JSL-Skriptbefehl, um nur bestimmte Spaltenvariablen zu „behalten“ und alle anderen Variablen in der aktuellen Datentabelle zu löschen.
Dies wäre die Umkehrung des angegebenen Befehls: dt << Delete Columns( :A, :B, ... :N);
Im Idealfall würde ein effizienterer Keep-Befehl wie folgt aussehen:
dt = Aktuelle Datentabelle( );
dt << Spalten behalten ( :time, :day, :location );
(Ergebnis = Alle Spalten löschen, die nicht gleich sind :Uhrzeit, :Tag, :Ort).
Danke.
Betreff: JSL-Keep-Befehl, um gewünschte Variablen beizubehalten und unerwünschte Variablen zu löschen?In JMP 14 wurde JSL eine direktere Methode hinzugefügt. Mit dem Auswählen von Spalten, dem Umkehren der Spaltenauswahl und dem Löschen von Spalten können Sie die gewünschten Ergebnisse erzielen.
dt = open("$SAMPLE_DATA\Big Class.jmp");
a = {"height", "weight"};
dt << select columns(a);
dt << invert column selection;
b = dt << get selected columns;
dt << delete columns(b);Betreff: JSL-Keep-Befehl, um gewünschte Variablen beizubehalten und unerwünschte Variablen zu löschen?Eine einfachere Lösung, die leicht manuell (und per Skript) durchgeführt werden kann, besteht wahrscheinlich darin, nur eine Teilmenge Ihrer Daten zu erstellen.
Wählen Sie die Spalten aus, die Sie behalten möchten, und erstellen Sie dann eine Teilmenge mit der Option „Ausgewählte Spalten“ (1).Dies sollte auch schneller sein als die oben beschriebene Methode, wenn die Datentabelle groß wird, aber ich habe es nicht getestet.

Betreff: JSL-Keep-Befehl, um gewünschte Variablen beizubehalten und unerwünschte Variablen zu löschen?Danke schön.Y Unser obiges Skript war hilfreich.
Ich habe geringfügige Änderungen vorgenommen, um in der aktuellen Datentabelle zu arbeiten, z. B. in der Datentabelle („name_here“), im Vergleich zum Erstellen einer neuen Datentabelle, und das Ergebnis war erfolgreich.
Betreff: JSL-Keep-Befehl, um gewünschte Variablen beizubehalten und unerwünschte Variablen zu löschen?Bis sie es zu JSL hinzufügen, können Sie Folgendes versuchen:
Betreff: Spalten löschen, die nicht in einer Liste enthalten sind
Es könnte weiterentwickelt werden und ich fand es sehr nützlich, bevor ich den Befehl zum Aktualisieren der Tabelle verwendete.
Vor dem Aktualisieren von Tabellen ist es sinnvoll, Spalten mit demselben Namen zu entfernen, die Sie nicht aktualisieren möchten. Im Folgenden wird dies erledigt, indem einfach die zu behaltenden Spalten definiert werden.
dt10 = New Table( "Test",
Add Rows( 10 ),
New Column( "A" ),
New Column( "B" ),
New Column( "C" ),
New Column( "D" )
);
Keep = {"A", "C"};
todelete = dt10 << get column names( "string" );
For( in = 1, in <= N Items( Keep ), in++, <BR />// assuming the to keep list is shorter than the list of columns in the table.
location = Contains( todelete, Keep[in]) ; // find the location of the keepers
if (location > 0, Remove From( todelete, location, 1 ) // if found remove it
));
if (nitems (todelete) > 0, dt10 << delete columns( todelete )); <BR />// if there is a delete list delete the columns from the table
Wenn Sie das Entwicklungsteam nach diesem Befehl fragen, bitten Sie es, dasselbe für Zeilen zu machen.
am besten
Ron
Betreff: JSL-Keep-Befehl, um gewünschte Variablen beizubehalten und unerwünschte Variablen zu löschen?Ich gehe davon aus, dass Sie eine Funktionserweiterungsanfrage stellen.Sie sind besser bedient, wenn Sie dies an senden
support@jmp.com