Creazione di un dataframe di Pandas
Un DataFrame è una struttura dati bidimensionale, il cui concetto è simile a quello di un foglio di calcolo o di una tabella in un database SQL. Ogni colonna in un DataFrame è una Series di Pandas, che può contenere dati di tipo diverso: numerici, stringhe, date, e così via.
Le righe del DataFrame sono indicizzate, e questo indice può essere personalizzato in base alle esigenze dell'utente.
Creare un DataFrame di Pandas
Ci sono diversi modi per creare un DataFrame in Pandas, a seconda del formato e della fonte dei dati. Vediamo i metodi più comuni.
Uno dei metodi più semplici per creare un DataFrame è partire da un dizionario di liste. In questo caso, le chiavi del dizionario diventano i nomi delle colonne, e i valori associati (che devono essere liste della stessa lunghezza) costituiscono i dati.
import pandas as pd
# Creazione di un DataFrame da un dizionario di liste
data = {
'Nome': ['Anna', 'Marco', 'Giulia', 'Luca'],
'Età': [25, 30, 22, 35],
'Città': ['Roma', 'Milano', 'Napoli', 'Torino']
}
df = pd.DataFrame(data)
print(df)
Un altro modo per creare un DataFrame è utilizzare un dizionario di Series. Questo approccio permette di avere un maggiore controllo su ogni colonna, come la personalizzazione dell'indice.
import pandas as pd
# Creazione di un DataFrame da un dizionario di Series
data = {
'Nome': pd.Series(['Anna', 'Marco', 'Giulia', 'Luca'], index=[1, 2, 3, 4]),
'Età': pd.Series([25, 30, 22, 35], index=[1, 2, 3, 4]),
'Città': pd.Series(['Roma', 'Milano', 'Napoli', 'Torino'], index=[1, 2, 3, 4])
}
df = pd.DataFrame(data)
print(df)
Se i dati sono organizzati come una lista di dizionari, dove ogni dizionario rappresenta una riga, è possibile creare un DataFrame in modo molto semplice.
import pandas as pd
# Creazione di un DataFrame da una lista di dizionari
data = [
{'Nome': 'Anna', 'Età': 25, 'Città': 'Roma'},
{'Nome': 'Marco', 'Età': 30, 'Città': 'Milano'},
{'Nome': 'Giulia', 'Età': 22, 'Città': 'Napoli'},
{'Nome': 'Luca', 'Età': 35, 'Città': 'Torino'}
]
df = pd.DataFrame(data)
print(df)
È possibile creare un DataFrame a partire da una matrice NumPy, specificando le etichette delle colonne.
import pandas as pd
import numpy as np
# Creazione di un DataFrame da una matrice NumPy
data = np.array([[25, 'Anna', 'Roma'], [30, 'Marco', 'Milano'], [22, 'Giulia', 'Napoli'], [35, 'Luca', 'Torino']])
df = pd.DataFrame(data, columns=['Età', 'Nome', 'Città'])
print(df)
Un metodo molto comune per creare un DataFrame è importare i dati da un file CSV utilizzando la funzione pd.read_csv(). Questo metodo è particolarmente utile quando si lavora con set di dati di grandi dimensioni.
import pandas as pd
# Creazione di un DataFrame da un file CSV
df = pd.read_csv('file.csv')
print(df)
La funzione read_csv() permette anche di specificare numerosi parametri per personalizzare il caricamento dei dati, come la scelta delle colonne, il separatore, la gestione dei valori mancanti, e molto altro.