Lewe połączenie w dplyr z różnymi nazwami kolumn
Możesz użyć następującej podstawowej składni w dplyr, aby połączyć dwie ramki danych, gdy łączone kolumny mają różne nazwy w każdej ramce danych:
library (dplyr) final_df <- left_join(df_A, df_B, by = c(' team ' = ' team_name '))
Ten konkretny przykład wykona lewe złączenie ramek danych o nazwie df_A i df_B , łącząc kolumnę z df_A o nazwie zespół i kolumnę z df_B o nazwie nazwa_zespołu .
Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.
Przykład: wykonaj lewe złączenie z różnymi nazwami kolumn w dplyr
Załóżmy, że mamy w R następujące dwie ramki danych:
#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
Możemy użyć następującej składni w dplyr, aby wykonać lewe złączenie w oparciu o pasujące wartości w kolumnie zespołu df_A i kolumnie nazwa_zespołu 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
Wynikowa ramka danych zawiera wszystkie wiersze z df_A i tylko wiersze z df_B , w których wartości zespołu odpowiadają wartościom nazwa_zespołu .
Pamiętaj, że możesz także przeszukiwać wiele kolumn o różnych nazwach, korzystając z następującej podstawowej składni:
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 '))
Uwaga : Pełną dokumentację funkcji left_join() w dplyr znajdziesz tutaj .
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe operacje w języku R:
Jak wykonać lewe złączenie w R
Jak wykonać prawidłowe połączenie w R
Jak wykonać złączenie wewnętrzne w R
Jak wykonać złączenie zewnętrzne w R