Linker join in dplyr met verschillende kolomnamen


U kunt de volgende basissyntaxis in dplyr gebruiken om twee dataframes links samen te voegen wanneer de kolommen die u samenvoegt in elk dataframe verschillende namen hebben:

 library (dplyr)

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

In dit specifieke voorbeeld wordt een left join uitgevoerd op dataframes met de namen df_A en df_B , waarbij de kolom uit df_A met de naam team wordt samengevoegd met de kolom uit df_B met de naam team_name .

Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.

Voorbeeld: Voer een left join uit met verschillende kolomnamen in dplyr

Stel dat we de volgende twee dataframes in R hebben:

 #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

We kunnen de volgende syntaxis in dplyr gebruiken om een left join uit te voeren op basis van de overeenkomende waarden in de teamkolom van df_A en de team_name- kolom van 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

Het resulterende dataframe bevat alle rijen van df_A en alleen rijen van df_B waarbij de teamwaarden overeenkomen met de team_name- waarden.

Houd er rekening mee dat u ook in meerdere kolommen met verschillende namen kunt zoeken met behulp van de volgende basissyntaxis:

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

Opmerking : u kunt de volledige documentatie van de functie left_join() in dplyr hier vinden.

Aanvullende bronnen

In de volgende zelfstudies wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in R uitvoert:

Hoe maak je een linkse join in R
Hoe maak je een juiste join in R
Hoe maak je een inner join in R
Hoe u een buitenste join maakt in R

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert