Hallo zusammen,
Ich habe eine Datenbank mit doppelten Werten für einige Spalten. Das Ziel besteht darin, Werte aus einer Spalte zu entfernen, indem der Wert „.wenn die zuvor genannten Spalten doppelte Werte haben.
Hier ein Überblick über die Datenbank:

Zum Beispiel in diesem Auszug: Wenn es doppelte Zellen gibt (Aufgabenspalte, Batch und Operation), wäre es notwendig, den Wert „.(dies kommt daher einem Löschen der Werte gleich) in den Spalten % Prd, % Proc, % Prd (6 Monate), % Proc (6 Monate).
Um das zu bekommen:

Ich habe mit folgendem Skript begonnen:
Names Default To Here( 1 );
dt = current data table();
// Sélectionner les lignes dupliquées
a = dt << Select Duplicate Rows( Match( :lot, :tache, :op ) );
Column(dt, 11)[a] =.;
Column(dt, 12)[a] =.;
Column(dt, 13)[a] =.;
Column(dt, 14)[a] =.;
Vielen Dank für Ihre Hilfe !
Sie können verwenden Abonnieren der Datentabelle um die Werte in Spalten zu ersetzen. Rufen Sie zunächst eine Liste der doppelten Werte ab (<< Doppelte Zeilen auswählen + << Ausgewählte Zeilen abrufen ist eine Option)
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
columns_to_modify = {"height", "weight"};
dt << Clear Select;
dt << Select Duplicate Rows(Match(:age, :sex));
duplicate_rows = dt << Get Selected Rows;
dt << Clear Select;
wait(1);
dt[duplicate_rows, columns_to_modify] = .;
Am Ende habe ich beide Funktionen verwendet, aber ohne das richtige JSL-Sprachkonstrukt. Vielen Dank für Ihre Antwort!