Menu
CoddyTech

Istogramma di una colonna

Fa parte della sezione Dati e grafici del percorso Machine Learning di Coddy. Lezione 50 di 60.

Le attese serali in una clinica sono più lunghe di quelle mattutine? Due istogrammi su uno stesso asse rispondono a colpo d’occhio:

Due istogrammi semitrasparenti delle attese in clinica: le attese mattutine vanno da 6 a 16 minuti a sinistra, quelle serali da 13 a 28 minuti a destra, con una leggera sovrapposizione

Una colonna va direttamente in ax.hist. Mantieni le righe di ciascun gruppo, poi disegnale entrambe sugli stessi assi:

# waits ha le colonne shift e minutes
morning = waits[waits["shift"] == "morning"]
evening = waits[waits["shift"] == "evening"]
fig, ax = plt.subplots()
ax.hist(morning["minutes"], bins=4, alpha=0.5, label="morning")
ax.hist(evening["minutes"], bins=4, alpha=0.5, label="evening")
ax.set_title("Clinic Waits")
ax.set_xlabel("Minutes")
ax.legend()
plt.show()

alpha=0.5 rende le barre semitrasparenti (0 è invisibile, 1 è opaco), così le sovrapposizioni restano visibili. label= assegna un nome a ciascuna per la legenda.

Quando i gruppi si distribuiscono su intervalli diversi, quella colonna aiuta un modello a distinguerli.

challenge icon

Sfida

Medio

Un ufficio ha chiesto al personale quanto tempo impiega per andare al lavoro: commute.csv contiene mode (bike o bus) e minutes. Quali tempi sono più dispersi? Il codice iniziale mantiene ciascun gruppo in bike e bus e imposta il grafico.

Disegna un istogramma dei minutes di ciascun gruppo con bins=5, alpha=0.5 e l'etichetta bike o bus.

Il tuo grafico dovrebbe assomigliare a questo, basato sul sondaggio dell'anno scorso:

Due istogrammi semitrasparenti intitolati Commute Times: i tempi in bici sono raggruppati tra 14 e 26 minuti, quelli in autobus sono distribuiti tra 15 e 45 minuti, con una legenda

Il gruppo le cui barre coprono più minuti è quello più disperso. Coddy descrive il tuo grafico nell'output.

Provalo tu

import pandas as pd
import matplotlib.pyplot as plt

trips = pd.read_csv("commute.csv")
bike = trips[trips["mode"] == "bike"]
bus = trips[trips["mode"] == "bus"]

fig, ax = plt.subplots()
ax.set_title("Commute Times")
ax.set_xlabel("Minutes")

# Scrivi il tuo codice qui sotto

# Non modificare le righe qui sotto
ax.legend()
plt.show()
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Dati e grafici

Esercitati da solo: Compilatore Python online