Как удалить повторяющиеся строки в r, чтобы их не осталось
Вы можете использовать следующие методы в R для удаления повторяющихся строк из фрейма данных, чтобы ни одна не осталась в результирующем фрейме данных:
Метод 1: используйте базу R
new_df <- df[ ! (duplicated(df) | duplicated(df, fromLast= TRUE )), ]
Способ 2: используйте dplyr
library (dplyr) new_df <- df %>% group_by(across(everything())) %>% filter(n() == 1 )
Следующие примеры показывают, как использовать каждый метод на практике со следующим фреймом данных:
#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
Пример 1: используйте базу R
В следующем коде показано, как использовать базовые функции R для удаления повторяющихся строк из фрейма данных, чтобы ни одной не осталось:
#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
Обратите внимание, что каждая из повторяющихся строк была удалена из фрейма данных, и ни один из дубликатов не сохранен.
Пример 2: использование dplyr
Следующий код показывает, как использовать функции пакета dplyr в R для удаления повторяющихся строк из фрейма данных, чтобы ни одной не осталось:
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
Обратите внимание, что каждая из повторяющихся строк была удалена из фрейма данных, и ни один из дубликатов не сохранен.
Также обратите внимание, что это дает тот же результат, что и предыдущий метод.
Примечание . Для очень больших кадров данных метод dplyr будет быстрее, чем базовый метод R.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные функции в R:
Как удалить строки в R по условию
Как удалить строки с NA в определенном столбце в R