Wie kann ich doppelte IDs außer der ersten ID ausblenden/ausschließen?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Hallo tolle Leute,
Ich bin neu bei JMP und benötige Hilfe beim Bereinigen des Datensatzes.
Ich habe mehrere Duplikate in meinem Datensatz, bei denen eine Person in einem bestimmten Zeitraum mehrmals aufgenommen wurde.
Ich möchte nur die erste Folge der Einzelperson, entsprechend dem Zulassungsdatum (M/T/JJJJ)
Zum Beispiel,
Befragter mit einer ID-Nummer ABC11 erschien zweimal in meinem Datensatz. Der Beklagte wurde zur Behandlung aufgenommen 14.07.2013 und dann wieder aufgenommen 8 .25.2014.Ich möchte nur die Informationen von behalten ABC11 In 14.07.2013 )
Dank früherer Diskussionen habe ich herausgefunden, wie das geht entfernen die Duplikate sich an den Tisch setzen , passend zu den Spalten, Und Duplikate fallen lassen. Auf diese Weise erstelle ich eine neue Datendatei mit einer eindeutigen Kundenstichprobe (n=4.000) ohne die Duplikate aus der Originaldatei mit der insgesamt zugelassenen Stichprobe (n=6.000).
Jetzt möchte ich es jedoch ausblenden/ausschließen diese Duplikate und belassen sie in derselben Datendatei,
So kann ich in der späteren Analyse die Gesamtstichprobe (n=6000, mit Duplikaten) und die Einzelkundenstichprobe (n=4000, ohne Duplikate) flexibel vergleichen und gegenüberstellen.
Es sei denn, ich muss die Analyse separat ausführen und das Ergebnis in Datenberichten zusammenfassen, klingt nach Aufwand.
Segen,
Betreff: Wie kann ich doppelte IDs außer der ersten ID ausblenden/ausschließen?Sehr geehrte Frau,
Jetzt sieht die Syntax für mich wie eine Sprache aus, aber Ich schätze, ich habe noch einen langen Weg vor mir
Ich hoffe du hast einen guten Tag
Betreff: Wie kann ich doppelte IDs außer der ersten ID ausblenden/ausschließen?Klar, ich werde es versuchen...
Reihe() ist die „aktuelle“ Zeile.
Col Min ( Reihe () , : AUSWEIS ) gibt für jede :ID die kleinste Zeilennummer zurück
dt << Wählen Sie wo aus (... ) iteriert über alle Zeilen und wählt diejenigen aus, die der Bedingung in den Klammern entsprechen.
Hier, die Bedingung Sein getestet ist Col Min ( Reihe () , : AUSWEIS ) < Reihe () . Es wertet zu WAHR für jede Zeile mit einer Zeilennummer, die größer als die erste Zeile jeder ID ist. Nur die erste Instanz einer ID, also wenn Col Min(Row(), :ID) gleich Row() ist, wird als falsch ausgewertet und daher nicht ausgewählt.
<< verstecken und ausschließen Senden Sie eine Nachricht an die Datentabelle, um alle ausgewählten Zeilen auszublenden oder auszuschließen.
Ich habe JSL gelernt, indem ich den Scripting Guide (PDF-Buch) gelesen habe. Interaktion mit Benutzern in diesem Forum und jede Menge Versuch und Irrtum.
Auch der Skriptindex (ein exzellentes Ressource im Hilfemenü) ist für die Syntaxsuche unterwegs unverzichtbar.
Aber ich denke, dass für meine JSL-Lernkurve meine langjährige Erfahrung mit JMP am wichtigsten war. Ohne JMP-Kenntnisse hätte JSL für mich keinen Sinn ergeben.
Betreff: Wie kann ich doppelte IDs außer der ersten ID ausblenden/ausschließen?Vielen Dank, es hat funktioniert!
Wenn Sie Zeit haben, möchten Sie die Bedeutung dieses Skripts näher erläutern?
Oder wo finde ich eine Möglichkeit, den Umgang mit JSL zu erlernen?
Betreff: Wie kann ich doppelte IDs außer der ersten ID ausblenden/ausschließen?Entschuldigung, ich war zu schnell mit der Antwort. Die Spalte „Datum“ sollte in diesem Fall keine Gruppierungsvariable sein.
Sortieren Sie nach Datum und versuchen Sie Folgendes:
dt << Wählen Sie wo aus ( Col Min ( Reihe () , : AUSWEIS ) < Reihe ()) << verstecken und ausschließen ;
Betreff: Wie kann ich doppelte IDs außer der ersten ID ausblenden/ausschließen?Hallo, danke für deine Antwort,
Ich habe die JSL kopiert und in mein Skript eingefügt, aber aus irgendeinem Grund hat es nicht funktioniert.
Genauer gesagt funktionierte es nur bei wenigen, aber nicht bei allen.

Hat bei diesen nicht funktioniert.

Wie Sie sehen können (Entschuldigung für die schlechte Auflösung), haben wir insgesamt drei IDs AL2063098, und ich wollte, dass die Zeilennummern 333 und 334 gelöscht werden, aber nur Zeile 334 wurde ausgeschlossen/ausgeblendet.
Unten ist die JSL, die ich verwendet habe.
// Alle Vielfachen bis auf die erste Zeile ausschließen (nach Datum sortieren, um das früheste zu erhalten ...)
dt = Aktuelle Datentabelle () ;
dt << Wählen Sie wo aus ( Col Min ( Reihe () , : AUSWEIS , : Datum ) < Reihe ()) << verstecken und ausschließen ;
Betreff: Wie kann ich doppelte IDs außer der ersten ID ausblenden/ausschließen?Mit JSL:
// Alle Vielfachen bis auf die erste Zeile ausschließen (nach Datum sortieren, um das früheste zu erhalten ...)
dt = Aktuelle Datentabelle () ;
dt << Wählen Sie wo aus ( Col Min ( Reihe () , : Befragter , : Datum ) < Reihe ()) << verstecken und ausschließen ;
Gleicher Ansatz mit Spaltenformel:
dt << neue Kolumne ( "ausschließen" , Zeilenstatus , Formel ( Ausgeschlossener Zustand ( Col Min ( Reihe () , : Befragter , : Datum ) < Reihe ())))