Pandas – DataFrames
Cerchiamo di fare altri esempi di utilizzo dei DataFames con importando altri file csv da analizzare con Pandas. L’indice di questa guida è disponibile a questo link: https://computer4dummy.altervista.org/programmazione-guide-alla-programmazione/python-data-analisi/panda-per-python/
Passeggeri della International airline
Nel file che andremo ad analizzare sono registrati i viaggiatori mensili da gennaio 1949 a dicembre 1960 (in migliaia) che hanno volato con la compagnia International Airline.
Il file di esempio è scaricabile dal GitHub: https://github.com/Amply666/Computer4Dummy/blob/master/programmazione-guide-alla-programmazione/python-data-analisi/panda-per-python/international-airline-passengers.csv
Importiamo il file con la funzione read_csv().
import pandas as pd df = pd.read_csv("international-airline-passengers.csv", engine="python", skipfooter=2)
Vediamo i due parametri aggiuntivi che abbiamo passato alla funzione:
- engine=”python” è la tipologia di “motore” utilizzata, il motore in “C” è più veloce mentre il motore scritto in python è più completo.
- skipfooter=2 indica il numero di righe che non vengono considerate dal fondo del file. (Questa opzione non è disponibile se si utilizza l’engine = “C”).
Maggiori dettagli alla pagina ufficiale: https://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html
Nomi delle colonne
Le intestazioni delle colonne del nostro file sono piuttosto lunghe e scomode da usare.
df.columns Out[15]: Index([u'Month', u'International airline passengers: monthly totals in thousands. Jan 49 ? Dec 60'], dtype='object')
Per ridefinire quindi i titoli basta passarli in una lista cosi’:
df.columns = ["mese", "passeggeri"] df.columns Out[17]: Index([u'mese', u'passeggeri'], dtype='object')
A questo punto è facilmente selezionabile la colonna passando il nome della colonna che vogliamo visualizzare:
df['passeggeri'] Out[21]: 0 112 1 118 2 132 3 129 4 121 5 135 . ... 139 606 140 508 141 461 142 390 143 432 Name: passeggeri, Length: 144, dtype: int64
Un altro metodo per selezionare i dati di una colonna è passare il nome subito dopo la variabile.
df.passeggeri
Il risultato è esattamente lo stesso con l’unica differenza che questo metodo con l’intestazione originale, che comprendeva spazi e caratteri speciali non avrebbe funzionato.
Aggiungere una colonna
Ora vediamo come aggiungere una colonna dopo la colonna che abbiamo rinominato “passeggeri”.
df['uno'] = 1 df.head() Out[24]: mese passeggeri uno 0 1949-01 112 1 1 1949-02 118 1 2 1949-03 132 1 3 1949-04 129 1 4 1949-05 121 1