Introdução
As funções sub()
e gsub()
em R substituirão a string ou os caracteres em um vetor ou um quadro de dados por uma string específica. Essas funções são úteis ao realizar alterações em grandes conjuntos de dados.
Neste artigo, você explorará como usar as funções sub()
e gsub()
em R.
Pré-requisitos
Para concluir este tutorial, você precisará de:
- R installed locally or on a server.
Sintaxe de sub()
e gsub()
A sintaxe básica para sub()
é:
sub(pattern, replacement, x)
A sintaxe básica para gsub()
é:
gsub(pattern, replacement, x)
A sintaxe para sub()
e gsub()
requer um padrão, uma substituição e o vetor ou quadro de dados:
- padrão: O padrão ou a string que você deseja substituir.
- substituição: Uma string de entrada para substituir a string de padrão.
- x: A vector or a data frame to substitute the strings.
O padrão também pode estar na forma de uma expressão regular (regex).
Agora que você está familiarizado com a sintaxe, pode passar para a implementação.
A Função sub()
no R
A função sub()
no R substitui a string em um vetor ou em um data frame pelo input ou pela string especificada.
No entanto, a limitação da função sub()
é que ela substitui apenas a primeira ocorrência.
1. Utilizando a Função sub()
Neste exemplo, aprenda como substituir um padrão de string por outra string com a função sub()
.
# vetor de input
df<-"R is an open-source programming language widely used for data analysis and statistical computing."
# substituição
sub('R','The R language',df)
Executar este comando gera a seguinte saída:
Output"The R language is an open-source programming language widely used for data analysis and statistical computing."
A função sub()
substitui a string 'R'
no vetor pela string 'A linguagem R'
.
Neste exemplo, houve uma única ocorrência de correspondência de padrão. Considere o que acontece se houver múltiplas ocorrências de correspondências de padrões.
# vetor de input
df<-"In this tutorial, we will install R and show how to add packages from the official Comprehensive R Archive Network (CRAN)."
# substituição
sub('R','The R language',df)
Rodar este comando gera a seguinte saída:
"In this tutorial, we will install The R language and show how to add packages from the official Comprehensive R Archive Network (CRAN)."
Neste exemplo, você pode observar que a função sub()
substituiu a primeira ocorrência da string 'R'
por 'A linguagem R'
. Mas a próxima ocorrência na string permanece a mesma.
2. Usando a Função sub()
com um Data Frame
A função sub()
também funciona com data frames.
# criando um data frame
df<-data.frame(Creature=c('Starfish','Blue Crab','Bluefin Tuna','Blue Shark','Blue Whale'),Population=c(5,6,4,2,2))
# data frame
df
Isto irá criar o seguinte data frame:
Creature Population
1 Starfish 5
2 Blue Crab 6
3 Bluefin Tuna 4
4 Blue Shark 2
5 Blue Whale 2
Então substitua os caracteres 'Blue'
pelos caracteres 'Green'
:
# substituindo os valores
sub('Blue','Green',df)
Rodar este comando gera a seguinte saída:
Output"c(\"Starfish\", \"Green Crab\", \"Bluefin Tuna\", \"Blue Shark\", \"Blue Whale\")"
"c(5, 6, 4, 2, 2)"
Você também pode especificar uma coluna específica para substituir todas as ocorrências de 'Blue'
por 'Green'
:
# substituindo os valores
sub('Blue','Green',df$Creature)
Rodar este comando gera a seguinte saída:
Output"Starfish"
"Green Crab"
"Greenfin Tuna"
"Green Shark"
"Green Whale"
Todas as instâncias dos caracteres 'Blue'
foram substituídas por 'Green'
.
A Função gsub()
em R
A função gsub()
em R é utilizada para operações de substituição. A função recebe a entrada e a substitui pelos valores especificados.
Ao contrário da função sub()
, a gsub()
realiza uma substituição global para todas as correspondências.
1. Utilizando a Função gsub()
Neste exemplo, aprenda como substituir um padrão de string por outra string usando a função gsub()
.
# vetor de entrada
df<-"In this tutorial, we will install R and show how to add packages from the official Comprehensive R Archive Network (CRAN)."
Estes são dados que contêm 'R'
escrito várias vezes.
# substituindo os valores usando gsub()
gsub('R','The R language',df)
Output"In this tutorial, we will install The R language and show how to add packages from the official Comprehensive The R language Archive Network (CThe R languageAN)."
Todas as instâncias de ‘R
’ foram substituídas (incluindo as instâncias em "Comprehensive R Archive Network"
e "CRAN"
). A função gsub()
encontra cada palavra que corresponde ao parâmetro e a substitui pela palavra ou valores de entrada.
2. Usando a Função gsub()
com Data Frames
A função gsub()
também funciona com data frames.
# criando um data frame
df<-data.frame(Creature=c('Starfish','Blue Crab','Bluefin Tuna','Blue Shark','Blue Whale'),Population=c(5,6,4,2,2))
Vamos adicionar o prefixo ‘Deep Sea ‘ aos valores na coluna Creature
:
# substituindo os valores
gsub('.*^','Deep Sea ',df$Creature)
Executando este comando gera a seguinte saída:
Output"Deep Sea Starfish"
"Deep Sea Blue Crab"
"Deep Sea Bluefin Tuna"
"Deep Sea Blue Shark"
"Deep Sea Blue Whale"
Neste exemplo, a função gsub()
utiliza a expressão regular (regex): .*^
. Este é um padrão para a posição no início da string.
Conclusão
Neste artigo, você explorou como usar as funções sub()
e gsub()
em R. Essas funções substituem a string ou os caracteres em um vetor ou data frame por uma string específica. A função sub()
se aplica ao primeiro casamento. A função gsub()
se aplica a todos os casamentos.
Continue aprendendo com Como Usar replace()
em R.
Source:
https://www.digitalocean.com/community/tutorials/sub-and-gsub-function-r