Левое соединение в dplyr с разными именами столбцов


Вы можете использовать следующий базовый синтаксис в dplyr для объединения двух фреймов данных слева, когда соединяемые столбцы имеют разные имена в каждом фрейме данных:

 library (dplyr)

final_df <- left_join(df_A, df_B, by = c(' team ' = ' team_name '))

В этом конкретном примере будет выполняться левое соединение для кадров данных с именами df_A и df_B , объединяя столбец из df_A с именем team и столбец из df_B с именем team_name .

В следующем примере показано, как использовать этот синтаксис на практике.

Пример. Выполните левое соединение с разными именами столбцов в dplyr.

Предположим, у нас есть следующие два фрейма данных в R:

 #create first data frame
df_A <- data. frame (team=c('A', 'B', 'C', 'D', 'E'),
                   dots=c(22, 25, 19, 14, 38))

df_A

  team points
1 to 22
2 B 25
3 C 19
4 D 14
5 E 38

#create second data frame
df_B <- data. frame (team=c('A', 'C', 'D', 'F', 'G'),
                   rebounds=c(14, 8, 8, 6, 9))

df_B

  team_name rebounds
1 to 14
2 C 8
3 D 8
4 F 6
5 G 9

Мы можем использовать следующий синтаксис в dplyr для выполнения левого соединения на основе совпадающих значений в столбце команды df_A и столбце team_name df_B :

 library (dplyr)

#perform left join based on different column names in df_A and df_B
final_df <- left_join(df_A, df_B, by = c(' team ' = ' team_name '))

#view final data frame
final_df

  team points rebounds
1 to 22 14
2 B 25 NA
3 C 19 8
4 D 14 8
5 E 38 NA

Результирующий фрейм данных содержит все строки из df_A и только строки из df_B , где значения команды соответствуют значениям team_name .

Обратите внимание, что вы также можете выполнять поиск по нескольким столбцам с разными именами, используя следующий базовый синтаксис:

 library (dplyr)

#perform left join based on multiple different column names
final_df <- left_join(df_A, df_B, by = c(' A1 ' = ' B1 ', ' A2 ' = ' B2 ', ' A3 ' = ' B3 '))

Примечание . Полную документацию функции left_join() в dplyr вы можете найти здесь .

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные операции в R:

Как сделать левое соединение в R
Как сделать правильное соединение в R
Как сделать внутреннее соединение в R
Как сделать внешнее соединение в R

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *