R

Como Trabalhar com Dados Ausentes no R com dplyr

Escrito por Erick Faria · 3 min. >
dados ausentes no R

Neste post, vamos explorar como identificar, tratar e analisar dados ausentes no R utilizando o pacote dplyr. Dados ausentes são comuns em conjuntos de dados do mundo real e lidar com eles de maneira eficaz é crucial para garantir a integridade e a precisão da análise de dados. Vamos criar um DataFrame de exemplo e abordar várias técnicas para lidar com dados ausentes.

Por que Lidar com Dados Ausentes?

Dados ausentes podem distorcer os resultados da análise e levar a conclusões incorretas. Portanto, é essencial identificar e tratar esses dados de maneira adequada. O dplyr oferece várias funções que facilitam o trabalho com dados ausentes, permitindo uma análise mais robusta e confiável.

Trabalhando com Dados no R

Criando um DataFrame de Exemplo

Vamos começar criando um DataFrame com alguns dados ausentes:

# Como Trabalhar com Dados Ausentes no R com dplyr
# Carregando o pacote necessário
library(dplyr)

# Criando um DataFrame de exemplo
data <- data.frame(
  Nome = c('João', 'Ana', 'Carlos', 'Marta', NA),
  Idade = c(23, 45, NA, 41, 29),
  Cidade = c('São Paulo', 'Rio de Janeiro', 'Belo Horizonte', 'Salvador', 'São Paulo'),
  Salario = c(5000, 7000, 8000, NA, 6200),
  stringsAsFactors = FALSE
)

Identificando Dados Ausentes no R

Verificando Dados Ausentes

Podemos usar a função is.na para identificar dados ausentes em um DataFrame:

# Como Trabalhar com Dados Ausentes no R com dplyr
# Verificando dados ausentes
is.na(data)

Para obter uma visão mais clara, podemos somar os valores ausentes por coluna:

# Como Trabalhar com Dados Ausentes no R com dplyr
# Contando valores ausentes por coluna
colSums(is.na(data))

Removendo Dados Ausentes

Removendo Linhas com Dados Ausentes

Para remover linhas com qualquer valor ausente, usamos a função na.omit ou a função filter do dplyr:

# Como Trabalhar com Dados Ausentes no R com dplyr
# Removendo linhas com qualquer valor ausente
data_clean <- na.omit(data)

# Usando dplyr para remover linhas com valores ausentes
data_clean <- data %>%
  filter(!is.na(Nome) & !is.na(Idade) & !is.na(Salario))

Removendo Colunas com Dados Ausentes

Para remover colunas com qualquer valor ausente, podemos usar a função select_if do dplyr:

# Como Trabalhar com Dados Ausentes no R com dplyr
# Removendo colunas com qualquer valor ausente
data_clean <- data %>%
  select_if(~ !any(is.na(.)))

Preenchendo Dados Ausentes

Preenchendo com Valores Constantes

Podemos preencher valores ausentes com um valor constante, como 0 ou a média da coluna:

# Como Trabalhar com Dados Ausentes no R com dplyr
# Preenchendo valores ausentes com 0
data <- data %>%
  mutate(Idade = if_else(is.na(Idade), 0, Idade),
         Salario = if_else(is.na(Salario), 0, Salario))

Preenchendo com Estatísticas da Coluna

Para preencher valores ausentes com a média ou mediana da coluna:

# Preenchendo valores ausentes com a média da coluna
data <- data %>%
  mutate(Idade = if_else(is.na(Idade), mean(Idade, na.rm = TRUE), Idade),
         Salario = if_else(is.na(Salario), mean(Salario, na.rm = TRUE), Salario))

Imputação de Dados Ausentes

Imputação com Pacote mice

Para uma abordagem mais avançada, podemos usar o pacote mice para imputar dados ausentes:

# Instalando e carregando o pacote mice
install.packages("mice")
library(mice)

# Imputando dados ausentes
imputed_data <- mice(data, m=1, maxit=50, meth='pmm', seed=500)
data_imputed <- complete(imputed_data)

Analisando o Impacto de Dados Ausentes

Comparando Estatísticas

Podemos comparar estatísticas descritivas antes e depois da imputação para entender o impacto dos dados ausentes:

# Estatísticas antes da imputação
summary(data)

# Estatísticas após a imputação
summary(data_imputed)

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 lidar com dados ausentes usando o pacote dplyr 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, é 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 lidar com dados ausentes no 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