Análise em R
Como organizar e importar dados no R antes de iniciar a análise da dissertação
Boa parte do tempo de uma análise estatística não é gasta rodando modelos, mas preparando os dados para que os modelos façam sentido. Em dissertações e teses, erros nessa etapa inicial contaminam tudo o que vem depois — e costumam passar despercebidos até que um revisor ou a banca aponte um resultado estranho. Organizar e importar os dados corretamente no R é, portanto, um investimento que se paga.
Antes do R: organize a planilha na origem
A regra de ouro é o formato “tidy”: cada linha é uma observação, cada coluna é uma variável, cada célula é um valor. Evite planilhas com títulos mesclados, múltiplas tabelas na mesma aba, cores como codificação e anotações no meio dos dados. Padronize os nomes das colunas sem espaços nem acentos (use idade_anos, não Idade (anos)), e defina um único código consistente para valores ausentes — de preferência deixando a célula vazia ou usando NA, nunca 0 ou 999 sem documentar.
Importando de diferentes formatos
O R lê praticamente qualquer formato. Para CSV, a função base read.csv() resolve, mas o pacote readr é mais rápido e previsível. Para Excel, use readxl; para arquivos de SPSS, Stata ou SAS, o pacote haven:
library(readr)
dados <- read_csv("dados.csv")
library(readxl)
dados <- read_excel("dados.xlsx", sheet = 1)
library(haven)
dados <- read_sav("dados.sav") # SPSS
Atenção ao separador decimal: arquivos brasileiros costumam usar vírgula, o que exige read_csv2() ou o argumento de locale adequado. Um número lido como texto quebra silenciosamente a análise.
Verificando a estrutura logo após importar
Nunca confie que a importação deu certo — confira. Três funções fazem o diagnóstico inicial:
str(dados) # tipos de cada coluna
summary(dados) # distribuição e NAs
head(dados) # primeiras linhas
O erro mais comum aqui é uma variável categórica ter sido lida como número ou uma numérica como texto. Sexo codificado como 1 e 2 será tratado como contínuo se você não o converter em fator. Isso distorce qualquer modelo — inclusive uma regressão logística, em que a tipagem correta das variáveis é pré-requisito.
Tipando e limpando
dados$sexo <- factor(dados$sexo,
levels = c(1, 2),
labels = c("Masc", "Fem"))
dados$idade <- as.numeric(dados$idade)
# checar categorias inesperadas
table(dados$sexo, useNA = "ifany")
Use table() com useNA para flagrar categorias fora do esperado (um “3” perdido em sexo, por exemplo) e valores ausentes. Documente cada transformação: quantos casos foram excluídos e por quê. Essa contabilidade é exigida por diretrizes de reporte como o STROBE, que pede o fluxo de participantes desde o total até a amostra analisada.
Reprodutibilidade: script, não cliques
Faça toda a limpeza por script, nunca editando a planilha à mão. Um script permite reexecutar a análise inteira quando os dados forem corrigidos, e serve de registro auditável do que foi feito. Salve os dados brutos em modo somente-leitura e trabalhe sempre sobre uma cópia. Com os dados prontos, o caminho natural é a estatística descritiva no R, seguida da análise inferencial. Se você está começando do zero, comece por primeiros passos no R.
Dados faltantes: entenda o padrão antes de agir
Poucas decisões afetam tanto o resultado quanto o tratamento de dados faltantes, e ela começa por entender por que faltam. A literatura distingue três mecanismos. Faltantes completamente ao acaso (MCAR) não guardam relação com nenhuma variável — o caso mais benigno. Faltantes ao acaso (MAR) dependem de variáveis observadas — por exemplo, homens respondendo menos a uma pergunta. Faltantes não ao acaso (MNAR) dependem do próprio valor não observado — como pessoas com renda alta se recusando a informá-la. Excluir casos incompletos (análise de casos completos) é aceitável sob MCAR, mas pode introduzir viés sob MAR ou MNAR. Nesses cenários, métodos como imputação múltipla são preferíveis. Mais importante que a técnica é descrever quantos dados faltaram, em quais variáveis e como você lidou com isso.
Salve versões e registre o ambiente
Para trabalhos longos como uma dissertação, dois hábitos evitam retrabalho. O primeiro é versionar: mantenha os dados brutos intocados e salve versões nomeadas das bases derivadas, para poder voltar atrás se descobrir um erro de limpeza. O segundo é registrar o ambiente — a função sessionInfo() documenta a versão do R e dos pacotes usados, informação que garante reprodutibilidade meses depois, quando pacotes já tiverem sido atualizados. Esses cuidados aparentemente burocráticos são o que permite reconstruir uma análise anos após ela ter sido feita.
Referências
- Wickham H, Grolemund G. R for Data Science. O’Reilly; 2017. Disponível em: r4ds.hadley.nz.
- R Core Team. R: A Language and Environment for Statistical Computing. R Foundation for Statistical Computing. Disponível em: cran.r-project.org.
- Field A, Miles J, Field Z. Discovering Statistics Using R. Sage; 2012.