Como substituir vários valores em um quadro de dados usando dplyr
Você pode usar a seguinte sintaxe básica para substituir vários valores em um quadro de dados em R usando funções do pacote dplyr :
library (dplyr) df %>% mutate(var1 = recode(var1, ' oldvalue1 ' = ' newvalue1 ', ' oldvalue2 ' = ' newvalue2 '), var2 = recode(var2, ' oldvalue1 ' = ' newvalue1 ', ' oldvalue2 ' = ' newvalue2 '))
O exemplo a seguir mostra como usar essa sintaxe na prática.
Exemplo: Substitua vários valores usando dplyr
Suponha que temos o seguinte quadro de dados em R que contém informações sobre vários jogadores de basquete:
#create data frame
df <- data. frame (conf=c('East', 'East', 'West', 'West', 'North'),
position=c('Guard', 'Guard', 'Guard', 'Guard', 'Forward'),
dots=c(22, 25, 29, 13, 18))
#view data frame
df
conf position points
1 East Guard 22
2 East Guard 25
3 West Guard 29
4 West Guard 13
5 North Forward 18
Agora suponha que queiramos substituir os seguintes valores no quadro de dados:
- Coluna ‘conf’:
- Substitua “Leste” por “E”
- Mude “Oeste” para “W”
- Substitua “Norte” por “N”
- Coluna “Posição”:
- Mude “Guarda” para “G”
- Altere “Avançar” para “F”
Podemos usar as funções mutate() e recode() para fazer isso:
library (dplyr) #replace multiple values in conf and position columns df %>% mutate(conf = recode(conf, ' East ' = ' E ', ' West ' = ' W ', ' North ' = ' N '), position = recode(position, ' Guard ' = ' G ', ' Forward ' = ' F ')) conf position points 1EG 22 2 EG 25 3 WG 29 4 WG 13 5 NF 18
Observe que cada um dos valores nas colunas “conf” e “position” foram substituídos por valores específicos.
Observe também que os valores na coluna “pontos” permaneceram inalterados.
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns usando dplyr:
Como recodificar valores usando dplyr
Como substituir NA por Zero no dplyr
Como filtrar linhas contendo uma determinada string usando dplyr