Dplyr: як використовувати anti_join для пошуку невідповідних записів


Ви можете використовувати функцію anti_join() із пакета dplyr у R, щоб повернути всі рядки у кадрі даних, які не мають відповідних значень в іншому кадрі даних.

Ця функція використовує такий базовий синтаксис:

 anti_join(df1, df2, by= ' col_name ')

Наступні приклади показують, як використовувати цей синтаксис на практиці.

Приклад 1: використовуйте anti_join() зі стовпцем

Припустимо, ми маємо наступні два кадри даних у R:

 #create data frames
df1 <- data. frame (team=c('A', 'B', 'C', 'D', 'E'),
                  dots=c(12, 14, 19, 24, 36))

df2 <- data. frame (team=c('A', 'B', 'C', 'F', 'G'),
                  dots=c(12, 14, 19, 33, 17))

Ми можемо використовувати функцію anti_join() , щоб повернути всі рядки в першому кадрі даних, які не мають відповідної команди в другому кадрі даних:

 library (dplyr)

#perform anti join using 'team' column
anti_join(df1, df2, by=' team ')

  team points
1 D 24
2 E 36

Ми бачимо, що є рівно дві команди з першого кадру даних, які не мають відповідної назви команди у другому кадрі даних.

Приклад 2. Використовуйте anti_join() із кількома стовпцями

Припустимо, ми маємо наступні два кадри даних у R:

 #create data frames
df1 <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'),
                  position=c('G', 'G', 'F', 'G', 'F', 'C'),
                  dots=c(12, 14, 19, 24, 36, 41))

df2 <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'),
                  position=c('G', 'G', 'C', 'G', 'F', 'F'),
                  dots=c(12, 14, 19, 33, 17, 22))

Ми можемо використати функцію anti_join() , щоб повернути всі рядки в першому кадрі даних, які не мають відповідної команди та позиції у другому кадрі даних:

 library (dplyr)

#perform anti join using 'team' and 'position' columns
anti_join(df1, df2, by=c(' team ', ' position '))

  team position points
1 FY 19
2 BC 41

Ми бачимо, що є рівно два записи з першого кадру даних, які не мають відповідної назви команди та позиції у другому кадрі даних.

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші поширені функції в dplyr:

Як вибрати стовпці за індексом за допомогою dplyr
Як об’єднати кілька кадрів даних за допомогою dplyr
Як фільтрувати рядки, що містять певний рядок, за допомогою dplyr

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *