Partecipa a sinistra in dplyr con nomi di colonne diversi


Puoi utilizzare la seguente sintassi di base in dplyr per unire a sinistra due frame di dati quando le colonne che stai unendo hanno nomi diversi in ciascun frame di dati:

 library (dplyr)

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

Questo particolare esempio eseguirà un left join sui frame di dati chiamati df_A e df_B , unendo la colonna di df_A chiamata team e la colonna di df_B chiamata team_name .

L’esempio seguente mostra come utilizzare questa sintassi nella pratica.

Esempio: esegui un left join con nomi di colonna diversi in dplyr

Supponiamo di avere i seguenti due frame di dati in 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

Possiamo utilizzare la seguente sintassi in dplyr per eseguire un left join in base ai valori corrispondenti nella colonna team di df_A e nella colonna team_name di 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

Il frame di dati risultante contiene tutte le righe di df_A e solo le righe di df_B in cui i valori della squadra corrispondono ai valori team_name .

Tieni presente che puoi anche eseguire la ricerca su più colonne con nomi diversi utilizzando la seguente sintassi di base:

 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 '))

Nota : puoi trovare la documentazione completa della funzione left_join() in dplyr qui .

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre operazioni comuni in R:

Come eseguire un join a sinistra in R
Come eseguire un join destro in R
Come eseguire un inner join in R
Come eseguire un join esterno in R

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *