Wie Entfernen von doppelten Daten in R

Eine sehr nützliche Anwendungsdaten von subsetting ist, um doppelte Werte zu finden und zu entfernen. R hat eine nützliche Funktion, dupliziert (), dass findet doppelte Werte und gibt einen logischen Vektor, der Sie, ob der spezifische Wert ist ein Duplikat eines vorherigen Wert teilt. Dies bedeutet, daß für Werte dupliziert, dupliziert () kehrt zurück FALSCH nach dem ersten Auftreten und WAHR für jedes folgende Auftreten dieses Wertes, wie im folgenden Beispiel:

> Dupliziert (c (1,2,1,3,1,4)) [1] FALSCH FALSCH RICHTIG FALSCH RICHTIG FALSCH

Wenn Sie dies auf einem Datenrahmen versuchen, R überprüft automatisch die Beobachtungen (das heißt, es jede Zeile als Wert behandelt). So, zum Beispiel, mit der Datenrahmen Iris:

> Dupliziert (Iris) [1] false false false false false false false false false [10] false false false false false false false false false .... [136] false false false false false false FALSE TRUE FALSE [145] FALSCH FALSCH FALSCH FALSCH FALSCH FALSCH

Wenn Sie genau hinschauen, bemerken Sie, dass Zeile 143 ist ein Duplikat (weil das 143. Element Ihrer Ergebnis den Wert WAHR). Sie können dies auch sagen, durch die Verwendung von welche() Funktion:

> Die (dupliziert (Iris)) [1] 143

Nun entfernen Sie das Duplikat aus Iris, Sie müssen diese Zeile aus Ihrer Daten auszuschließen. Denken Sie daran, dass es zwei Möglichkeiten ausschließen Daten mit subsetting:

  • Geben Sie einen logischen Vektor, wo FALSCH bedeutet, wird das Element ausgeschlossen. Das ! (Ausrufezeichen) ist eine logische Negation. Dies bedeutet, dass es konvertiert WAHR in FALSCH und umgekehrt. So entfernen Sie die Duplikate aus Iris, Sie wie folgt vor:

    > Iris [! Dupliziert (Iris),]
  • Geben Sie negative Werte. Mit anderen Worten:

> index lt; - die (dupliziert (Iris))> Iris [-Index,]

In beiden Fällen werden Sie feststellen, dass Ihre Anweisung Zeile 143 entfernt hat.

Menü