So entfernen sie doppelte zeilen in r (mit beispielen)


Sie können eine von zwei Methoden verwenden, um doppelte Zeilen aus einem Datenrahmen in R zu entfernen:

Methode 1: Verwenden Sie Base R

 #remove duplicate rows across entire data frame
df[ ! duplicated(df), ]

#remove duplicate rows across specific columns of data frame
df[ ! duplicated(df[c(' var1 ')]), ]

Methode 2: dplyr verwenden

 #remove duplicate rows across entire data frame 
df %>%
  distinct(.keep_all = TRUE )

#remove duplicate rows across specific columns of data frame
df %>%
  distinct(var1, .keep_all = TRUE )

Die folgenden Beispiele zeigen, wie diese Syntax in der Praxis mit dem folgenden Datenrahmen verwendet werden kann:

 #define data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'),
                 position=c('Guard', 'Guard', 'Forward', 'Guard', 'Center', 'Center'))

#view data frame
df

  team position
1A Guard
2 A Guard
3 A Forward
4 B Guard
5B Center
6B Center

Beispiel 1: Doppelte Zeilen mit Base R entfernen

Der folgende Code zeigt, wie Sie mithilfe von R-Basisfunktionen doppelte Zeilen aus einem Datenrahmen entfernen:

 #remove duplicate rows from data frame
df[ ! duplicated(df), ]

  team position
1A Guard
3 A Forward
4 B Guard
5B Center

Der folgende Code zeigt, wie Sie mit Basis R doppelte Zeilen aus bestimmten Spalten in einem Datenrahmen entfernen:

 #remove rows where there are duplicates in the 'team' column
df[ ! duplicated(df[c(' team ')]), ]

  team position
1A Guard
4 B Guard

Beispiel 2: Doppelte Zeilen mit dplyr entfernen

Der folgende Code zeigt, wie Sie doppelte Zeilen aus einem Datenrahmen mithilfe der Funktion „distinct()“ aus dem Paket „dplyr“ entfernen:

 library (dplyr)

#remove duplicate rows from data frame
df %>%
  distinct(.keep_all = TRUE )

  team position
1A Guard
2 A Forward
3 B Guard
4B Center

Beachten Sie, dass das Argument .keep_all R anweist, alle Spalten im ursprünglichen Datenrahmen beizubehalten.

Der folgende Code zeigt, wie Sie mit der Funktion „distinct()“ doppelte Zeilen aus bestimmten Spalten in einem Datenrahmen entfernen:

 library (dplyr)

#remove duplicate rows from data frame
df %>%
  distinct(team, .keep_all = TRUE )

  team position
1A Guard
2 B Guard

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere allgemeine Funktionen in R ausführen:

So löschen Sie Zeilen in R basierend auf der Bedingung
So löschen Sie Zeilen mit NA in einer bestimmten Spalte in R

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert