Hoe dubbele regels in r te verwijderen, zodat er geen meer over zijn


U kunt de volgende methoden in R gebruiken om dubbele rijen uit een dataframe te verwijderen, zodat er geen rijen in het resulterende dataframe achterblijven:

Methode 1: Gebruik Base R

 new_df <- df[ ! (duplicated(df) | duplicated(df, fromLast= TRUE )), ]

Methode 2: gebruik dplyr

 library (dplyr)

new_df <- df %>%
          group_by(across(everything())) %>%
          filter(n() == 1 )

De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken met het volgende dataframe:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
                 points=c(20, 20, 28, 14, 13, 18, 27, 13))

#view data frame
df

  team points
1 to 20
2 to 20
3 to 28
4 to 14
5 B 13
6 B 18
7 B 27
8 B 13

Voorbeeld 1: gebruik Basis R

De volgende code laat zien hoe u R-basisfuncties kunt gebruiken om dubbele rijen uit het dataframe te verwijderen, zodat er geen overblijven:

 #create new data frame that removes duplicates so none are left
new_df <- df[ ! (duplicated(df) | duplicated(df, fromLast= TRUE )), ]

#view new data frame
new_df

  team points
3 to 28
4 to 14
6 B 18
7 B 27

Merk op dat elk van de dubbele rijen uit het dataframe is verwijderd en dat geen van de duplicaten behouden blijft.

Voorbeeld 2: gebruik van dplyr

De volgende code laat zien hoe u de functies in het dplyr- pakket in R kunt gebruiken om dubbele rijen uit het dataframe te verwijderen, zodat er geen overblijven:

 library (dplyr)

#create new data frame that removes duplicates so none are left
new_df <- df %>%
          group_by(across(everything())) %>%
          filter(n() == 1 )

#view new data frame
new_df

# A tibble: 4 x 2
# Groups: team, points [4]
  team points
    
1 to 28
2 to 14
3 B 18
4 B 27

Merk op dat elk van de dubbele rijen uit het dataframe is verwijderd en dat geen van de duplicaten behouden blijft.

Merk ook op dat dit hetzelfde resultaat oplevert als de vorige methode.

Opmerking : voor extreem grote dataframes zal de dplyr-methode sneller zijn dan de basis-R-methode.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende functies in R kunt uitvoeren:

Hoe rijen in R te verwijderen op basis van de voorwaarde
Hoe rijen met NA in een specifieke kolom in R te verwijderen

Einen Kommentar hinzufügen

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