Visualizzare i tuoi dati

Manipolazione dei dati con pandas

Maggie Matsui

Senior Content Developer at DataCamp

Istogrammi

import matplotlib.pyplot as plt
dog_pack["height_cm"].hist()
plt.show()

Un istogramma delle altezze dei cani. I cani più bassi sono sotto i 20 cm, mentre quelli più alti arrivano a 70 cm. L'altezza più comune dei cani è tra i 50 e i 60 cm.

Manipolazione dei dati con pandas

Istogrammi

dog_pack["height_cm"].hist(bins=20)
plt.show()

Lo stesso istogramma delle altezze dei cani mostrato nella slide precedente, ma ora con 20 intervalli più stretti.

dog_pack["height_cm"].hist(bins=5)
plt.show()

![Lo stesso istogramma delle altezze dei cani mostrato nella slide precedente, ma ora con cinque ampie classi. (https://assets.datacamp.com/production/repositories/5386/datasets/94fe01d996bdb1137c919143bc01989a7755cc2a/height_hist_bins5.png = 90)

Manipolazione dei dati con pandas

Grafici a barre

avg_weight_by_breed = dog_pack.groupby("breed")["weight_kg"].mean()
print(avg_weight_by_breed)
breed
Beagle         10.636364
Boxer          30.620000
Chihuahua       1.491667
Chow Chow      22.535714
Dachshund       9.975000
Labrador       31.850000
Poodle         20.400000
St. Bernard    71.576923
Name: weight_kg, dtype: float64
Manipolazione dei dati con pandas

Grafici a barre

avg_weight_by_breed.plot(kind="bar")

plt.show()

Un grafico a barre che mostra il peso medio dei cani, in chilogrammi, diviso per razza. I cani San Bernardo sono i più pesanti, mentre i Chihuahua sono i più leggeri.

avg_weight_by_breed.plot(kind="bar",
    title="Mean Weight by Dog Breed")
plt.show()

Lo stesso grafico a barre che vedi a sinistra dello schermo, ma con un titolo in più che dice "Peso medio per razza di cane".

Manipolazione dei dati con pandas

Grafici a linee

sully.head()
          date    weight_kg
0   2019-01-31         36.1
1   2019-02-28         35.3
2   2019-03-31         32.0
3   2019-04-30         32.9
4   2019-05-31         32.0
sully.plot(x="date", 
           y="weight_kg", 
           kind="line")
plt.show()

![Un grafico lineare che mostra il peso di un cane di nome Sully nel tempo. https://assets.datacamp.com/production/repositories/5386/datasets/2c8d67de34db3bb02f07446792f1fe433c11dd67/line_plot.png Il peso va dai 27 ai 36 chili.

Manipolazione dei dati con pandas

Etichette degli assi rotanti

sully.plot(x="date", y="weight_kg", kind="line", rot=45)
plt.show()

Lo stesso grafico a linee del peso di Sully che abbiamo visto nella slide precedente, ma con il testo sull'asse x ruotato di quarantacinque gradi in senso orario.

Manipolazione dei dati con pandas

Grafici a dispersione

dog_pack.plot(x="height_cm", y="weight_kg", kind="scatter")
plt.show()

Un grafico a dispersione che mostra il peso dei cani rispetto alla loro altezza. Con l'aumentare dell'altezza dei cani, aumenta anche il loro peso. Ci sono un po' di gruppi. Mi chiedo se corrispondano alle razze.

Manipolazione dei dati con pandas

Grafici a strati

dog_pack[dog_pack["sex"]=="F"]["height_cm"].hist()
dog_pack[dog_pack["sex"]=="M"]["height_cm"].hist()

plt.show()

Due istogrammi delle altezze dei cani sono mostrati nello stesso grafico. Uno è blu e l'altro è arancione. L'istogramma arancione copre quello blu, rendendo difficile capire cosa sta succedendo.

Manipolazione dei dati con pandas

Aggiungi una legenda

dog_pack[dog_pack["sex"]=="F"]["height_cm"].hist()
dog_pack[dog_pack["sex"]=="M"]["height_cm"].hist()
plt.legend(["F", "M"])
plt.show()

Lo stesso grafico con due istogrammi come nella slide precedente, ma con una legenda. "F" per le donne è in blu, mentre "M" per gli uomini è in arancione. È ancora difficile capire cosa sta succedendo.

Manipolazione dei dati con pandas

Trasparenza

dog_pack[dog_pack["sex"]=="F"]["height_cm"].hist(alpha=0.7)
dog_pack[dog_pack["sex"]=="M"]["height_cm"].hist(alpha=0.7)
plt.legend(["F", "M"])
plt.show()

Lo stesso grafico con due istogrammi come nella slide precedente, ma ora gli istogrammi sono trasparenti. Questo ti permette di vedere le barre dell'istogramma femminile che prima erano nascoste da quelle dell'istogramma maschile. È ancora un po' brutto. Dovresti seguire i corsi Seaborn perché i grafici sono più belli.

Manipolazione dei dati con pandas

Avocados

print(avocados)
            date          type  year  avg_price         size     nb_sold
0     2015-12-27  conventional  2015       0.95        small  9626901.09
1     2015-12-20  conventional  2015       0.98        small  8710021.76
2     2015-12-13  conventional  2015       0.93        small  9855053.66
...          ...           ...   ...        ...          ...         ...
1011  2018-01-21       organic  2018       1.63  extra_large     1490.02
1012  2018-01-14       organic  2018       1.59  extra_large     1580.01
1013  2018-01-07       organic  2018       1.51  extra_large     1289.07

[1014 rows x 6 columns]
Manipolazione dei dati con pandas

Passiamo alla pratica!

Manipolazione dei dati con pandas

Preparing Video For Download...