Pandas di Python è una libreria open source svi­lup­pa­ta ap­po­si­ta­men­te per l’analisi e la ma­ni­po­la­zio­ne dei dati. Offre a chi programma strutture dati e funzioni in grado di sem­pli­fi­ca­re no­te­vol­men­te la gestione di tabelle numeriche e serie temporali.

Registra il tuo dominio
  • Domain Connect gratuito per una con­fi­gu­ra­zio­ne facile del DNS
  • Cer­ti­fi­ca­to SSL Wildcard gratuito
  • Pro­te­zio­ne privacy inclusa

A cosa serve Pandas di Python?

La libreria Pandas di Python è uti­liz­za­ta in diverse aree dell’ela­bo­ra­zio­ne dei dati. Grazie al gran numero di funzioni di­spo­ni­bi­li, permette di coprire un’ampia gamma di ap­pli­ca­zio­ni:

  • Analisi esplo­ra­ti­va dei dati (EDA): Pandas facilita l’esplo­ra­zio­ne e la com­pren­sio­ne generale degli insiemi di dati. Grazie a funzioni come describe(), head() o info(), chi si occupa di sviluppo può ra­pi­da­men­te ottenere in­for­ma­zio­ni sugli insiemi di dati e ri­co­no­sce­re le cor­re­la­zio­ni sta­ti­sti­che.
  • Pulizia e pre-ela­bo­ra­zio­ne dei dati: i dati pro­ve­nien­ti da fonti diverse spesso devono essere puliti e portati in un formato coerente prima di poter essere ana­liz­za­ti. Anche in questo caso, Pandas offre una serie di funzioni per filtrare o tra­sfor­ma­re i dati.
  • Ma­ni­po­la­zio­ne e tra­sfor­ma­zio­ne dei dati: il compito prin­ci­pa­le di Pandas è quello di ma­ni­po­la­re, ana­liz­za­re e tra­sfor­ma­re gli insiemi di dati. Le funzioni come merge() e groupby() per­met­to­no di ef­fet­tua­re ope­ra­zio­ni complesse sui dati.
  • Vi­sua­liz­za­zio­ne dei dati: un altro campo di ap­pli­ca­zio­ne pratico è la com­bi­na­zio­ne con le librerie come Mat­plo­tlib o Seaborn, che consente di con­ver­ti­re i frame di dati in Pandas di­ret­ta­men­te in diagrammi o grafici si­gni­fi­ca­ti­vi.

Pandas di Python: vantaggi

Pandas offre numerosi vantaggi che lo rendono uno strumento in­di­spen­sa­bi­le per chi si occupa di analisi di dati e ricerca. Le API intuitive e di facile com­pren­sio­ne ga­ran­ti­sco­no un elevato livello di facilità d’uso. Le strutture dati centrali di Pandas, DataFrame e Series, sono simili a quelle dei normali fogli di calcolo, fornendo così un ambiente di lavoro fa­mi­glia­re anche a chi è agli inizi.

Un altro vantaggio fon­da­men­ta­le di Pandas di Python è rap­pre­sen­ta­to dalle sue pre­sta­zio­ni. Sebbene Python sia ge­ne­ral­men­te con­si­de­ra­to un lin­guag­gio di pro­gram­ma­zio­ne piuttosto lento, Pandas è in grado di elaborare in modo ef­fi­cien­te anche grandi insiemi di dati. Questo perché la libreria è scritta in C e utilizza algoritmi ot­ti­miz­za­ti.

Pandas supporta una serie di formati di dati diversi, tra cui CSV, Excel e database SQL, con­sen­ten­do l’im­por­ta­zio­ne e l’espor­ta­zio­ne di dati da fonti diverse. Perciò, la libreria offre una notevole fles­si­bi­li­tà. Anche l’in­te­gra­zio­ne con le librerie esistenti nell’eco­si­ste­ma Python, come NumPy o Mat­plo­tlib, aumenta la fles­si­bi­li­tà e consente un’analisi e una mo­del­la­zio­ne dei dati completa.

N.B.

