Como fazer uma junção correta em r (com exemplos)
Existem duas maneiras comuns de realizar uma junção à direita em R:
Método 1: Use Base R
merge(df1, df2, by=' column_to_join_on ', all. y = TRUE )
Método 2: use dplyr
library (dplyr) right_join(df1, df2, by=' column_to_join_on ')
Ambos os métodos retornarão todas as linhas de df2 e todas as linhas com chaves correspondentes de df1 .
Também é importante notar que ambos os métodos produzirão o mesmo resultado, mas o método dplyr tenderá a ter um desempenho mais rápido em conjuntos de dados extremamente grandes.
Os exemplos a seguir mostram como usar cada uma dessas funções na prática com os seguintes quadros de dados:
#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
Exemplo 1: Junção à direita usando Base R
Podemos usar a função merge() na base R para realizar uma junção à direita, usando a coluna ‘team’ como a coluna à qual ingressar:
#perform right join using base R df3 <- merge(df1, df2, by=' team ', all. y = TRUE ) #view result df3 team points assists 1 to 18 4 2 B 22 9 3 C 19 14 4 D 14 13 5 L NA 10 6 M NA 8
Observe que todas as linhas do df2 foram incluídas no quadro de dados final, mas apenas as linhas do df1 que tinham um nome de equipe correspondente foram incluídas no quadro de dados final.
Exemplo 2: junção à direita usando dplyr
Podemos usar a função right_join() do pacote dplyr para realizar uma junção à direita, usando a coluna ‘team’ como a coluna à qual ingressar:
library (dplyr) #perform right join using dplyr df3 <- right_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 L NA 10 6 M NA 8
Observe que isso corresponde ao resultado que obtivemos usando a função merge() na base R.
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras operações comuns em R:
Como fazer uma junção à esquerda no R
Como adicionar coluna ao quadro de dados em R
Como remover colunas do quadro de dados em R