So führen sie einen outer join in r durch (mit beispielen)
Es gibt zwei gängige Möglichkeiten, einen Outer-Join in R durchzuführen:
Methode 1: Verwenden Sie Base R
merge(df1, df2, by=' column_to_join_on ', all= TRUE )
Methode 2: dplyr verwenden
library (dplyr) full_join(df1, df2, by=' column_to_join_on ')
Jede Methode gibt alle Zeilen aus beiden Tabellen zurück.
Beide Methoden liefern das gleiche Ergebnis, aber die dplyr- Methode ist bei extrem großen Datensätzen tendenziell schneller.
Die folgenden Beispiele zeigen, wie jede dieser Funktionen in der Praxis mit den folgenden Datenrahmen verwendet wird:
#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', 'L', 'M'), assists=c(4, 9, 14, 13, 10, 8)) df2 team assists 1 to 4 2 B 9 3 C 14 4 D 13 5 L 10 6 M 8
Beispiel 1: Outer Join mit Base R
Wir können die Funktion merge() in Basis-R verwenden, um einen Outer-Join durchzuführen, wobei wir die Spalte „Team“ als Spalte für den Join verwenden:
#perform outer join using base R df3 <- merge(df1, df2, by=' team ', all= TRUE ) #view result df3 team points assists 1 to 18 4 2 B 22 9 3 C 19 14 4 D 14 13 5 E 14 NA 6 F 11 NA 7 G 20 NA 8:28 AM NA 9L NA 10 10M NA 8
Beachten Sie, dass alle Zeilen in beiden Datenrahmen zurückgegeben werden.
Beispiel 2: Outer Join mit dplyr
Wir können die Funktion full_join() aus dem dplyr- Paket verwenden, um einen Outer-Join durchzuführen, wobei wir die Spalte „team“ als Spalte für den Join verwenden:
library (dplyr) #perform outer join using dplyr df3 <- full_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 E 14 NA 6 F 11 NA 7 G 20 NA 8:28 AM NA 9L NA 10 10M NA 8
Beachten Sie, dass dies dem Ergebnis entspricht, das wir mit der Funktion merge() in Basis R erhalten haben.
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie andere gängige Vorgänge in R ausgeführt werden:
So führen Sie eine Linksverknüpfung in R durch
So führen Sie einen Right Join in R durch
So führen Sie einen Inner Join in R durch