Як видалити повторювані рядки в r (з прикладами)
Щоб видалити повторювані рядки з кадру даних у R, можна скористатися одним із двох методів:
Спосіб 1: Використовуйте 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 ')]), ]
Спосіб 2: використовуйте 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 )
Наведені нижче приклади показують, як використовувати цей синтаксис на практиці з таким кадром даних:
#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
Приклад 1: видаліть повторювані рядки за допомогою Base R
Наступний код показує, як видалити повторювані рядки з кадру даних за допомогою базових функцій R:
#remove duplicate rows from data frame
df[ ! duplicated(df), ]
team position
1A Guard
3 A Forward
4 B Guard
5B Center
Наступний код показує, як видалити повторювані рядки з певних стовпців у кадрі даних за допомогою base R:
#remove rows where there are duplicates in the 'team' column
df[ ! duplicated(df[c(' team ')]), ]
team position
1A Guard
4 B Guard
Приклад 2: видаліть повторювані рядки за допомогою dplyr
Наступний код показує, як видалити повторювані рядки з кадру даних за допомогою функції distinct() із пакета 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
Зауважте, що аргумент .keep_all повідомляє R зберігати всі стовпці у вихідному кадрі даних.
У наступному коді показано, як використовувати функцію distinct() для видалення повторюваних рядків із певних стовпців у фреймі даних:
library (dplyr) #remove duplicate rows from data frame df %>% distinct(team, .keep_all = TRUE ) team position 1A Guard 2 B Guard
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші поширені функції в R:
Як видалити рядки в R на основі умови
Як видалити рядки з NA в певному стовпці в R