DataFrame in Pandas

Il DataFrame in Pandas è uno degli strumenti più utilizzati in Python quando si lavora con i dati. Se stai iniziando a esplorare l’analisi dei dati, capire bene come funziona un dataframe pandas è un passaggio fondamentale. In questa guida firmata Gedemy, vedremo in modo semplice e concreto che cos’è, perché viene usato così spesso e quali sono le operazioni principali da conoscere per iniziare con sicurezza.

Che cos’è un DataFrame in Pandas e a cosa serve

Un DataFrame è una struttura dati tabellare offerta dalla libreria Pandas. Puoi immaginarlo come una tabella simile a un foglio Excel o a una tabella di database, dove i dati sono organizzati in righe e colonne.

Ogni colonna può contenere un tipo di informazione diverso: numeri, testi, date, valori booleani e molto altro. Questa flessibilità rende il dataframe pandas una soluzione estremamente pratica per raccogliere, leggere, filtrare e trasformare dati in modo ordinato.

Uno dei motivi per cui Pandas è così apprezzato è che permette di lavorare con insiemi di dati anche molto grandi mantenendo una sintassi leggibile. In altre parole, aiuta a fare operazioni complesse con comandi relativamente semplici.

Perché i DataFrame di Pandas sono così importanti nell’analisi dei dati

I DataFrame sono importanti perché rappresentano il punto di partenza di gran parte del lavoro sui dati in Python. Quando importi un file CSV, leggi un file Excel o recuperi dati da una sorgente esterna, molto spesso il risultato finale viene gestito proprio attraverso un dataframe pandas.

La loro utilità si vede soprattutto in queste attività:

  • organizzare dati in forma tabellare;
  • pulire valori mancanti o duplicati;
  • filtrare righe e colonne;
  • calcolare statistiche rapide;
  • preparare dati per grafici o modelli di machine learning.

Per chi è alle prime armi, il vantaggio principale è la combinazione tra semplicità e potenza. Si può partire da operazioni molto basilari e poi, con il tempo, arrivare a elaborazioni decisamente più strutturate senza cambiare strumento.

Come creare un DataFrame con Pandas in Python

Per creare un DataFrame in Pandas, il primo passo è importare la libreria. In genere si usa l’alias pd, che è diventato uno standard molto comune.

import pandas as pd

Uno dei modi più semplici per costruire un dataframe pandas è partire da un dizionario Python, dove ogni chiave rappresenta il nome di una colonna e ogni lista associata contiene i valori.

import pandas as pd

dati =
{
    "Nome": ["Anna", "Luca", "Marco"],
    "Età": [25, 30, 28],
    "Città": ["Milano", "Roma", "Torino"]
}

df = pd.DataFrame(dati)

print(df)

Il risultato sarà una tabella con tre colonne: Nome, Età e Città. Questo approccio è molto utile quando vuoi fare test rapidi o creare esempi di lavoro.

Un altro caso molto frequente è la creazione di un DataFrame a partire da un file CSV.

import pandas as pd

df = pd.read_csv("studenti.csv")

print(df)

Con questa istruzione, Pandas legge il file e lo trasforma in un oggetto tabellare pronto da analizzare. È una delle operazioni più comuni in assoluto quando si lavora con dati reali.

Come usare un DataFrame Pandas nelle operazioni più comuni

Dopo aver creato il DataFrame, il passo successivo è imparare a esplorarlo. Le prime operazioni servono quasi sempre a capire che tipo di dati contiene e come sono distribuiti.

Per visualizzare le prime righe puoi usare head().

print(df.head())

Per conoscere la struttura generale del DataFrame, inclusi i tipi di dato presenti nelle colonne, è molto utile info().

print(df.info())

Se invece vuoi ottenere alcune statistiche descrittive sulle colonne numeriche, puoi usare describe().

print(df.describe())

Un’altra operazione fondamentale riguarda la selezione delle colonne. Per esempio, se vuoi lavorare solo con la colonna dei nomi, puoi scrivere:

print(df["Nome"])

Se desideri filtrare le righe in base a una condizione, Pandas rende questa operazione molto immediata. Ad esempio, per vedere solo le persone con età superiore a 26 anni:

filtrati = df[df["Età"] > 26]

print(filtrati)

Questa modalità di lavoro è estremamente pratica, perché consente di interrogare i dati con una sintassi chiara e leggibile anche per chi ha poca esperienza.

Metodi utili per manipolare un DataFrame Pandas in modo efficace

