Menu
CoddyTech

Gráficos de caixa por grupo

Parte da seção Estatística para ML do Journey de Machine Learning da Coddy. Lição 41 de 64.

Dois grupos diferem: isso é real ou sorte? Este capítulo termina com a imagem que responde a isso:

Um histograma de 1000 diferenças produzidas por acaso pela reorganização, concentradas em torno de 0, com uma linha vermelha indicando a diferença real bem distante, na extremidade esquerda

Tudo começa com uma observação. Um estúdio de cerâmica cronometrava seus dois fornos. Passe ax.boxplot uma lista de grupos e seus nomes:

gas = np.array([6.5, 7, 7.5, 8, 7, 6.5, 8.5, 7.5])
electric = np.array([9, 10.5, 11, 9.5, 12, 10, 10.5, 15])
fig, ax = plt.subplots()
ax.boxplot([gas, electric], tick_labels=["Gas", "Electric"])
ax.set_ylabel("Hours")
plt.show()

Dois diagramas de caixa em um eixo: Gas baixo, em torno de uma mediana de 7.25 horas, e Electric mais alto, em torno de 10.5 horas, com um ponto discrepante em 15. As caixas não se sobrepõem

As caixas nem sequer se sobrepõem: o gás queima mais rápido. Para um modelo, uma característica cujas caixas quase não se sobrepõem ajuda a distinguir os grupos.

challenge icon

Desafio

Médio

Uma estação de esqui cronometrizou 36 descidas em seus três teleféricos. lifts.csv contém lift (Red, Green ou Blue) e minutes; o código inicial carrega o arquivo e configura o gráfico.

  1. Faça um loop por names e reúna os minutos de cada teleférico em uma lista.
  2. Desenhe uma caixa por teleférico, nomeada com tick_labels=.
  3. Mostre o gráfico.

Ele não imprime nada; o Coddy descreve cada caixa. Dois outros teleféricos aparecem assim:

Um gráfico intitulado Lift Times com dois diagramas de caixa chamados Orange e Purple: Orange está baixo, em torno de 18 minutos, e Purple está mais alto, em torno de 27.5 minutos, com um ponto discrepante em 44

Experimente você mesmo

import pandas as pd
import matplotlib.pyplot as plt

lifts = pd.read_csv("lifts.csv")
names = ["Red", "Green", "Blue"]
# Não altere as linhas abaixo
fig, ax = plt.subplots()
ax.set_title("Lift Times")
ax.set_xlabel("Lift")
ax.set_ylabel("Minutes")

# Escreva seu código abaixo
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Estatística para ML

Pratique por conta própria: Compilador de Python online