O que fazem as funções head(), str() e summary()? Quando usar cada uma?

Passo 1

O que o enunciado pede:
  • Explicar o que faz cada uma das funções head(), str() e summary().
  • Dizer quando usar cada uma (ou seja: em quais situações elas são úteis).
Informações que vamos usar (nenhum dado extra foi dado pelo enunciado; vou assumir o comportamento padrão dessas funções em R sobre vetores, fatores, listas e data.frames).

Passo 2

O que faz head() — descrição detalhada e como interpretar.
  • O propósito: mostrar as primeiras linhas/elementos de um objeto para ter uma ideia rápida do conteúdo.
  • Sintaxe básica: head(x) ou head(x, n) onde x é o objeto e n é o número de linhas/elementos desejado (padrão n = 6).
  • Exemplos de uso e interpretação:
    • Se x é um data.frame, head(x) mostra as primeiras 6 linhas com todas as colunas — ótimo para ver se as colunas e os valores iniciais parecem corretos.
    • Se x é um vetor atômico (numeric, character), head(x) mostra os primeiros 6 elementos.
    • Se x é uma lista, head(x) mostra os primeiros elementos da lista (o comportamento é análogo).
  • Quando usar head():
    • Ao abrir um novo conjunto de dados para ver rapidamente como começam as observações.
    • Para checar títulos/nomes das colunas junto com valores iniciais.
    • Antes de rodar operações destrutivas ou transformações complexas, só para inspecionar uma amostra inicial.
  • Observação prática: head() não resume formatos, classes ou estatísticas — apenas exibe amostras. Use head(x, 10) se quiser mais exemplos.

Passo 3

O que faz str() — descrição detalhada e como interpretar.
  • O propósito: dar uma “estrutura” compacta e técnica do objeto — tipos, dimensões e uma amostra curta dos conteúdos. É a primeira coisa que muitos usam para inspecionar um objeto em R.
  • Sintaxe básica: str(x) onde x é o objeto.
  • O que str() mostra (tipicamente):
    • A classe do objeto (por exemplo data.frame, list, numeric, factor).
    • Dimensões (por exemplo data.frame: número de linhas e colunas; matrix: dimensões).
    • Para cada componente/coluna: o nome, o tipo (e.g. int, num, chr, Factor w/ ... levels) e alguns valores de exemplo.
  • Exemplos de uso e interpretação:
    • Em um data.frame, verá algo como '$ var1: int 1 2 3 4 5 6' — isto mostra que var1 é inteiro e mostra os primeiros valores.
    • Em um factor, str() indica quantos níveis existem.
    • Em uma list, str() lista cada elemento com seu nome e tipo.
  • Quando usar str():
    • Logo após carregar dados para checar rapidamente tipos de variáveis (numérico vs. factor vs. character), dimensões e estruturas aninhadas.
    • Quando suspeitar de problemas de tipo (por exemplo colunas que deveriam ser numéricas mas vieram como character).
    • Para entender a estrutura antes de escolher funções de manipulação/visualização adequadas.
  • Por que str() é tão útil: é conciso, não imprime todo o dataset (evita inundar a tela) e informa tipos — informação crucial para transformações.

Passo 4

O que faz summary() — descrição detalhada e como interpretar.
  • O propósito: fornecer um resumo estatístico/resumido das variáveis de um objeto — estatísticas descritivas para numéricos e contagens/resumo para fatores/caracteres.
  • Sintaxe básica: summary(x) onde x é o objeto.
  • O que summary() mostra (comportamento típico):
    • Para variáveis numéricas: Min., 1st Qu., Median, Mean, 3rd Qu., Max. — dá visão rápida da distribuição e presença de outliers.
    • Para factor/character: frequência das primeiras categorias ou um resumo das contagens por nível (ou mensagem indicando muitos níveis).
    • Para logical: contagem de TRUE/FALSE/NA.
    • Para data.frame: aplica summary() coluna a coluna e imprime um bloco com todos os resumos.
  • Quando usar summary():
    • Depois de str() para obter estatísticas básicas das colunas numéricas e entender distribuição central e dispersão.
    • Para detectar valores estranhos (ex.: Max. muito grande, Min. negativo inesperado) ou muitos NAs.
    • Antes de modelagem/exploração para decidir transformações (log, padronização) ou para identificar variáveis categóricas com muitos níveis.
  • Limitação: summary() dá estatísticas univariadas; não mostra correlações nem padrões entre variáveis.

Passo 5

Comparação prática e fluxo recomendado (quando usar cada uma no seu fluxo de trabalho)
  • Ordem sugerida ao abrir um novo dataset:
    1. str(x) — para ver a estrutura, classes das colunas e dimensões. Objetivo: saber que tipos de variáveis existem.
    2. head(x) — para ver as primeiras observações e confirmar nomes/ordem das colunas e formato dos valores (útil complementar str()).
    3. summary(x) — para obter estatísticas descritivas por coluna e detectar problemas numéricos, outliers e NAs.
  • Exemplos de cenários:
    • Se quero só checar rapidamente se o arquivo carregou: head(x) é suficiente.
    • Se preciso confirmar que uma coluna é factor e quantos níveis: str(x) é a escolha.
    • Se quero saber medianas, médias e quartis para decidir transformar uma variável: summary(x) é a ferramenta.
  • Dica prática: combine com names(x) (para ver nomes de colunas) e dim(x)/nrow()/ncol() se precisar de dimensões explícitas.

Passo 6

Exemplos concretos rápidos (pseudo-exemplos que você pode rodar em R)
  • str(mtcars) — mostra tipos e uma amostra das colunas de mtcars.
  • head(mtcars, 8) — mostra as primeiras 8 linhas; útil para ver a formatação de, por exemplo, rownames como modelos de carro.
  • summary(mtcars$mpg) — mostra Min., 1st Qu., Median, Mean, 3rd Qu., Max. para a coluna mpg.
  • Mensagem de encorajamento: se ao usar str() você encontrar uma coluna numérica como chr, converta com as.numeric() (cuidado com NAs) ou use readr::cols() ao importar para forçar tipos.

Resposta

head(): mostra as primeiras observações/elementos de um objeto (padrão 6); usar quando quiser uma amostra rápida do conteúdo ou conferir formatação inicial.
str(): mostra a estrutura compacta do objeto (classe, dimensões, tipo de cada componente e amostra de valores); usar para entender tipos de variáveis e estrutura antes de manipular os dados.
summary(): fornece resumos estatísticos por variável (quartis, média, min/max para numéricos; contagens para fatores, etc.); usar para obter visão descritiva e detectar outliers, distribuição e valores faltantes.

Exercícios relacionados