La vera forza di un dataframe pandas emerge quando si passa dalla semplice lettura alla manipolazione dei dati. In questa fase puoi modificare valori, rinominare colonne, rimuovere righe inutili o gestire dati mancanti.

Rinominare colonne in un DataFrame Pandas

Capita spesso di avere nomi di colonna poco chiari. Con rename() puoi renderli più leggibili.

df = df.rename(columns={"Età": "Anni"})

print(df.head())

Eliminare colonne o righe non necessarie

Se una colonna non serve, puoi rimuoverla con drop().

df = df.drop(columns=["Città"])

print(df.head())

Lo stesso metodo può essere usato anche per eliminare righe specifiche, a seconda dell’indice.

Gestire i valori mancanti nei dati

Quando si lavora con dataset reali, i valori mancanti sono molto comuni. Pandas offre strumenti semplici sia per individuarli sia per gestirli.

print(df.isnull().sum())

Se vuoi eliminare le righe che contengono valori mancanti, puoi usare:

df = df.dropna()

Se invece preferisci sostituire i valori vuoti con un valore specifico, puoi fare così:

df = df.fillna("Non disponibile")

Ordinare i dati in un DataFrame

L’ordinamento è un’altra operazione frequente. Ad esempio, puoi ordinare i dati per età in ordine crescente.

df = df.sort_values(by="Anni")

print(df)

Aggiungere una nuova colonna calcolata

Un dataframe pandas permette anche di creare nuove colonne a partire da quelle esistenti. Questo è molto utile quando vuoi arricchire il dataset con informazioni derivate.

df["Età tra 5 anni"] = df["Anni"] + 5

print(df)

Questa logica è alla base di molte trasformazioni nei processi di analisi: si parte da dati grezzi e li si rende progressivamente più leggibili, coerenti e utili.

Filtrare e selezionare dati con maggiore precisione

Con il tempo potresti avere bisogno di selezioni più precise. Pandas mette a disposizione strumenti come loc e iloc, molto usati per lavorare rispettivamente con etichette e posizioni.

print(df.loc[0, "Nome"])
print(df.iloc[0, 0])

All’inizio possono sembrare dettagli secondari, ma diventano molto importanti non appena il dataset cresce o le operazioni da svolgere diventano più articolate.

Corsi correlati

Design Pattern per videogiochi

I Design Pattern sono soluzioni a problemi comuni che si incontrano nello sviluppo del software. Nel contesto dei videogiochi, questi pattern possono aiutare a gestire la complessità crescente dei giochi moderni. Sei appassionato di videogiochi? Hai mai pensato a come vengono progettati e sviluppati? Sei curioso di scoprire i segreti dietro la creazione dei tuoi giochi preferiti? Allora sei nel posto giusto! Questo corso è stato progettato per fornirti una solida comprensione dei Design Pattern, strumenti fondamentali per ogni sviluppatore di giochi. Attraverso esempi pratici e realistici, esploreremo insieme come questi pattern possono aiutarti a creare giochi più efficienti, flessibili e mantenibili.

Corso Fondamenti di Python

Python, uno dei linguaggi di programmazione più popolari al mondo, è ampiamente utilizzato da colossi dell’informatica e della tecnologia come Google, la Nasa e Mozilla.
Questo corso sui fondamenti di Python esplorerà le ragioni del suo successo duraturo. Impareremo la potente ed espressiva sintassi di Python, che consente di ottenere risultati impressionanti con poche righe di codice.

Blender Masterclass 2

I paesaggi, in generale, possono risultare intimidatori data la loro complessità, costituita da numerosi elementi che sembrano formare qualcosa di virtualmente infinito. Durante le lezioni di questo corso, ci concentreremo su una scomposizione delle diverse fasi coinvolte nella creazione di una scena, affrontandole una alla volta attraverso passi graduati.

Blender Masterclass 1

In questo corso di Blender 3D, Masha, in collaborazione con Gedemy, vi mostrerà il processo di modellazione, UV mapping, shading, e texture painting di un asset. Una volta apprese le basi, vedremo anche come effettuare il baking delle textures e la preparazione con successivo export della mesh in modo che possa essere utilizzabile all’interno di un qualsiasi altro software.

Crea il tuo account gratuito Gedemy

Gedemy è la prima piattaforma di formazione italiana che ti permette di sviluppare competenze in ambiti come Game Design, Programming, Arte, 3D, Tech, AI e molto altro.