Een inner join uitvoeren in r (met voorbeelden)


Er zijn twee veelgebruikte manieren om een inner join in R uit te voeren:

Methode 1: Gebruik Base R

 merge(df1, df2, by=' column_to_join_on ')

Methode 2: gebruik dplyr

 library (dplyr)

inner_join(df1, df2, by=' column_to_join_on ')

Beide methoden zullen hetzelfde resultaat opleveren, maar de dplyr-methode zal doorgaans sneller presteren op extreem grote datasets.

De volgende voorbeelden laten zien hoe u elk van deze functies in de praktijk kunt gebruiken met de volgende dataframes:

 #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', 'G', 'H'),
                 assists=c(4, 9, 14, 13, 10, 8))

df2

  team assists
1 to 4
2 B 9
3 C 14
4 D 13
5G 10
6:8 a.m.

Voorbeeld 1: Binnenverbinding met Base R

We kunnen de functie merge() in basis R gebruiken om een inner join uit te voeren, waarbij we de kolom ‚team‘ gebruiken als de kolom waaraan we moeten deelnemen:

 #perform inner join using base R
df3 <- merge(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 G 20 10
6:28 a.m. 8

Houd er rekening mee dat alleen teams die in beide datasets voorkomen, behouden blijven in de definitieve dataset.

Voorbeeld 2: Inner join met dplyr

We kunnen de inner_join() functie uit het dplyr- pakket gebruiken om een inner join uit te voeren, waarbij we de kolom ‚team‘ gebruiken als de kolom waaraan we moeten deelnemen:

 library (dplyr)

#perform inner join using dplyr 
df3 <- inner_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 G 20 10
6:28 a.m. 8

Merk op dat dit overeenkomt met het resultaat dat we hebben verkregen met de functie merge() in basis R.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in R kunt uitvoeren:

Hoe maak je een linkse join in R
Hoe maak je een juiste join in R
Hoe u een kolom aan een dataframe toevoegt in R
Kolommen verwijderen uit een dataframe in R

Einen Kommentar hinzufügen

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