Löschen ähnlicher ZeilenIch versuche, ein Skript zu erstellen, das eine Zeile aus meiner Tabelle löscht, wenn die ID und zwei Werte mit der Zeile davor identisch sind. Ich kann nicht alle doppelten Zeilen löschen, da es eine Spalte „Laufnummer“ gibt, die für jede Zeile eindeutig ist. Weiß jemand, warum mein Code nicht funktioniert?
// Delete Duplicate Rows (re-entries)
NRows = N Rows(dt);
For(i = 1, i <= NRows, i++,
If(
dt:ID[i] == dt:ID[i + 1] & Data Table("Sheet1"):value1[i] == dt:value1[i + 1] & dt
:value2[i] == dt:value2[i + 1],
{dt << Delete Rows(i), i--}
)
);
InhaltsorganisationDatenzusammenführung und -bereinigungBetreff: Löschen ähnlicher ZeilenIch denke, dass in diesem Teil Ihres Skripts in den Klammern etwas schief läuft (die if()-Funktion möchte dort im Allgemeinen keine Klammern):
{ dt << Zeilen löschen (i), i --}
Allerdings gibt es noch eine andere, vielleicht einfachere Möglichkeit, Ihr Ziel zu erreichen, indem Sie die in JMP integrierte Funktion zum Auswählen von Duplikaten verwenden:
dt << Select Duplicate Rows ({:ID, :Value 1, :Value 2});
dt << delete rows;