Como realizar uma junção à esquerda usando colunas selecionadas no dplyr


Você pode usar a seguinte sintaxe básica no dplyr para realizar uma junção à esquerda em dois quadros de dados usando apenas as colunas selecionadas:

 library (dplyr)

final_df <- df_A %>% 
  left_join(select(df_B, team, conference), by=" team ")

Este exemplo específico realizará uma junção à esquerda em frames de dados chamados df_A e df_B , unindo-se à coluna chamada team , mas apenas as colunas team e conference de df_B serão incluídas no quadro de dados resultante.

O exemplo a seguir mostra como usar essa sintaxe na prática.

Exemplo: Execute uma junção à esquerda usando colunas selecionadas em dplyr

Suponha que temos os dois quadros de dados a seguir em R:

 #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'),
                   conference=c('W', 'W', 'E', 'E', 'E'),
                   rebounds=c(14, 8, 8, 6, 9),
                   assists=c(4, 3, 9, 9, 4))

df_B

  team conference rebounds assists
1 AW 14 4
2 CW 8 3
3 OF 8 9
4 FE 6 9
5 GE 9 4

Podemos usar a seguinte sintaxe em dplyr para realizar uma junção à esquerda, mas trazendo apenas as colunas de equipe e conferência de df_B :

 library (dplyr)

#perform left join but only bring in team and conference columns from df_B
final_df <- df_A %>% 
  left_join(select(df_B, team, conference), by=" team ")

#view final data frame
final_df

  team points conference
1A 22W
2 B 25 NA
3C 19W
4 D 14 E
5 E 38 NA

O quadro de dados resultante contém todas as linhas de df_A e apenas linhas de df_B onde os valores da equipe correspondem.

Usando a função select() do dplyr, pudemos especificar que queríamos apenas importar as colunas de equipe e conferência de df_B .

Observe que as colunas de rejeições e assistência de df_B não foram incluídas no quadro de dados final.

Nota : Você pode encontrar a documentação completa da função left_join() em dplyr aqui .

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras operações comuns em R:

Como fazer uma junção à esquerda no R
Como fazer uma junção correta em R
Como fazer uma junção interna em R
Como fazer uma junção externa em R

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *