Como substituir uma string em uma coluna usando dplyr
Você pode usar os seguintes métodos para substituir uma string em uma coluna específica de um quadro de dados usando funções do pacote dplyr :
Método 1: Substitua uma string por uma nova string
library (dplyr) library (stringr) df %>% mutate(across(' column_name ', str_replace, ' old_value ', ' new_value '))
Método 2: Substitua várias strings por uma nova string
library (dplyr) library (stringr) df %>% mutate(across(' column_name ', str_replace, ' old_value1|old_value2 ', ' new_value '))
Os exemplos a seguir mostram como usar cada método com o seguinte quadro de dados em R:
#create data frame
df <- data. frame (conf=c('East', 'East', 'West', 'West'),
position=c('P_Guard', 'P_Guard', 'S_Guard', 'S_Guard'),
dots=c(22, 25, 29, 13))
#view data frame
df
conf position points
1 East P_Guard 22
2 East P_Guard 25
3 West S_Guard 29
4 West S_Guard 13
Exemplo 1: Substitua uma string por uma nova string
O código a seguir mostra como substituir a string “East” na coluna conf pela string “Eastern”:
library (dplyr) library (stringr) #replace 'East' with 'Eastern' in conf column df %>% mutate(across(' conf ', str_replace, ' East ', ' Eastern ')) conf position points 1 Eastern P_Guard 22 2 Eastern P_Guard 25 3 West S_Guard 29 4 West S_Guard 13
Observe que cada string “Leste” foi substituída por “Leste” na coluna conf , enquanto todas as outras colunas permaneceram inalteradas.
Exemplo 2: Substitua várias strings por uma nova string
O código a seguir mostra como substituir as strings ‘P_’ e ‘S_’ na coluna conf por uma string vazia:
library (dplyr) library (stringr) #replace 'P_' and 'S_' with empty string in position column df %>% mutate(across(' position ', str_replace, ' P_|S_ ', '')) conf position points 1 East Guard 22 2 East Guard 25 3 West Guard 29 4 West Guard 13
Observe que cada string ‘P_’ e ‘S_’ foi substituída por uma string vazia na coluna de posição , enquanto todas as outras colunas permaneceram inalteradas.
Observe que usamos o operador “OR” ( | ) para dizer ao R que gostaríamos de substituir todas as strings iguais a “P_” ou “S_” por uma string vazia.
Sinta-se à vontade para usar quantos operadores “OR” ( | ) desejar para substituir quantos valores desejar em uma coluna por vez.
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