Boxplot
Box plot é outro gráfico extremamente comum em estatística, utilizado para visualizar a tendência central, dispersão e possíveis outliers nos dados por meio de seus quartis.
Quartis
Quartis dividem os pontos de dados (ordenados em ordem crescente) em quatro partes de tamanho igual. Existem três deles:
O primeiro quartil (Q1) é o valor intermediário entre o menor valor da amostra e a mediana (25% dos dados estão nesse intervalo);
O segundo quartil (Q2) é a própria mediana (50% dos dados estão abaixo da mediana);
O terceiro quartil (Q3) é o valor intermediário entre a mediana da amostra e os maiores valores da amostra (75% dos dados estão abaixo do Q3).
Elementos do Box Plot
O lado direito do retângulo vermelho representa o terceiro quartil e o lado esquerdo representa o primeiro quartil;
Q3 - Q1 é chamado de intervalo interquartil (IQR), que é representado pelo retângulo onde a linha amarela é a mediana;
As linhas pretas fora do retângulo são chamadas de bigodes. O da esquerda representa , e o da direita representa ;
Os pontos de dados que estão fora dos bigodes são chamados de outliers.
O próximo passo é gerar um box plot usando a biblioteca matplotlib
:
import pandas as pd import matplotlib.pyplot as plt # Loading the dataset with the average yearly temperatures in Boston and Seattle url = 'https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv' weather_df = pd.read_csv(url, index_col=0) # Creating a box plot for the Seattle temperatures plt.boxplot(weather_df['Seattle']) plt.show()
Dados do Box Plot
A função boxplot()
do módulo pyplot
é utilizada com o primeiro e único parâmetro obrigatório x
, que representa os dados. Esses dados podem ser um objeto semelhante a um array (por exemplo, uma Series
), um array 2D (um box plot é desenhado para cada coluna) ou uma sequência de arrays 1D (um box plot é desenhado para cada array).
Parâmetros Opcionais
O parâmetro tick_labels
é uma exceção. Este em particular é útil não apenas para rotular um único box plot, mas também para rotular os box plots quando há mais de um array:
import pandas as pd import matplotlib.pyplot as plt # Loading the dataset with the average yearly temperatures in Boston and Seattle url = 'https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv' weather_df = pd.read_csv(url, index_col=0) # Creating two box plots for Boston and Seattle temperatures plt.boxplot(weather_df, tick_labels=['Boston', 'Seattle']) plt.show()
Neste exemplo, o DataFrame
inteiro com duas colunas foi passado para boxplot()
, resultando em gráficos de caixa separados para cada coluna, com rótulos apropriados atribuídos automaticamente.
Existem também diversos parâmetros opcionais para personalizar o box plot, que você pode explorar na documentação do boxplot()
, porém, na prática, você pode raramente utilizá-los.
Swipe to start coding
Crie dois box plots usando duas amostras da distribuição normal padrão:
- Utilize a função correta para criar os box plots.
- Use a lista de
normal_sample_1
enormal_sample_2
(nesta ordem, da esquerda para a direita) como os dados. - Rotule o box plot da esquerda como
First sample
e o da direita comoSecond sample
utilizando alist
.
Solução
Obrigado pelo seu feedback!