Se conosci già altri linguaggi di pro­gram­ma­zio­ne come R o linguaggi di database come SQL, lavorando con Pandas in­con­tre­rai alcuni concetti a te già familiari.

Sintassi di Pandas: un esempio pratico

Per il­lu­stra­re la sintassi di base di Pandas, vediamo un semplice esempio. Sup­po­nia­mo di avere un set di dati CSV che contiene in­for­ma­zio­ni sulle vendite. Lo ca­ri­che­re­mo, lo esa­mi­ne­re­mo ed ese­gui­re­mo alcune ma­ni­po­la­zio­ni di base dei dati. Il set di dati è strut­tu­ra­to come segue:

Date,Product,Quantity,Price
2024-01-01,Product A,10,20.00
2024-01-02,Product B,5,30.00
2024-01-03,Product C,7,25.00
2024-01-04,Product A,3,20.00
2024-01-05,Product B,6,30.00
2024-01-06,Product C,2,25.00
2024-01-07,Product A,8,20.00
2024-01-08,Product B,4,30.00
2024-01-09,Product C,10,25.00

Primo passaggio: im­por­ta­zio­ne di Pandas e ca­ri­ca­men­to del set di dati

Dopo aver importato Pandas, puoi creare un dataframe dai dati CSV usando read_csv().

import pandas as pd
# Caricamento del record di dati da un file CSV denominato sales_data.csv
df = pd.read_csv('sales_data.csv')
python

Secondo passaggio: analisi del set di dati

Una prima pa­no­ra­mi­ca dei dati può essere ottenuta vi­sua­liz­zan­do le prime righe e un riepilogo sta­ti­sti­co del set di dati. A questo scopo vengono uti­liz­za­te le funzioni head() e describe(). Quest’ultima fornisce una pa­no­ra­mi­ca di im­por­tan­ti dati statici come il valore minimo e massimo, la de­via­zio­ne standard e il valore medio.

# Visualizza le prime cinque righe del DataFrame
print(df.head())
# Visualizza un riepilogo statistico
print(df.describe())
python

Terzo passaggio: ma­ni­po­la­zio­ne dei dati

Anche la ma­ni­po­la­zio­ne dei dati è possibile con Pandas di Python. Nel seguente frammento di codice, i dati di vendita devono essere aggregati per prodotto e mese:

# Converti la colonna “Date” in un oggetto datetime in modo che le date siano riconosciute come tali
df['Date'] = pd.to_datetime(df['Date'])
# Estrai il mese dalla colonna “Date” e salvalo in una nuova colonna di nome “Month”
df['Month'] = df['Date'].dt.month
# Calcola il ricavo (Quantity * Price) e salvalo nella colonna “Revenue”
df['Revenue'] = df['Quantity'] * df['Price']
# Aggrega i dati di vendita per prodotto e mese
sales_summary = df.groupby(['Product', 'Month'])['Revenue'].sum().reset_index()
# Visualizzazione dei dati aggregati
print(sales_summary)
python

Quarto passaggio: vi­sua­liz­za­zio­ne dei dati

Infine, puoi vi­sua­liz­za­re i dati di vendita mensili di un prodotto uti­liz­zan­do la libreria Python ag­giun­ti­va Mat­plo­tlib.

import matplotlib.pyplot as plt
# Filtra i dati per un prodotto specifico
product_sales = sales_summary[sales_summary['Product'] == 'Product A']
# Crea un diagramma a linee
plt.plot(product_sales['Month'], product_sales['Revenue'], marker='o')
plt.xlabel('Mese')
plt.gca().set_xticks(product_sales['Month'])
plt.ylabel('Entrate')
plt.title('Entrate mensili per il Prodotto A')
plt.grid(True)
plt.show()
python

Il grafico vi­sua­liz­za­to mostra che nel primo mese dell’anno sono stati incassati 940 euro con il Prodotto A. Assume il seguente aspetto:

Immagine: Grafico dei dati di Pandas
I dati di Pandas possono essere fa­cil­men­te rap­pre­sen­ta­ti in com­bi­na­zio­ne con altre librerie.
Vai al menu prin­ci­pa­le