A: come trovare righe univoche su più colonne
È possibile utilizzare i seguenti metodi per trovare righe univoche su più colonne di un frame di dati in R:
Metodo 1: trova righe univoche su più colonne (rimuovi altre colonne)
df_unique <- unique(df[c(' col1 ', ' col2 ')])
Metodo 2: trova righe univoche su più colonne (mantieni altre colonne)
df_unique <- df[!duplicated(df[c(' col1 ', ' col2 ')]),]
I seguenti esempi mostrano come utilizzare nella pratica ciascuno di questi metodi con il seguente frame di dati:
#create data frame
df <- data. frame (conf=c('East', 'East', 'East', 'West', 'West', 'West'),
pos=c('G', 'G', 'F', 'G', 'F', 'F'),
dots=c(33, 28, 31, 39, 34, 40))
#view data frame
df
conf pos points
1 East G 33
2 East G 28
3 East F 31
4 West G 39
5 West F 34
6 West F 40
Metodo 1: trova righe univoche su più colonne (rimuovi altre colonne)
Il codice seguente mostra come trovare righe univoche nelle colonne conf e pos del data frame:
#find unique rows across conf and pos columns
df_unique <- unique(df[c(' conf ', ' pos ')])
#view results
df_unique
conf pos
1 East G
3 East
4 West G
5 West
Il risultato sono quattro linee uniche.
Tieni inoltre presente che la colonna dei punti è stata automaticamente rimossa dai risultati.
Metodo 2: trovare singole righe su più colonne (rimuovere altre colonne)
Il codice seguente mostra come trovare singole righe nelle colonne conf e pos del data frame e mantenere i valori nella colonna points :
#find unique rows across conf and pos columns
df_unique <- df[!duplicated(df[c(' conf ', ' pos ')]),]
#view results
df_unique
conf pos points
1 East G 33
3 East F 31
4 West G 39
5 West F 34
Tieni presente che nelle colonne conf e pos esistono solo righe singole e i valori nella colonna points vengono conservati.
È importante notare che viene mantenuto solo il valore della prima occorrenza univoca.
Ad esempio, nelle prime due colonne c’erano due righe contenenti “Est” e “G”, ma nel frame di dati finale veniva mantenuto solo il valore in punti (33) per la prima occorrenza di questa combinazione univoca.
Allo stesso modo, c’erano due righe contenenti “Ovest” e “F” nelle prime due colonne, ma solo il valore in punti (34) per la prima occorrenza di questa combinazione unica è stato mantenuto nel frame di dati finale.
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni in R:
Come trovare valori univoci in una colonna in R
Come contare valori univoci per gruppo in R
Come filtrare valori univoci utilizzando dplyr