Come rimuovere righe duplicate in r (con esempi)


Puoi utilizzare uno dei due metodi per rimuovere righe duplicate da un frame di dati in R:

Metodo 1: utilizzare 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 ')]), ]

Metodo 2: usa dplyr

 #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 )

I seguenti esempi mostrano come utilizzare in pratica questa sintassi con il seguente frame di dati:

 #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

Esempio 1: rimuovi le righe duplicate utilizzando Base R

Il codice seguente mostra come rimuovere righe duplicate da un frame di dati utilizzando le funzioni di base R:

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

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

Il codice seguente mostra come rimuovere righe duplicate da colonne specifiche in un frame di dati utilizzando la base R:

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

  team position
1A Guard
4 B Guard

Esempio 2: rimuovi le righe duplicate utilizzando dplyr

Il codice seguente mostra come rimuovere righe duplicate da un frame di dati utilizzando la funzione distinti() dal pacchetto dplyr :

 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

Nota che l’argomento .keep_all dice a R di mantenere tutte le colonne nel frame di dati originale.

Il codice seguente mostra come utilizzare la funzione distinti() per rimuovere righe duplicate da colonne specifiche in un frame di dati:

 library (dplyr)

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

  team position
1A Guard
2 B Guard

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre funzioni comuni in R:

Come eliminare le righe in R in base alla condizione
Come eliminare le righe con NA in una colonna specifica in R

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *