Як зробити внутрішнє об’єднання в r (з прикладами)


Існує два поширених способи виконання внутрішнього об’єднання в R:

Спосіб 1: Використовуйте Base R

 merge(df1, df2, by=' column_to_join_on ')

Спосіб 2: використовуйте dplyr

 library (dplyr)

inner_join(df1, df2, by=' column_to_join_on ')

Обидва методи дадуть однаковий результат, але метод dplyr працюватиме швидше на надзвичайно великих наборах даних.

У наведених нижче прикладах показано, як використовувати кожну з цих функцій на практиці з такими кадрами даних:

 #define first data frame
df1 = data. frame (team=c('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'),
                 points=c(18, 22, 19, 14, 14, 11, 20, 28))

df1

  team points
1 to 18
2 B 22
3 C 19
4 D 14
5 E 14
6 F 11
7 G 20
8:28 a.m.

#define second data frame
df2 = data. frame (team=c('A', 'B', 'C', 'D', 'G', 'H'),
                 assists=c(4, 9, 14, 13, 10, 8))

df2

  team assists
1 to 4
2 B 9
3 C 14
4 D 13
5G 10
6:8 a.m.

Приклад 1: Внутрішнє об’єднання за допомогою Base R

Ми можемо використати функцію merge() у базовому R, щоб виконати внутрішнє об’єднання, використовуючи стовпець team як стовпець для приєднання:

 #perform inner join using base R
df3 <- merge(df1, df2, by=' team ')

#view result
df3

  team points assists
1 to 18 4
2 B 22 9
3 C 19 14
4 D 14 13
5 G 20 10
6:28 a.m. 8

Зауважте, що лише команди, які з’явилися в обох наборах даних, зберігаються в остаточному наборі даних.

Приклад 2: Внутрішнє об’єднання за допомогою dplyr

Ми можемо використати функцію inner_join() із пакета dplyr , щоб виконати внутрішнє з’єднання, використовуючи стовпець «team» як стовпець для приєднання:

 library (dplyr)

#perform inner join using dplyr 
df3 <- inner_join(df1, df2, by=' team ')

#view result
df3

  team points assists
1 to 18 4
2 B 22 9
3 C 19 14
4 D 14 13
5 G 20 10
6:28 a.m. 8

Зауважте, що це відповідає результату, який ми отримали за допомогою функції merge() у базовому R.

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

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

Як зробити об’єднання зліва в R
Як зробити правильне об’єднання в R
Як додати стовпець до кадру даних у R
Як видалити стовпці з кадру даних у R

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

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