Como fazer e analisar um histograma no R

Como fazer e analisar um histograma no R

O histograma é uma ferramenta básica em análise exploratória para visualizar a distribuição dos seus dados, além de fornecer informações importantes sobre a localização e dispersão. Ou seja, a forma do histograma pode lhe dizer se temos simetria, grande variabilidade ou até mesmo se os dados possuem distribuição Normal.

Assim, vamos ver como fazer o histograma básico no R para uma visualização rápida e depois como deixá-lo bem mais bonito com o pacote ggplot2. Vamos usar um exemplo de um histograma de uma distribuição assimétrica para acompanhar todo o conteúdo do texto e os códigos.

Como fazer um histograma básico no R

Fazer um histograma no R é bem simples, rápido e básico com a função hist. Neste exemplo vamos usar uma amostra aleatoŕia de tamanho 200 de uma Chi Quadrado com 10. Antes de ir ao código, ao colocar set.seed(14) estamos ajustando a semente aleatória para que você possa gerar em seu computador exatamente o mesmo histograma mostrado aqui.

### Como fazer um histograma no R
### www.manipulandados.com.br

set.seed(14)                # Ajustar semente aleatória
dados <- rchisq(200, 10)    # Gerar 200 observações
hist(dados)                 # Gerar histograma

Se você simplesmente copiar e colar o código acima, isso resulta no histograma mostrado na Figura 1.

Histograma R

Figura 1:Histograma simples gerado pelo código mostrado logo acima

Olhando rapidamente já podemos identificar algumas informações importantes que este gráfico histograma nos fornece. Os dados se concentram em torno de zero e 25. Ou seja, temos uma amostra de valores positivos. No entanto, a concentração à direita é menor que a concentração à esquerda, indicando que a distribuição dessa amostra é assimétrica, mais voltada para a esquerda (uma característica da Chi Quadrado de baixo graus de liberdade). Além disso, podemos ver que a maioria das observações se concentram em torno do valor 10. Tudo isso pode ser inferido apenas observando este gráfico, mostrando o quão rico de informações um simples histograma pode ser.

Mas cuidado! O histograma é apenas uma das ferramentas para explorar seus dados. Não tire conclusões apenas desse gráfico e verifique também as estatísticas descritivas como a média, desvio padrão, mediana e outras que julgar interessante para conhecer melhor sua amostra.

Deixando seu histograma mais bonito

Apenas um tópico rápido. Para deixar seus histogramas com uma apresentação melhor, incluindo títulos e rótulos (labels) nos eixos, utilize o código abaixo e seu histograma ficará como na Figura 2.

hist(dados, main = "Histograma dos dados", xlab = "Dados", ylab="Frequência")
histograma R bonito

Figura 2: Histograma com título e rótulo nos eixos.

Usando o ggplot2 para fazer um histograma mais bacana

Essa é aquela hora que separa os amadores dos profissionais no R. Fazer um gráfico qualquer um faz com os códigos acima, mas fazer aquele gráfico que chama a atenção do seu público e ganha destaque na página em que é publico é sempre uma ótima ferramenta para se ter em mãos.

O ggplot2 não é um pacote simples a ser utilizado de primeira devido sua sintaxe e grandes possibilidades de criação. Para conhecer todas as suas ferramentas, visite a documentação online do pacote. E caso ainda não o tenha instalado em sua biblioteca, execute o comando abaixo no R.

install.packages("ggplot2")

Uma das dificuldades de usar o ggplot2 é deixar o conjunto de dados da maneira que ele sabe trabalhar. O pacote trabalha com banco de dados, os data.frame do R. Se você já usa um banco ou conjunto de dados, ótimo. Se não, tem que transformar seus dados em um data.frame. Pegando o mesmo vetor de observações de uma Chi Quadrado usado acima, vamos transformar do tipo vetor de observações para um data.frame e fazer um histograma com o pacote ggplot2. O código segue abaixo e em seguida temos sua saída uma explicação do que significa cada passo.

### Como fazer um histograma no R
### www.manipulandados.com.br

# Carregar pacote
library(ggplot2)

# Transformar vetor para data.frame
dados2 <- data.frame(y = dados)

# Criar histograma
h1 <- ggplot(dados2, aes(y)) + geom_histogram() +
  xlab("Dados") + ylab("Frequencia")
h1
histograma ggplot2

Figura 3: Histograma bacana feito usando o pacote ggplot2.

Bacana, né? O fundo em tom de cinza ajuda a criar contraste entre o papel e o que quer mostrar no gráfico. O efeito é ainda mais bonito quando usamos cores (veremos em breve aqui no blog).

Sobre o código, repare que dados2 agora é um conjunto de dados com apenas uma variável, y. Quando chamamos o comando ggplot dizemos em que conjunto de dados vamos trabalhar, neste caso o dados2, e quais variáveis vamos utilizar dentro do aes(), neste caso apenas o y. Após o pacote saber com que variáveis quer trabalhar é hora de pedir que tipo de gráfico gostaria somando a função geom_histogram. Os outros termos xlab e ylab são apenas os rótulos do gráfico. Por fim, para pedir o gráfico e mostrá-lo na tela, basta executar o nome que deu a ele, que neste caso foi h1.

A uma primeira vista, como mencionei, o ggplot2 não é muito intuitito, mas pode ser uma ferramenta muito útil no futuro. Invista um tempinho em sua documentação online para ver os exemplos.

Dúvidas?

Caso tenha ficado alguma dúvida, lembre-se que você pode sempre nos perguntar no Twitter, no Facebook ou comentar logo abaixo. Ficaremos felizes em responder 😉



 

Deixe uma resposta

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