Menu
CoddyTech

Todos os atributos de uma vez

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

Trinta características precisam de trinta histogramas. A leitura fica mais rápida em uma grade de pequenos gráficos, como estes quatro atributos da íris:

Quatro pequenos histogramas em uma grade 2 por 2, um por atributo da íris: os dois histogramas das sépalas têm um único pico, e os dois histogramas das pétalas se dividem em um pequeno bloco à esquerda e um pico largo à direita

Um loop preenche a grade, gerando o gráfico i com a característica i:

names = iris.feature_names
fig, axs = plt.subplots(2, 2)
for i in range(4):
    ax = axs.flat[i]
    ax.hist(iris.frame[names[i]], bins=15)
    ax.set_title(names[i])
fig.tight_layout()
plt.show()

plt.subplots(2, 2) cria uma tabela de gráficos, e axs.flat os organiza linha por linha:

Uma grade de 2 linhas e 3 colunas, com as células numeradas de axs.flat 0 a 5, primeiro ao longo da linha 0 e depois da linha 1, cada uma com sua linha e coluna indicadas abaixo

fig.tight_layout() mantém os títulos separados. Agora observe: os dois histogramas das pétalas se dividem em dois. Uma lacuna como essa geralmente significa que uma classe está separada, então mantenha essa característica.

challenge icon

Desafio

Médio

Veja os dados do tecido como um todo. A entrada escolhe um grupo, mean, error ou worst, e o código inicial coloca os primeiros seis nomes de características desse grupo em names.

  1. Crie uma grade com 2 linhas e 3 colunas.
  2. No gráfico i, desenhe um histograma da característica i com 20 intervalos, usando seu nome como título.
  3. Ajuste o layout e, em seguida, exiba-o.

Como nesta grade com seis características do vinho:

Seis pequenos histogramas em 2 linhas de 3, intitulados alcohol, malic_acid, ash, alcalinity_of_ash, magnesium e total_phenols, cada um com 20 barras

Seu programa não imprime nada: o Coddy descreve cada gráfico.

Experimente você mesmo

import matplotlib.pyplot as plt
from sklearn.datasets import load_breast_cancer

group = input()
cancer = load_breast_cancer(as_frame=True)
df = cancer.frame
# Os nomes das seis primeiras características do grupo: mean, error ou worst
start = {"mean": 0, "error": 10, "worst": 20}[group]
names = cancer.feature_names[start:start + 6]

# 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