CDBr

Sua fonte de informação em Ciência de Dados

sub() e gsub(): Substituição de Strings em R

Ilustração de exemplos de uso das funções sub() e gsub() para substituição de strings em R.

Introdução

As funções sub() e gsub() em R permitem substituir strings ou caracteres em um vetor ou em um data frame por uma string específica. Essas funções são especialmente úteis ao lidar com mudanças em conjuntos de dados extensos.

Neste artigo, você vai explorar como utilizar as funções sub() e gsub() em R para substituição de strings.

Imagem representando a importância da mentoria em ciência de dados para alcançar o sucesso profissional

Pré-requisitos

Para completar este tutorial, você vai precisar de:

  • R instalado localmente ou em um servidor.

Sintaxe do sub() e gsub()

A sintaxe básica da função sub() é:

sub(padrão, substituição, x)

A sintaxe básica da função gsub() é:

gsub(padrão, substituição, x)

A sintaxe para sub() e gsub() exige um padrão, uma substituição e o vetor ou data frame:

  • padrão: O padrão ou a string que você deseja substituir.
  • substituição: Uma string de entrada para substituir a string do padrão.
  • x: Um vetor ou data frame para substituir as strings.

O padrão também pode ser expresso na forma de uma expressão regular (regex).

Agora que você está familiarizado com a sintaxe, vamos prosseguir para a implementação.

A Função sub() em R

A função sub() em R substitui a string em um vetor ou em um data frame pela string de entrada ou 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, você aprenderá como substituir um padrão de string por uma string de substituição usando a função sub().

# vetor de entrada
df <- "R é uma linguagem de programação de código aberto amplamente utilizada para análise de dados e computação estatística."

# substituição
sub('R','A linguagem R',df)

A execução deste comando gera a seguinte saída:

Saída: “A linguagem R é uma linguagem de programação de código aberto amplamente utilizada para análise de dados e computação estatística.”

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 quando existem múltiplas ocorrências de correspondências de padrão.

# vetor de entrada
df <- "Neste tutorial, vamos instalar R e mostrar como adicionar pacotes da Comprehensive R Archive Network (CRAN) oficial."

# substituição
sub('R','A linguagem R',df)

A execução deste comando gera a seguinte saída:

“Neste tutorial, vamos instalar A linguagem R e mostrar como adicionar pacotes da Comprehensive A linguagem R Archive Network (CRAN) oficial.”

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. Utilizando 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(Criatura = c('Estrela do Mar', 'Caranguejo Azul', 'Atum-rabilho', 'Tubarão Azul', 'Baleia Azul'),
                 Populacao = c(5, 6, 4, 2, 2))

# data frame
df

Isso criará o seguinte data frame:

CriaturaPopulação
Estrela do Mar5
Caranguejo Azul6
Atum-rabilho4
Tubarão Azul2
Baleia Azul2

Agora, substitua os caracteres ‘Azul’ pelos caracteres ‘Verde’:

# substituindo os valores
sub('Azul', 'Verde', df)

A execução deste comando gera a seguinte saída:

Saída:

CriaturaPopulação
Estrela do Mar5
Caranguejo Verde6
Atum-rabilho4
Tubarão Verde2
Baleia Verde2

Você também pode especificar uma coluna específica para substituir todas as ocorrências de ‘Azul’ por ‘Verde’:

# substituindo os valores
sub('Azul', 'Verde', df$Criatura)

A execução deste comando gera a seguinte saída:

Saída:

[1][2][3][4][5]
Estrela do MarCaranguejo VerdeAtum-rabilhoTubarão VerdeBaleia Verde

Todas as instâncias dos caracteres ‘Azul’ foram substituídas por ‘Verde’.

A Função gsub() em R

A função gsub() em R é usada para operações de substituição. A função recebe a entrada e a substitui pelas valores especificados.

Ao contrário da função sub(), gsub() aplica uma substituição global para todas as correspondências.

1. Utilizando a Função gsub()

Neste exemplo, você aprenderá como substituir um padrão de string por uma string de substituição usando a função gsub().

# vetor de entrada
df <- "Neste tutorial, vamos instalar R e mostrar como adicionar pacotes da Comprehensive R Archive Network (CRAN)."

Este é um dado que possui várias ocorrências da letra ‘R’.

Substitua as ocorrências usando a função gsub():

# substituindo os valores usando gsub()
gsub('R', 'A linguagem R', df)

Saída: “Neste tutorial, vamos instalar A linguagem R e mostrar como adicionar pacotes da Comprehensive A linguagem R Archive Network (CThe linguagem RAN).”

Todas as ocorrências de ‘R’ foram substituídas (incluindo as ocorrências em “Comprehensive R Archive Network” e “CRAN”). A função gsub() encontra todas as palavras que correspondem ao parâmetro e as substitui pela palavra ou valores de entrada.

2. Utilizando a Função gsub() com Data Frames

A função gsub() também funciona com data frames.

# criando um

 data frame
df <- data.frame(Criatura = c('Estrela do Mar', 'Caranguejo Azul', 'Atum-rabilho', 'Tubarão Azul', 'Baleia Azul'),
                 Populacao = c(5, 6, 4, 2, 2))

Vamos adicionar o prefixo ‘Mar Profundo ‘ aos valores na coluna Criatura:

# substituindo os valores
gsub('.*^', 'Mar Profundo ', df$Criatura)

A execução deste comando gera a seguinte saída:

Saída:

[1][2][3][4][5]
Mar Profundo StarfishMar Profundo Blue CrabMar Profundo Bluefin TunaMar Profundo Blue SharkMar Profundo Blue Whale

Neste exemplo, a função gsub() utiliza a expressão regular (regex): .*^. Isso é um padrão para a posição no início da string.

Conclusão

Neste artigo, você explorou como utilizar as funções sub() e gsub() em R. Essas funções substituem strings ou caracteres em um vetor ou em um data frame por uma string específica. A função sub() aplica-se à primeira correspondência. A função gsub() aplica-se a todas as correspondências. Compreender essas funções é fundamental para realizar substituições eficientes em seus conjuntos de dados no ambiente R.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Rolar para cima