R

Como Manipular Strings no R com stringr

Escrito por Erick Faria · 2 min. >
strings no r

Neste post, vamos explorar como manipular strings no R utilizando o pacote stringr. Manipulação de strings é uma habilidade essencial em análise de dados, especialmente quando se trata de limpeza e preparação de dados textuais. Vamos criar um DataFrame de exemplo e abordar várias técnicas para manipular strings.

Por que Usar stringr para Manipulação de Strings?

O pacote stringr oferece uma ampla gama de funções para manipular strings de forma eficiente e intuitiva. Ele facilita tarefas comuns, como encontrar, substituir, dividir e combinar strings, tornando o código mais legível e fácil de manter.

Trabalhando com Dados no R

Criando um DataFrame de Exemplo

Vamos começar criando um DataFrame com algumas strings de exemplo:

# Manipular Strings no R
# Carregando o pacote necessário
library(stringr)

# Criando um DataFrame de exemplo
data <- data.frame(
  Nome = c(' João  ', 'Ana', 'Carlos  ', ' Marta', 'Pedro '),
  Cidade = c('São Paulo', 'Rio de Janeiro', 'Belo Horizonte', 'Salvador', 'São Paulo'),
  stringsAsFactors = FALSE
)

Como Manipular Strings no R

Removendo Espaços em Branco

Podemos usar a função str_trim para remover espaços em branco no início e no final das strings:

# Manipular Strings no R
# Removendo espaços em branco no início e no final das strings
data$Nome <- str_trim(data$Nome)

Convertendo para Minúsculas ou Maiúsculas

Podemos converter strings para minúsculas ou maiúsculas usando str_to_lower e str_to_upper:

# Convertendo strings para minúsculas
data$Nome <- str_to_lower(data$Nome)

# Convertendo strings para maiúsculas
data$Cidade <- str_to_upper(data$Cidade)

Substituindo Partes de uma String

Para substituir partes de uma string, usamos a função str_replace:

# Manipular Strings no R
# Substituindo 'São Paulo' por 'SP'
data$Cidade <- str_replace(data$Cidade, 'SÃO PAULO', 'SP')

Dividindo Strings

Podemos dividir strings em partes usando str_split:

# Manipular Strings no R
# Dividindo strings em partes
data_split <- str_split(data$Nome, " ")
data_split

Combinando Strings

Para combinar strings, usamos a função str_c:

# Manipular Strings no R
# Combinando strings
data$Nome_Completo <- str_c(data$Nome, " - ", data$Cidade)

Usando Expressões Regulares

Expressões regulares são poderosas para encontrar padrões complexos em strings. Podemos usar str_detect e str_extract para trabalhar com expressões regulares:

# Encontrando strings que começam com 'J'
data$Comeca_Com_J <- str_detect(data$Nome, '^j')

# Extraindo o primeiro nome de strings que têm nome completo
data$Primeiro_Nome <- str_extract(data$Nome, '^[A-Za-z]+')

Outras Operações com Strings

Encontrando Padrões em Strings

Podemos encontrar padrões em strings usando str_detect:

# Manipular Strings no R
# Encontrando nomes que contêm 'a'
data$Contem_A <- str_detect(data$Nome, "a")

Extraindo Pedaços de uma String

Para extrair pedaços de uma string, usamos str_sub:

# Extraindo os primeiros três caracteres do nome
data$Primeiros_Tres <- str_sub(data$Nome, 1, 3)

Para mais informações sobre como utilizar o R para análise de dados, confira outros conteúdos no meu blog:

Considerações Finais

Espero que este guia tenha sido útil para aprender como manipular strings com o pacote stringr no R. A prática é essencial para dominar essas técnicas, então encorajo você a experimentar e aplicar esses métodos em seus próprios projetos de análise de dados.

Para aprimorar suas habilidades com o R e se tornar mais eficiente na manipulação de dados textuais, é importante também fortalecer sua compreensão em ciência de dados. Recomendamos o livro Fundamentos em R: Guia Completo para Iniciantes, disponível na Amazon, que oferece uma introdução abrangente ao R.

Junte-se à nossa comunidade no Twitter e inscreva-se no nosso canal do YouTube para acessar mais tutoriais, dicas e recursos. Continue praticando e explorando novas maneiras de manipular strings com o R, e fique atento para mais guias e tutoriais que compartilharemos.

Escrito por Erick Faria
Engenheiro de Dados com Ph.D. em Geografia e experiência em análise espacial e geoprocessamento. Expertise em processamento de grandes volumes de dados geoespaciais, imagens de satélite e dados de mercado, utilizando ferramentas como Spark, Databricks e Google Earth Engine. Experiência em projetos de mercado de carbono, modelos preditivos para investimentos agrícolas e liderança de projetos de dados em saúde pública. Habilidades em Python, R, SQL e diversas ferramentas de engenharia de dados. Profile