R, doppelte Zeilen bedingt entfernen

8

Ich habe einen Datenrahmen in R, der die Spalten ID.A, ID.B und DISTANCE enthält, wobei distance den Abstand zwischen ID.A und ID.B darstellt. Für jeden Wert (1- & gt; n) von ID.A kann es mehrere Werte von ID.B und DISTANCE geben (dh es können mehrere doppelte Zeilen in ID.A vorhanden sein, z. B. alle von Wert 4, die jeweils eine unterschiedliche ID haben. B und Entfernung in dieser Reihe).

Ich möchte in der Lage sein, Zeilen zu entfernen, in denen ID.A dupliziert ist, aber abhängig vom Abstandswert, so dass mir die kleinsten Entfernungswerte für jeden ID.A-Datensatz übrig bleiben.

Hoffentlich macht das Sinn?

Vielen Dank im Voraus

BEARBEITEN

Ich hoffe, ein Beispiel wird sich als nützlicher erweisen als mein Text. Hier möchte ich die zweite und dritte Zeile entfernen, wo ID.A = 3:

%Vor%     
JSnf2012 31.05.2012, 14:08
quelle

3 Antworten

7

Sie können es auch einfach in der Basis R machen. Wenn dat Ihr Datenrahmen ist,

%Vor%     
Matthew Plourde 31.05.2012 14:26
quelle
6

Eine Möglichkeit:

%Vor%

Was gibt:

%Vor%     
Davi Moreira 01.06.2012 03:15
quelle
5

Sie können dafür das Paket plyr verwenden. Zum Beispiel, wenn Ihre Daten wie folgt sind:

%Vor%

Sie können die Funktion ddply wie folgt verwenden:

%Vor%

Was gibt:

%Vor%     
juba 31.05.2012 14:21
quelle

Tags und Links