Entfernen doppelter Elemente in einer Tabelle<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Hallo alle,
Ich habe eine Tabelle mit ~ 20 Spalten und ungefähr 500 Zeilen, zwei dieser Spalten sind Seriennummer und Zeitstempel, und der Rest sind verschiedene Messdaten.
In einigen Fällen habe ich Datenzeilen mit derselben Seriennummer, aber alle anderen Werte sind unterschiedlich.
Mein Ziel ist es, ein Skript zu schreiben, um die Datentabelle zu bereinigen, sodass nur Zeilen mit eindeutiger Seriennummer übrig bleiben.
Ich möchte zuerst Artikel mit derselben Seriennummer auswählen und dann aus dieser Teilmenge denjenigen mit dem neuesten Zeitstempel (der nur ein numerischer Wert ist) identifizieren und den Rest löschen.
So habe ich eine aufgeräumte Tabelle mit eindeutigen Seriennummern übrig.
Würde mich freuen, wenn mir hier jemand helfen könnte, wie man diesen Code schreibt. Ich habe andere Beispiele im Forum überprüft, aber ich kämpfe immer noch damit.
Danke
Bbel, reißt
Betreff: Doppelte Elemente in einer Tabelle entfernenWenn Sie nicht nach einer Scripting-Lösung suchen. Sie können dies interaktiv tun, indem Sie eine Zeilenstatusspalte mit einer Formel erstellen.

Dies verwendet die Col Maximum-Funktion, die optionale Argumente für By Variables akzeptiert.
Sie können diese Funktion auch mit der Select Where-Nachricht in einem Skript verwenden.
dt = Open( "$SAMPLE_DATA\Big Class.jmp");
dt << auswählen wo(
Höhe == Spalte Max (
Größe, Alter, Geschlecht
)
);
-Jeff
Betreff: Doppelte Elemente in einer Tabelle entfernenhallo mpb,
Super!, habe es an meine Daten angepasst und es funktioniert wirklich gut!
vielen Dank
Grüße
Betreff: Doppelte Elemente in einer Tabelle entfernenDieser Code zeigt eine Möglichkeit, dies zu tun. Ich habe es gegen diese Daten ausgeführt:

mydt = Datentabelle ("MyDemo");
mydtsummary = Datentabelle( "MyDemo" ) << Zusammenfassung(
Gruppe( :SN ),
Max( :DT ),
Format des Statistikspaltennamens ("Statistik der Spalte")
);
mydt << Aktualisieren(
With( Datentabelle( mydtsummary) ),
Spalten abgleichen ( :SN = :SN ),
Spalten aus Update-Tabelle hinzufügen (:Max of DT)
);
mydt << select where(:DT == :Max of DT) << Zeilenauswahl invertieren;
mydt << Zeilen löschen;
mydt << Spalten löschen("Max von DT");
close(mydtsummary, nosave);