Wert nach / vor den aktuell ausgewählten Zeilen zuweisenHallo, aus Neugier,
Wenn Sie Zeilen ausgewählt haben, aber nicht nur diese auswählen müssen, sondern auch diejenigen, die genau nebeneinander liegen (davor / danach jeweils 1 Zeile), wie können Sie das Skript erstellen?
Jetzt habe ich mehrere neue Spalten angelegt und den Zeilen Werte hinzugefügt, die ich auch auswählen möchte, um später eine Select Where-Funktion ausführen zu können.
Ein eleganter Weg würde sehr geschätzt!
Prost, Astrid
Re: Wert nach / vor den aktuell ausgewählten Zeilen zuweisenDanke, das hat für meine Frage perfekt funktioniert!
@julianisch schrieb:
Hallo Astrid,
Ich vermute, es gibt einen eleganteren Weg, aber Folgendes sollte es tun:
dt = Current Data Table();
curSelRow = as list(dt << Get Selected Rows());
newSelRow = curSelRow || curSelRow + 1 || curSelRow - 1;
//remove a row = 0 reference if present
Remove From( newSelRow, aslist(loc(newSelRow,0)));
//remove reference to a row beyond data set
Remove From( newSelRow, aslist(loc(newSelRow,NRows(dt)+1)));
dt << Select Rows(newSelRow);
edit: Code hinzugefügt, um den Verweis auf eine Zeile nach der letzten Zeile im Datensatz zu entfernen (was passieren würde, wenn die letzte Zeile im Datensatz ausgewählt wird).
@julianisch schrieb:
Hallo Astrid,
Ich vermute, es gibt einen eleganteren Weg, aber Folgendes sollte es tun:
dt = Current Data Table();
curSelRow = as list(dt << Get Selected Rows());
newSelRow = curSelRow || curSelRow + 1 || curSelRow - 1;
//remove a row = 0 reference if present
Remove From( newSelRow, aslist(loc(newSelRow,0)));
//remove reference to a row beyond data set
Remove From( newSelRow, aslist(loc(newSelRow,NRows(dt)+1)));
dt << Select Rows(newSelRow);
edit: Code hinzugefügt, um den Verweis auf eine Zeile nach der letzten Zeile im Datensatz zu entfernen (was passieren würde, wenn die letzte Zeile im Datensatz ausgewählt wird).
Re: Wert nach / vor den aktuell ausgewählten Zeilen zuweisenDanke, es hat funktioniert!
Re: Wert nach / vor den aktuell ausgewählten Zeilen zuweisendt = Open( "$SAMPLE_DATA/Cities.jmp" );
dt << Select Randomly(0.1); // Select random rows for demo
SR = dt << Get Selected Rows(); // Get row numbers of selected rows
// Assuming we want to select the rows after the selected rows
for( i = 1, i <= N Row(SR), i++,
NewRowToSelect = SR[i] + 1 ;
dt << Select Rows(NewRowToSelect); // Alternatively can store these values as a list and pass at once
);
Re: Wert nach / vor den aktuell ausgewählten Zeilen zuweisenHallo Astrid,
Ich vermute, es gibt einen eleganteren Weg, aber Folgendes sollte es tun:
dt = Current Data Table();
curSelRow = as list(dt << Get Selected Rows());
newSelRow = curSelRow || curSelRow + 1 || curSelRow - 1;
//remove a row = 0 reference if present
Remove From( newSelRow, aslist(loc(newSelRow,0)));
//remove reference to a row beyond data set
Remove From( newSelRow, aslist(loc(newSelRow,NRows(dt)+1)));
dt << Select Rows(newSelRow);
edit: Code hinzugefügt, um den Verweis auf eine Zeile nach der letzten Zeile im Datensatz zu entfernen (was passieren würde, wenn die letzte Zeile im Datensatz ausgewählt wird).