Odp.: jak znaleźć unikalne wiersze w wielu kolumnach
Aby znaleźć unikalne wiersze w wielu kolumnach ramki danych w R, możesz użyć następujących metod:
Metoda 1: Znajdź unikalne wiersze w wielu kolumnach (usuń inne kolumny)
df_unique <- unique(df[c(' col1 ', ' col2 ')])
Metoda 2: Znajdź unikalne wiersze w wielu kolumnach (zachowaj inne kolumny)
df_unique <- df[!duplicated(df[c(' col1 ', ' col2 ')]),]
Poniższe przykłady pokazują, jak w praktyce zastosować każdą z tych metod z następującą ramką danych:
#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
Metoda 1: Znajdź unikalne wiersze w wielu kolumnach (usuń inne kolumny)
Poniższy kod pokazuje, jak znaleźć unikalne wiersze w kolumnach conf i pos ramki danych:
#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
Rezultatem są cztery unikalne linie.
Należy również pamiętać, że kolumna punktów została automatycznie usunięta z wyników.
Metoda 2: Znajdź pojedyncze wiersze w wielu kolumnach (usuń inne kolumny)
Poniższy kod pokazuje, jak znaleźć pojedyncze wiersze w kolumnach conf i pos ramki danych i zachować wartości w kolumnie punkty :
#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
Należy pamiętać, że w kolumnach conf i pos istnieją tylko pojedyncze wiersze, a wartości w kolumnie punkty zostają zachowane.
Należy zauważyć, że zachowywana jest tylko wartość pierwszego unikalnego wystąpienia.
Na przykład w pierwszych dwóch kolumnach znajdowały się dwa wiersze zawierające „Wschód” i „G”, ale w końcowej ramce danych została zachowana tylko wartość punktowa (33) dla pierwszego wystąpienia tej unikalnej kombinacji.
Podobnie w pierwszych dwóch kolumnach znajdowały się dwa wiersze zawierające „West” i „F”, ale w końcowej ramce danych zachowano jedynie wartość punktową (34) dla pierwszego wystąpienia tej unikalnej kombinacji.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w języku R:
Jak znaleźć unikalne wartości w kolumnie w R
Jak policzyć unikalne wartości według grupy w R
Jak filtrować unikalne wartości za pomocą dplyr